Текстуры

Материал из BestWay wiki
Перейти к: навигация, поиск

Текстура – это то, что зритель непосредственно видит на экране. Почти никогда зритель не видит сетку объекта, он видит только контуры модели и светотени, получаемые при прорисовке объема. Задача художника – максимально подчеркнуть форму объекта и передать те детали, которые не могут быть реализованы в модели в силу технических ограничений. Художник придает модели именно тот вид, который приводит ее в соответствие с концептом или чертежом.

В начале работы над текстурами следует продумать возможный набор «природных материалов», из которых состоит моделируемый объект и учесть любые возможности объединения нескольких предполагаемых текстур в одну, либо использования уже имеющихся в проекте текстур. При проектировании будущей текстуры на модели могут быть выполнены незначительные изменения в детали, созданные геометрически.



Технические ограничения


  1. Размер базовой текстуры модели может варьироваться в зависимости от размера объекта, детализации самой текстуры и от того, с какого расстояния зритель наблюдает эту модель. На поверхностях, которые зритель, скорее всего не увидит, или будет видеть под острым углом, можно и нужно экономить и отводить для них на раскладке меньшую площадь, оставив больше места для видимых частей. Однако для тех полигонов модели, которые зритель сможет видеть одновременно, и которые расположены рядом в пространстве, а не на текстуре, – следует соблюдать однородную плотность текстуры, т.е. на единицу физической площади должна приходиться примерно одна и та же площадь текстуры. Также важно следить за тем, чтобы объекты или элементы текстуры, узнаваемые по размерам в реальном мире, подчеркивали масштаб объекта или хотя бы его не искажали в худшую сторону. Например, кирпичи: на крупном здании они должны передавать либо реальный размер, или быть чуть мельче, подчеркивая крупность здания.
  2. Размер текстуры bump должен быть идентичен размеру базовой текстуры. Текстура bump должна быть создана в градациях серого, желательно в несжатом формате bmp, tga, tif (при экспорте она преобразуется в карту нормалей, которую затем нужно преобразовать в .dds – см. п. 3.4.2.)
  3. Размер текстуры specular во многих случаях может быть вдвое меньше базовой (по каждой стороне). Если текстура _xx (от полностью разрушенной модели) достаточно рыхлая и мутная – ее размер также можно уменьшить вдвое.

В игре для поверхности земли используется плотность текстуры 34 пикселя/метр (текстура 512*512 накрывает полигон 15*15 метров). Такую же плотность рекомендуется использовать на объектах окружения (зданиях, декорациях и т.п.). Исключение могут составлять какие-либо специальные объекты с подчеркнуто мелкими деталями. И обязательно плотность должна быть выше на технике и солдатах – объектах, акцентирующих внимание игрока. Иначе, при равной плотности текстур фона и игровых персонажей, ухудшится восприятие игры.

Рекомендуемые к использованию в моделях размеры текстур:

  • техника: 512х512 (соответствуют габаритам больших танков – ИС2, PZ6-2 и т.п.). Максимальная детализация нужна на верхней части корпуса, башне, гусеницах и катках
  • солдаты: 256х256 (при дальнейшей разработке может оказаться необходимым сокращение данного размера до 128х128!). Детализация равномерная, но для лица нужно больше площади, чем для остальных участков тела

