однострочники должны начинаться с волшебного слова. Любого.
Ну типа
C++ Source Code:
1
inline <matname> <specular> <parallaxScale>\
2
<matname>\
3
{\
4
setVertShader( "glsl/myshader.vs" );\
5
setFragShader( "glsl/myshader.ps" );\
6
float u_ParallaxScale = <parallaxScale>;\
7
float u_SpecularScale = <specular>;\
8
}
Ну это условность конечно, просто пример. Набор передаваемых в материал параметров определяется шейдером, а шейдер мы тоже сами пишем.
Цитата:
Ku2zoff писал: то, что интересно тебе - пилить вот эту систему материалов, новые компиляторы, плюшки в форматах моделей - оно народу не нужно в том виде, в котором оно сейчас
Откуда ты знаешь, что интересно мне?
Я понимаю, что задача сугубо на любителя, мне бы для теста хватило и одного-двух человек, которые бы заинтерисовались по настоящему, вот был у нас тов. Lexart, так не было для него лучшего занятия, чем бесконечно крутить и настраивать материалы. Очень ему это дело нравилось. Ну Психопат вот тоже сокрушался, что в параное нельзя шейдеры заменять своими, нельзя добавлять новые параметры и так далее. Ну вот система, в которой теоретически можно абсолютно всё, не затрагивая код движка. Единственное ограничение фантазии налагают исходные данные моделей\уровней. По крайней мере на данный момент.
Твоя система позволяет модифицировать рендер ордер? ну например сделать воронку от взрыва, погрузить ее в землю, и рисовать ее дно всегда после ландшафта, если только оно не перекрыто другими ее частями.
Crystallize у Психопата точно такая же ситуация была. Ну так шейдеры полностью контролируются юзером, перепиши его.
Спроси у Псхихопата что надо сделать.
Я и не знал что в AMD настолько упоротые сидят. До такого даже мелкософт не додумался.
Покажи мне, где это прописано, что все GL_ в шейдере являются зарезервированными? И почему в таком случае Нвидия, которая процентов на 90 и двигала OpenGL все эти годы, плевать хотела на такие условности.