![]() |
Текстурные слоты (Решено) - Версия для печати +- Xtreme3D Community (https://xtreme3d.ru/forums) +-- Форум Xtreme3D (https://xtreme3d.ru/forums/forumdisplay.php?fid=3) +--- Форум Вопросы и ответы (https://xtreme3d.ru/forums/forumdisplay.php?fid=6) +--- Темы: Текстурные слоты (Решено) (/showthread.php?tid=19) |
Текстурные слоты (Решено) - FireRun - 08-26-2018 Не могу разобраться как работают текстурные слоты и для чего они нужны, например MaterialLoadTextureEx, подскажите?) Текстурные слоты (Решено) - Gecko - 08-26-2018 Текстурные слоты нужны для добавления нескольких текстур материалу, обычно это нужно в параметрах шейдеров GLSL, где можно не указывать явно материал для чтения текстуры, а просто использовать текстуры в слотах. Таким образом, один и тот же шейдер будет работать с разными материалами, если у них загружены TextureEx в нужных слотах, что удобно - не нужно создавать свой шейдер для каждого материала. MaterialCreate('material', 'diffuse.png'); // слот 0 MaterialLoadTextureEx('material', 'normal.png', 1); MaterialLoadTextureEx('material', 'specmap.png', 2); Можно использовать до 8 слотов. В шейдер они передаются так: GLSLShaderSetParameterTexture(diffuseParam, '', 0); GLSLShaderSetParameterTexture(normalParam, '', 1); GLSLShaderSetParameterTexture(specParam, '', 2); Пустая строка означает, что для чтения текстуры используется материал, к которому присоединен шейдер. Текстурные слоты (Решено) - FireRun - 08-26-2018 А если у одной модели несколько текстур, их все можно загрузить с помощью слотов? Текстурные слоты (Решено) - Gecko - 08-26-2018 Если текстуры модели в разных материалах, то нет, они будут... в разных материалах ![]() Текстурные слоты (Решено) - FireRun - 08-26-2018 Да и загрузка модели как мне кажется не до конца реализована, при загрузки меша видны артефакты, даже если модель выглядит идеально собранной,приблизив, видны лишние треугольники висящие где-то рядом с моделью |