Важно:

  1. Всегда используйте разрешение текстуры не больше, чем видимое разрешение в реальной игровой сцене. Ни в коем случае нельзя использовать Cropping/Placement в текстурной карте в 3dsmax, поскольку текстура всегда экспортируется полностью и в результате получится не тот результат, который ожидается.
  2. Объединение текстур дает прирост производительности только в том случае, если все ее части отрисовываются с одинаковыми настройками blending в материале (blend/test/none/light/mod2x). Другими словами, текстуры, использующиеся в разных типах материалов, можно не объединять в одну, за исключением следующего случая. Возможны ситуации, когда одна и та же текстура может быть по-разному использована в разных материалах (например, альфа-канал в одном материале может использоваться как прозрачность, в другом – как маска для смешивания текстур).
  3. Имена текстур должны соответствовать своему назначению. Для диффузного канала используется произвольное (логически обоснованное!) именование, для канала bump имя должно совпадать с именем диффузной текстуры, с постфиксом «_bp» или «_bump», для specular – с постфиксом «_sp» или «_spec». Для текстур-масок (отражений и т.п.) используется постфикс «_mask», можно с номером, если их несколько. Не нужно придумывать лишние обозначения, в которых потом можно запутаться!
  4. Фоновая детализация (дома, земля, декорации) принимается за 32-34 пикселя на метр реальной площади поверхности (это может привести к тому, что на объект потребуется текстура очень больших размеров, нельзя об этом забывать!). Детализация игровых юнитов должна быть выше!



Художественные требования


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

Можно сформулировать следующие требования к текстуре:

  1. Объем. Для подчеркивания объемов модели применяется псевдо-освещение (fake lighting) на текстуре. Поскольку обычно заранее неизвестно, в каких условиях освещения объект будет в игре, следует искусственно создавать эффект освещения объекта сверху. Верхний свет особенно важен для выразительности сцены в целом и отдельных ее объектов. Текстура, соответствующая этому требованию, придаст модели объем даже при отсутствии прямого освещения (пасмурный день, ночь). Для рендера слишком дорого везде использовать динамические блики и т.п. эффекты, поэтому в некоторых местах их следует имитировать вручную на текстуре. Особенно это касается изломов поверхности – идеально острых углов в природе не существует, всегда на линии перегиба возникают фаски, дающие особый вытянутый блик на текстуре. Плюс краска на окрашенных объектах стирается в таких местах быстрее чем на ровной поверхности. Хороший пример использования верхнего света и бликов на изломах поверхностей можно увидеть на моделях Quake 3.
  2. Читабельность. В окружении ландшафта или других объектов нужно учитывать соотношение «фигура-фон», выделять объект из фона посредством контраста холодных и теплых тонов, а также размеров пятен цвета (это необходимо для персонажей и может понадобиться для некоторых объектов). Объект может быть выделен также путем изменения насыщенности и контрастности цвета.
  3. Разбивка по высоте. В сценах, наблюдаемых игроком сверху, или содержащих дальний план, для придания большей реалистичности обычно используется эффект тумана (fog), дающий глубину атмосферы. Однако в некоторых случаях этот эффект неприменим, особенно когда речь идет об объектах относительно малой величины, таких, как солдаты на поле боя.Для усиления объема модели используется разбивка по высоте: уменьшение контрастности, освещенности и детализации объекта пропорционально его удалению вдаль от камеры (вглубь, если вид сверху), тем самым, утрируя воздушную перспективу. Однако следует учитывать возможные перемещения камеры. Упомянутое правило хорошо работает на протяженных участках, куда камера не сможет добраться (например обрыв высокой скалы).Используется также свойство теплых и холодных цветов с целью передачи ощущения приближения/отдаления частей объекта. Грубо говоря, яркость напрямую влияет на акцент внимания на части тела и на визуальную высоту этих частей. Пример: если сделать голову персонажа светлее его ног, то голова будет казаться ближе.
  4. Целостность. Для того, чтобы объект был целостным, необходима цветовая гармония его частей друг с другом, а также соблюдение пропорций цветовых отношений: соотношение яркости и насыщенности элементов должно быть обратно пропорционально их площади.
  5. Выделение крайних точек. Если объект анимирован, обязательно нужно выделять его важные для акцентирования части (например, голову и конечности), чтобы привлечь к ним внимание, иначе движение может потеряться. Выделение указанных частей можно производить при помощи той же самой утрированной воздушной перспективы.
  6. Образность. Иногда нужно подчеркивать характер объекта, не только его формой, но и цветом, и мельчайшими деталями. Очень хорошо здесь подойдет принцип, применяемый классическими аниматорами – утрирование характерных черт. Точно так же работают шаржисты – они улавливают наиболее значимые черты внешности человека и рисуют смешной, но правдивый портрет с утрированными чертами. Цвет и фактура передают очень много информации о характере (внутреннем мире) объекта, особенно если это персонаж – они способны передать его настроение, отношение с окружающим миром и т.п. Хотя этот пункт не совсем применим к игре, моделирующей исторически достоверные объекты, все же утрированием некоторых деталей не стоит пренебрегать – они помогут дополнительно акцентировать внимание на объекте.
  7. Колористическое единство. Следует учитывать цветовой строй всей сцены, чтобы декорации сочетались между собой и с окружением (в случае если объект создается для определенного окружения!). Гармонично составленная сцена – это залог хорошего восприятия игровой атмосферы и, как следствие, большего погружения в игру, чего обычно разработчики и добиваются.
  8. Детали, естественность материала.В природе никогда не бывает чистых цветов, идеально отполированных поверхностей и прочих «идеальностей». Чтобы объект выглядел естественно, его текстура должна иметь признаки взаимодействия с окружающей средой – запыление, загрязнение, царапины, старение. Причем, такие детали нельзя добавлять бездумно. Только логически подчеркнув естественность материала, мы получим максимальное привлечение внимания зрителя. В противном случае объект будет либо слишком грязным, либо слишком чистым.



