Готовый перевод OGRE Manual / Руководство OGRE: 2.7 Materials

Объект "материал" управляет тем, как объекты сцены визуализируются. Он определяет, какими основными свойствами поверхности обладают объекты (например, цветовые отражательные способности, блеск и т.д.), сколько присутствует слоев текстур, какие изображения располагаются на них и как эти слои текстур смешиваются, какие применяются спецэффекты (например, отображение окружающей объект обстановки), какой метод отсечения используется, какой применяется метод фильтрации текстур и т.д.

Материалы могут быть заданы программно - через вызов SceneManager::createMaterial и последующую подстройку параметров - или же через описание материалов в "скрипте", загружаемом во время выполнения программы. См. подробности в разделе 3.1 "Скрипты для материалов"

В основном, все, что относится ко внешнему виду объекта, за исключением его формы, контролируется классом Material

Класс SceneManager управляет сводным списком материалов, доступных сцене. Список может быть дополнен приложением при помощи вызова SceneManager::createMaterial или при загрузке меша (который в свою очередь загрузит свойства его материалов). Каким бы способом материалы ни добавлялись в SceneManager, в начале они все имеют набор свойств по умолчанию, которые определяются в OGRE следующим образом:

* внешнее отражение = ColourValue::White (полное)
* рассеивающее отражение = ColourValue::White (полное)
* зеркальное отражение = ColourValue::Black (нет)
* собственное свечение = ColourValue::Black (нет)
* блеск = 0 (не блестящий)
* Нет слоев текстур (и поэтому нет и текстур)
* SourceBlendFactor = SBF_ONE, DestBlendFactor = SBF_ZERO (непрозрачный)
* Проверка буфера глубины вкл.
* Запись в буфер глубины вкл.
* Функция сравнения для буфера глубины = CMPF_LESS_EQUAL
* Режим отсечения = CULL_CLOCKWISE
* Внешнее освещение в сцене = ColourValue(0.5, 0.5, 0.5) (серый)
* Динамическое освещение вкл.
* Режим затушевывания по методу Гуро
* Режим отображения закрашенных многоугольников
* Билинейная фильтрация текстур

Вы можете изменить данные настройки, вызвав SceneManager::getDefaultMaterialSettings() и внеся необходимые изменения в экземпляр класса Material, который будет возвращен вызванной функцией

"Сущности" (дискретные движимые объекты сцены, экземпляры класса Entity) автоматически имеют связанный с ними материал, если они используют меш-объект, т.к. меш как правило задает требуемые ему материалы при загрузке. Вы также можете настроить материал, используемый "сущностью" так, как это описано в разделе 2.6 - "Сущности". Просто создайте новый объект-материал, настройте его как хотите (вы можете скопировать в него существующий материал, если Вам нравится использовать стандартный оператор присваивания) и свяжите его с объектами SubEntity, вызвав SubEntity::setMaterialName().

Переведено на Нотабеноиде
http://notabenoid.org/book/137/1518

Переводчики: vrecobra

Настройки

Готово:

100.00% КП = 1.1