Zaczynam od programowania modułu cieniującego GLSL i zajmuję się RenderMonkey . Niestety AMD już go nie obsługuje. Dlaczego? Czy jest to następca?
Zaczynam od programowania modułu cieniującego GLSL i zajmuję się RenderMonkey . Niestety AMD już go nie obsługuje. Dlaczego? Czy jest to następca?
Odpowiedzi:
Większość tej odpowiedzi będzie odpowiedzią na pytanie „Dlaczego?” niestety część twojego pytania.
Cóż, jest FX Composer firmy NVIDIA, który jest podobnym produktem - nie obsługuje GLSL, ale obsługiwane języki są dość podobne. Ale była ostatnio aktualizowana w 2009 roku i nie wiem, czy planuje się jej dalszej aktualizacji. Większość wysokiej klasy pakietów do modelowania 3D zawiera również narzędzia do budowy materiałów, które mogą, ale nie muszą obsługiwać GLSL.
Myślę, że powodem, dla którego widzisz, że te produkty zbliżają się do końca życia (i nic nie zastąpi ich), jest to, że kierunek, w którym podjął się rozwój shaderów, nie nadaje się dobrze do takich ogólnych uogólnionych IDE .
Nawet wtedy, gdy mieliśmy po prostu shadery wierzchołków i pikseli, istniało silne sprzężenie między formatami danych po stronie gry / silnika (i tym, jak te dane są przetwarzane) a układami wejściowymi modułu cieniującego i operacjami zaprogramowanymi w modułach cieniujących - przynajmniej dla bardziej interesujących, złożonych efektów.
Rozważmy na przykład efekty związane z wodą, które często polegają na nieznacznym odkształceniu geometrii w odpowiedzi na sumy fal sinusoidalnych (oprócz uruchomienia obliczeń, które sumują podobne fale w teksturę, która ma być powiązana z rurociągiem jako mapa wypukłości), ponieważ a także konieczność kopiowania tekstur bufora ramki w celu powiązania w celu odbicia symulacji itd. Większość tych danych pochodzi z procesora i nie jest wbudowana w sam moduł cieniujący.
Wraz ze wzrostem charakteru tego sprzężenia (ze względu na wzrost równoległości po stronie procesora, co pozwala nam zrównoważyć interesujące obliczenia między procesorem a GPU), coraz trudniej było zaprojektować IDE modułu cieniującego ogólnego zastosowania, ponieważ to IDE również musi mieć sposób na skryptowanie i replikację potoku danych, który gra ma wysłać do modułu cieniującego - w zasadzie musiała to być wtyczka do silnika. Ponieważ dodaliśmy do rurociągu dodatkowe programowalne etapy - moduły cieniujące geometrię, elementy cieniujące kadłuby itp. - tylko to skomplikowało problem.
D3D próbował złagodzić problem z SAS , ale nie sądzę, żeby to się naprawdę przydarzyło i na pewno nie skalowało się wraz z postępem technologii GPU.
W rezultacie wyewoluowały wyspecjalizowane narzędzia wewnętrzne lub wewnętrzne do budowania shaderów, a narzędzia takie jak FX Composer i RenderMonkey przestały być używane i ostatecznie zostały porzucone.
Haker GLSL. To twoja odpowiedź http://www.geeks3d.com/glslhacker/