Я починаю з програмування шейдерів GLSL і вивчаю RenderMonkey . На жаль, AMD вже не підтримує його. Чому? Чи є його наступник?
Я починаю з програмування шейдерів GLSL і вивчаю RenderMonkey . На жаль, AMD вже не підтримує його. Чому? Чи є його наступник?
Відповіді:
Основна частина цієї відповіді буде відповіді на запитання "Чому?" частина вашого запитання, на жаль.
Ну, є FX Composer від NVIDIA, який є подібним продуктом - він не підтримує GLSL, але мови, які він підтримує, дуже схожі. Але він востаннє оновлювався в 2009 році, і я не знаю, що не планую його більше оновлювати. Більшість пакетів 3D-моделювання високого класу також містять у собі інструменти для побудови матеріалів, які можуть або не підтримують GLSL.
Я думаю, що причина, по якій ви бачите, що ці продукти закінчуються (і нічого не замінює їх), полягає в тому, що напрямок розвитку шейдерів не піддається таким узагальненим ІДЕ .
Навіть тоді, коли у нас були тільки шейдери вершини та пікселів, тенденція до міцного зв’язку між форматами даних на грі / двигуні (і тим, як ці дані обробляються) та макетами введення шейдера та операціями, запрограмованими в шейдерах - принаймні для більш цікавих, складних ефектів.
Розглянемо, наприклад, ефекти, пов’язані з водою, які часто передбачають деформацію геометрії у відповідь на суми синусоїд (крім того, щоб виконувати обчислення, що суммують подібні хвилі в текстуру, щоб бути прив'язаною до трубопроводу як ударна карта), а також потрібні текстури копіювання фреймбуфера для прив’язки для імітаційного відображення тощо. Більшість цих даних надходить з процесора, а не вбудована в сам шейдер.
По мірі того, як природа цього з’єднання зросла (через збільшення паралелізму на стороні процесора, що дозволяє нам рівномірно збалансувати цікаві обчислення між процесором і графічним процесором), все складніше і складніше було розробити шейдер загального призначення IDE, оскільки цей IDE також повинен мати спосіб скриптування та копіювання конвеєра даних, який гра збирається відправити в шейдер - по суті, це повинен бути плагін для двигуна. Оскільки ми додали додаткові програмовані етапи до конвеєра - геометричні шейдери, шейдери корпусів тощо, це лише ускладнило проблему.
D3D намагався усунути проблему з SAS , але я не думаю, що це колись насправді натрапило, і це, звичайно, не масштабується з прогресом у технології GPU.
Як результат, розвивалися спеціалізовані інструменти для побудови шейдерів, а такі інструменти, як FX Composer та RenderMonkey, не вживались і в кінцевому підсумку були залишені.
GLSL хакер. Ось ваша відповідь http://www.geeks3d.com/glslhacker/