Пролог.
Данная статья расчитана на читателя, знакомого с основными понятиями графики, а также знающего принципы работы в Photoshop. Рассказывать, какую кнопку нажимать в фотошопе или в как отыскать текстуру я не буду.
Как вы знаете, все текстуры в игре хранятся в dds файлах. Но когда мы их открываем, видим текстуру какой-либо модели, но в "разобранном" виде. Не будем вникать в то, как игра собирает это в единое целое, а давайте лучше разберемся с самим форматом DDS.
Немного теории.
Не буду копировать все с разных источников, опишу сам.
Формат DDS - формат изображений, в которых имеется поддержка альфа-каналов и мип-уровней. Часто этот формат применяется в качестве текстур в различных играх. Примером может служить Perfect World, STALKER, а также в 90% играх на Xbox и PS3.
Чем же так хорош этот формат? А тем, что благодаря поддержке видеокартами DXTn структур, компьютер может сжимать и обрабатывать эти текстуры что называется "на ходу". То есть во время игры загружать необходимые текстуры, а не все текустуры игры. Таким образом в PW система загружает только те текстуры, которые мы можем увидеть. Например, находясь на ЗГД система загружает только текстуры тех областей, которые мы можем увидеть с данной точки. Система не будет загружать текстуры всего мира сразу, т.к. это будет не под силу даже самым мощным кдомашним ПК, да и не нужно это нам.
С 1 изюминкой разобрались. Далее. Что такое Альфа-канал? Те, кто хоть что-то знает о графике помнят, что цвет в цифровом виде может быть представлен разными форматами, но самый популярный - это RGB - формат, при котором все 16мил. цветов получаются путем смешения всего 3-х цветов: красного ®, зеленого (G), синего lol:. Каждый из этих каналов хранится в отдельном канале. В фотшопе мы можем найти их, кликнув по вкладке Chanels (Каналы), правее вкладки слоев:
В каждом DDS файле имеются 3 канала и 1 объединенный, благодаря смешению в нем первых трех и получается цвет на картинке. При чем тут Альфа-канал? DDS файлы позволяют создать еще и 5-ый канал, названый Альфа, а потом успешно сохранить его.
Например, в jpg или gif формате у вас не получится сохранить данные о Альфа-слое, а DDS с этим очень хорошо справляется.
Благодаря Альфа-каналу мы можем регулировать прозрачность отдельных участков текстуры. В случае с PW, мы можем указать, какие участки игре считывать не нужно, т.е. они - прозрачные.
Разобрались? Теперь о Мип-уровнях. Изначально в PW эта функция во всех текстурах не активирована, но Вы,при создании своих текстур, можете воспользоваться этим для повышения качества текстуры и уровня своего мастерства. Чтобы не расписывать долго, процитирую выдержку из статьи, посвященной DDS файлам игры STALKER (ссылка в конце статьи).
Мип-уровни
Представим себе старый запорожец. Вот мы подходим к нему вплотную. Ржавчина внизу кузова, трещины на стекле, покосившаяся ручка на дверце, царапина на крыле. все в максимальных деталях. Отходим метров на 30, уже видим все не так четко, можем различить ржавчину, но царапину на крыле уже не увидим. Отойдем еще на 50 метров. Там уж о деталях говорить не приходится, так как видим практически только очертания. отойдем еще на 100 м, и от запора остается только пятно на горизонте.Примерно так и работают мип уровни. Если объект находится близко, к нему подставляется текстура максимального разрешения, при удалении от объекта текстура заменяется на ее копию, но меньшего разрешения, если еще дальше отойти от объекта, разрешение текстуры будет еще меньше. Это делается для того, чтобы не отрисовывать детали, которые мы все равно не увидим с расстояния, это позволит сэкономить ресурсы системы и избавит картинку от излишней четкости.
Текстура в формате .dds может содержать в себе несколько своих дубликатов но с разным разрешением. Например, если мы сохраняем текстуру с разрешением 512512, так же автоматически в файл сохранится эта же текстура с разрешениями 256256, 128128, 6464, 3232, и т.д. обычно число таких текстур в одном файле достигает 13. И если вспомнить тот запорожец, то когда мы находимся к нему вплотную, на него наложена текстура 512512, отойдем на 30 метров, разрешение текстуры изменится до 256256, еще на 30 метров - уже 128128, и при дальнейшем удалении от запора его текстура будет уменьшаться дальше.
Но далеко не для всех текстур нужны мип-уровни. Если взять например текстуры интерфейса, например кнопки, окна, иконки инвентаря. Мы ведь не можем отойти от них на 100 метров, значит и мип-уровни для них не нужны. Этой логике и нужно следовать, указывая в настройках, сохранять мип-мапы в файл или нет.
Практика.
Давайте откроем любой файл DDS-текстуры в Adobe Photoshop с установленым плагином nVidia. Я пользуюсь CS5 версией, но открывать можно в любом, в каком Вам удобно работать.
Для примера я беру майку Яркий ковбойский пиджак. В папке с текстурой будет 2 файла, с именами в формате rw_** и nb_rw_**, где * - китайские символы.
Первый файл - сама текстура, а второй - так называемая "карта". Там указаны области прозрачности, и также области, на которые влияет краситель
ВНИМАНИЕ! Все текстуры, добавленные в игру с выходом версии 1.4.4 имеют только такую структуру. Все текстуры до 1.4.4 будут представлены 1 файлом с закрытым Альфа-каналом.
Итак, вот так выглядит наша майка до изменений:
Открываем 2 файла текстур в фотошопе и видим:
При активном Альфа-канале на изображении текстуры мы видим прозрачные для игры области:
Спойлер
Тут включаем режим творчества и украшаем майку как хотим. Главное - не выходить за границы и не менять пропорции стиля. Также советую не редактировать Альфа-канал, если не знаете принципов работы с ним.
В итоге у каждого получится что-то свое. Во время написания этой статьи я делал майки для ГМ на сервер, поэтому покажу пример на одной из работ:
С рисунком разобрались. Теперь разберем "карту", второй файл.
Как и в каждой карте, в этой есть Легенда - условные обозначения. Естественно в виде цвета.
Цвета #000000 и близкие к нему - области, оставляющие свой цвет (тот, который мы создали на первой текстуре.
Цвет #0000f9 и близкие к нему указывают игре на области, на которые влияет краситель. Иначе - синим цветом показано, какая часть вещи красится.
Цвет #ef0529 определяет "пробелы" - области, где нам не нужно влиять краской или иными параметрами.
Таким образом, как Вы видите, черными полосками на синем фоне создан эффект помятости майки. Полосы идентичны тем, что нарисованы на самой майке.
Нам тоже нужно сделать так, чтобы узоры на наших двух файлах были одинаковы.
Используя эти 3 цвета можно редактировать "маску" текстуры.
Я не буду рассказывать, как наложить 1 текстуру на вторую, чтобы совместить узоры. На это есть 2 причины:
1) Как я сказал вначале статьи, она расчитана на людей, хоть немного разбирающихся в графике и принципах работы в фотошопе.
2) Чтобы каждый второй не начал этим заниматься. Конкуренция все-таки, а она мне не нужна :lol:
В результате по узорам у Вас должно получится 2 одинаковых файла. Только во втором все узоры будут залиты красным
Примечание: от интенсивности красного на узорах зависит прозрачность самих узоров. Сделав полупрозрачной заливку, можно вручную повторить эффект помятости или наложить текстуру кожи или шелка, например.
У меня получилась такая карта для майки:
Далее осталось только сохранить. Но и это нужно сделать с умом
Сохранение.
Жмем Ctrl+Shift+S и у нас выскакивает окно выбора формата и папки. Выбираем D3D/DDS и жмем ОК. Далее открывается такого вида окно:
В группе "Save format" указывается режим сохранения текстуры, а так же тип текстуры из трех: "2D texture" (обычная текстура), "cubemap" (скайбокс), "volume texture" (судя по всему текстура рельефа, я никогда этот тип не использовал). Про скайбоксы будет сказано ниже.
В группе "Mip-map generation" указывается, сохранять или нет мип-уровни в текстуру. первый флажок - сохранять, третий - не сохранять, а второй - это для спецов, тех, кто ответил "да" на вопрос "загружать ли мип-уровни" при открытии текстуры.
Далее идет несколько кнопок, позволяющих произвести более точную настройку работы плагина. Из них можно выделить:
Image options - позволяет настроить некоторые параметры сохранения текстур, например качество сохранения, сглаживание альфы, смена каналов местами и т.д.
Так как эти опции не имеют прямого влияния на саму работу с форматом ддс, оставлю их вам на изучение методом тыка, понятней будет.
Sharpening - здесь можно изменить четкость мип-уровней. Режим легкого заострения (sharpen soft) позволит немного повысить детализацию объектов вдалеке. я всегда пользуюсь этим режимом.
Примечание: именно об этом я говорил вначале статьи. Вы можете с помощью этого инструмента влиять на качество при приближении-отдалении. Но лучший результат будет получен только при создании текстуры с нуля из изображений HD качества.
Config - здесь настраивается работа плагина в целом. например если мы хотим отключить вопрос при открытии текстуры "загружать или нет мип-уровни", то нужно снять галку с опции "Ask to load mip-maps".
Остальное нам не пригодится. Выставив нужные опции в вышеописанных параметрах, жмем "Save"
Напоминаю. Если текстура с альфой сохраняется для дальнейших тестов, то используем режим (8:8:8:8 ARGB), а если вариант текстуры окончателен, то сохраняем в DXT5 или DXT1 (с альфой 1 бит).
Для варианта текстуры без альфы используем (8:8:8 RGB) - для дальнейшей обработки, DXT1 (без альфы) - окончательный вариант.
После обработки нужно сохранить текстуру. Если обработка незначительная, и не было добавлено новых слоев, то используем меню "сохранить", а если созданы дополнительные слои, то удобно использовать "сохранить как...", при этом сведение слоев производить не нужно.
Закидываем текстуру в игру, заходим, проверяем. Мой результат:
Спойлер
Также можно поменять любую текстуру. Примеров редактирования брони нет, а стиль вот:
Спойлер
©Mescaline с форума DarkTower.Blind Side - розработан на 8%
Данная статья расчитана на читателя, знакомого с основными понятиями графики, а также знающего принципы работы в Photoshop. Рассказывать, какую кнопку нажимать в фотошопе или в как отыскать текстуру я не буду.
Как вы знаете, все текстуры в игре хранятся в dds файлах. Но когда мы их открываем, видим текстуру какой-либо модели, но в "разобранном" виде. Не будем вникать в то, как игра собирает это в единое целое, а давайте лучше разберемся с самим форматом DDS.
Немного теории.
Не буду копировать все с разных источников, опишу сам.
Формат DDS - формат изображений, в которых имеется поддержка альфа-каналов и мип-уровней. Часто этот формат применяется в качестве текстур в различных играх. Примером может служить Perfect World, STALKER, а также в 90% играх на Xbox и PS3.
Чем же так хорош этот формат? А тем, что благодаря поддержке видеокартами DXTn структур, компьютер может сжимать и обрабатывать эти текстуры что называется "на ходу". То есть во время игры загружать необходимые текстуры, а не все текустуры игры. Таким образом в PW система загружает только те текстуры, которые мы можем увидеть. Например, находясь на ЗГД система загружает только текстуры тех областей, которые мы можем увидеть с данной точки. Система не будет загружать текстуры всего мира сразу, т.к. это будет не под силу даже самым мощным кдомашним ПК, да и не нужно это нам.
С 1 изюминкой разобрались. Далее. Что такое Альфа-канал? Те, кто хоть что-то знает о графике помнят, что цвет в цифровом виде может быть представлен разными форматами, но самый популярный - это RGB - формат, при котором все 16мил. цветов получаются путем смешения всего 3-х цветов: красного ®, зеленого (G), синего lol:. Каждый из этих каналов хранится в отдельном канале. В фотшопе мы можем найти их, кликнув по вкладке Chanels (Каналы), правее вкладки слоев:
В каждом DDS файле имеются 3 канала и 1 объединенный, благодаря смешению в нем первых трех и получается цвет на картинке. При чем тут Альфа-канал? DDS файлы позволяют создать еще и 5-ый канал, названый Альфа, а потом успешно сохранить его.
Например, в jpg или gif формате у вас не получится сохранить данные о Альфа-слое, а DDS с этим очень хорошо справляется.
Благодаря Альфа-каналу мы можем регулировать прозрачность отдельных участков текстуры. В случае с PW, мы можем указать, какие участки игре считывать не нужно, т.е. они - прозрачные.
Разобрались? Теперь о Мип-уровнях. Изначально в PW эта функция во всех текстурах не активирована, но Вы,при создании своих текстур, можете воспользоваться этим для повышения качества текстуры и уровня своего мастерства. Чтобы не расписывать долго, процитирую выдержку из статьи, посвященной DDS файлам игры STALKER (ссылка в конце статьи).
Мип-уровни
Представим себе старый запорожец. Вот мы подходим к нему вплотную. Ржавчина внизу кузова, трещины на стекле, покосившаяся ручка на дверце, царапина на крыле. все в максимальных деталях. Отходим метров на 30, уже видим все не так четко, можем различить ржавчину, но царапину на крыле уже не увидим. Отойдем еще на 50 метров. Там уж о деталях говорить не приходится, так как видим практически только очертания. отойдем еще на 100 м, и от запора остается только пятно на горизонте.Примерно так и работают мип уровни. Если объект находится близко, к нему подставляется текстура максимального разрешения, при удалении от объекта текстура заменяется на ее копию, но меньшего разрешения, если еще дальше отойти от объекта, разрешение текстуры будет еще меньше. Это делается для того, чтобы не отрисовывать детали, которые мы все равно не увидим с расстояния, это позволит сэкономить ресурсы системы и избавит картинку от излишней четкости.
Текстура в формате .dds может содержать в себе несколько своих дубликатов но с разным разрешением. Например, если мы сохраняем текстуру с разрешением 512512, так же автоматически в файл сохранится эта же текстура с разрешениями 256256, 128128, 6464, 3232, и т.д. обычно число таких текстур в одном файле достигает 13. И если вспомнить тот запорожец, то когда мы находимся к нему вплотную, на него наложена текстура 512512, отойдем на 30 метров, разрешение текстуры изменится до 256256, еще на 30 метров - уже 128128, и при дальнейшем удалении от запора его текстура будет уменьшаться дальше.
Но далеко не для всех текстур нужны мип-уровни. Если взять например текстуры интерфейса, например кнопки, окна, иконки инвентаря. Мы ведь не можем отойти от них на 100 метров, значит и мип-уровни для них не нужны. Этой логике и нужно следовать, указывая в настройках, сохранять мип-мапы в файл или нет.
Практика.
Давайте откроем любой файл DDS-текстуры в Adobe Photoshop с установленым плагином nVidia. Я пользуюсь CS5 версией, но открывать можно в любом, в каком Вам удобно работать.
Для примера я беру майку Яркий ковбойский пиджак. В папке с текстурой будет 2 файла, с именами в формате rw_** и nb_rw_**, где * - китайские символы.
Первый файл - сама текстура, а второй - так называемая "карта". Там указаны области прозрачности, и также области, на которые влияет краситель
ВНИМАНИЕ! Все текстуры, добавленные в игру с выходом версии 1.4.4 имеют только такую структуру. Все текстуры до 1.4.4 будут представлены 1 файлом с закрытым Альфа-каналом.
Итак, вот так выглядит наша майка до изменений:
Открываем 2 файла текстур в фотошопе и видим:
При активном Альфа-канале на изображении текстуры мы видим прозрачные для игры области:
Спойлер
Тут включаем режим творчества и украшаем майку как хотим. Главное - не выходить за границы и не менять пропорции стиля. Также советую не редактировать Альфа-канал, если не знаете принципов работы с ним.
В итоге у каждого получится что-то свое. Во время написания этой статьи я делал майки для ГМ на сервер, поэтому покажу пример на одной из работ:
С рисунком разобрались. Теперь разберем "карту", второй файл.
Как и в каждой карте, в этой есть Легенда - условные обозначения. Естественно в виде цвета.
Цвета #000000 и близкие к нему - области, оставляющие свой цвет (тот, который мы создали на первой текстуре.
Цвет #0000f9 и близкие к нему указывают игре на области, на которые влияет краситель. Иначе - синим цветом показано, какая часть вещи красится.
Цвет #ef0529 определяет "пробелы" - области, где нам не нужно влиять краской или иными параметрами.
Таким образом, как Вы видите, черными полосками на синем фоне создан эффект помятости майки. Полосы идентичны тем, что нарисованы на самой майке.
Нам тоже нужно сделать так, чтобы узоры на наших двух файлах были одинаковы.
Используя эти 3 цвета можно редактировать "маску" текстуры.
Я не буду рассказывать, как наложить 1 текстуру на вторую, чтобы совместить узоры. На это есть 2 причины:
1) Как я сказал вначале статьи, она расчитана на людей, хоть немного разбирающихся в графике и принципах работы в фотошопе.
2) Чтобы каждый второй не начал этим заниматься. Конкуренция все-таки, а она мне не нужна :lol:
В результате по узорам у Вас должно получится 2 одинаковых файла. Только во втором все узоры будут залиты красным
Примечание: от интенсивности красного на узорах зависит прозрачность самих узоров. Сделав полупрозрачной заливку, можно вручную повторить эффект помятости или наложить текстуру кожи или шелка, например.
У меня получилась такая карта для майки:
Далее осталось только сохранить. Но и это нужно сделать с умом
Сохранение.
Жмем Ctrl+Shift+S и у нас выскакивает окно выбора формата и папки. Выбираем D3D/DDS и жмем ОК. Далее открывается такого вида окно:
В группе "Save format" указывается режим сохранения текстуры, а так же тип текстуры из трех: "2D texture" (обычная текстура), "cubemap" (скайбокс), "volume texture" (судя по всему текстура рельефа, я никогда этот тип не использовал). Про скайбоксы будет сказано ниже.
В группе "Mip-map generation" указывается, сохранять или нет мип-уровни в текстуру. первый флажок - сохранять, третий - не сохранять, а второй - это для спецов, тех, кто ответил "да" на вопрос "загружать ли мип-уровни" при открытии текстуры.
Далее идет несколько кнопок, позволяющих произвести более точную настройку работы плагина. Из них можно выделить:
Image options - позволяет настроить некоторые параметры сохранения текстур, например качество сохранения, сглаживание альфы, смена каналов местами и т.д.
Так как эти опции не имеют прямого влияния на саму работу с форматом ддс, оставлю их вам на изучение методом тыка, понятней будет.
Sharpening - здесь можно изменить четкость мип-уровней. Режим легкого заострения (sharpen soft) позволит немного повысить детализацию объектов вдалеке. я всегда пользуюсь этим режимом.
Примечание: именно об этом я говорил вначале статьи. Вы можете с помощью этого инструмента влиять на качество при приближении-отдалении. Но лучший результат будет получен только при создании текстуры с нуля из изображений HD качества.
Config - здесь настраивается работа плагина в целом. например если мы хотим отключить вопрос при открытии текстуры "загружать или нет мип-уровни", то нужно снять галку с опции "Ask to load mip-maps".
Остальное нам не пригодится. Выставив нужные опции в вышеописанных параметрах, жмем "Save"
Напоминаю. Если текстура с альфой сохраняется для дальнейших тестов, то используем режим (8:8:8:8 ARGB), а если вариант текстуры окончателен, то сохраняем в DXT5 или DXT1 (с альфой 1 бит).
Для варианта текстуры без альфы используем (8:8:8 RGB) - для дальнейшей обработки, DXT1 (без альфы) - окончательный вариант.
После обработки нужно сохранить текстуру. Если обработка незначительная, и не было добавлено новых слоев, то используем меню "сохранить", а если созданы дополнительные слои, то удобно использовать "сохранить как...", при этом сведение слоев производить не нужно.
Закидываем текстуру в игру, заходим, проверяем. Мой результат:
Спойлер
Также можно поменять любую текстуру. Примеров редактирования брони нет, а стиль вот:
Спойлер
©Mescaline с форума DarkTower.Blind Side - розработан на 8%