Фильтрация


Для того, чтобы при рендере не возникало эффекта ряби на мелких деталях текстуры, используется фильтрация текстур. В рекомендуемом к использованию формате dds автоматически (при сохранении текстуры) генерируются MIP-уровни, используемые процедурой фильтрации в графическом ускорителе. MIP представляет собой копию оригинальной текстуры, уменьшенную в 2,4,8,16 и т.д. раз до тех пор, пока не останется текстура размером 1x1. Если текстура используется другого формата (bmp, tga) – такие MIP генерируются только в процессе загрузки текстуры в игру.

Преимущество формата dds в том, что любой его MIP можно подменить вручную (в Photoshop или DXTex). Это позволяет обработать отдельные MIP (которые включаются при удалении камеры от поверхности с текстурой или при повороте такой поверхности боком к зрителю) таким образом, чтобы уменьшить шум на «дальних» MIP. В результате получается очень мягкая картинка. С помощью изменения MIP можно менять детали текстуры с удалением от камеры, ликвидируя эффект повторения текстуры на модели. Кроме того, подставляя радикально отличающиеся друг от друга текстуры в качестве MIP, можно получить интересные эффекты, например, перламутр (изменение яркости и цвета к краям объекта).



Окраска техники


Для того, чтобы выдержать историческую достоверность и единство стиля моделей военной техники в игре, необходимо придерживаться документальных сведений о способах окраски техники той или иной страны, участвовавшей в военных действиях. Существует масса документов, сохраненных локально а также доступных в Интернете, фотографий и описаний. См. «Z:\Database\Info-WW2».

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

а Texture 1.PNG б Texture 2.PNG

в Texture 3.PNG г Texture 4.PNG

д Texture 5.PNG е Texture 6.PNG ж Texture 7.PNG

а – советская (зеленая) БА-11, б – советская (камуфляж) Т-34, в – германская (серая) Hummel, г – германсая (камуфляж) PZ-VIE, д – союзная (зеленая) Bishop, е – союзная (зеленая) m4a3m, ж – союзная (камуфляж)

Соответствующие файлы для образцов цвета находятся там же, где данный документ. Ориентировочные образцы техники для окраски новых моделей и поправки старых указаны на рисунке.



Окраска солдат


Образцы типичной окраски солдат – см. соответствующие текстуры:

англичане (обычная): humanskin\eng-mgun

англичане (камуфляж): humanskin\eng_sniper


немцы (обычная): humanskin\ger-rifleman

немцы (камуфляж): humanskin\ger_ss_hp

немцы (СС): humanskin\ger-elite-ss


русские (обычная): humanskin\rus-smguner

русские (камуфляж): humanskin\rus-sniper


американцы (обычная): humanskin\us_com

американцы (камуфляж): humanskin\us_sniper