Привет реактор, я хочу показать вам процесс создания моделей для игрей, но акцент сделают на картах текстур и их предназначении.
Начну я с карт нормалей.
Карты нормалей сохраняют информацию о том, под каким угломотражается свет от поверхности. И это чрезвычайно полезная хренотень и сейчас япокажу зачем она нужна.
Но начнём мы с того, как и в процессе чего их делают.
Создание модели начинается с High Poly Model -"Хайпольки" - Высоко полигональной модели. Такие модели имеют отдесятка тысяч, до десятков миллионов полигонов. В игровой сцене, на вашемэкране, обычно количество полигонов на всех объектах не превышает 2 миллионовтреугольников, но их там очень и очень много и у кого то уже тормозит, если жеодна из этих моделей будет иметь к примеру 2 миллиона полигонов (в полигоне 4угла и 4 точки, в игровых движках они делятся на треугольники 1 полигон = 2 треугольника потому что онитолько так могут работать с ними в реальном времени) то в принципе она одна ипоместится.
К примеру, вот такую вот арка имеет 6 миллионов полигонов.
После создания хайпольки, делают её LowPoly версию.Которая имеет гораздо меньше полигонов и повторяет силуэт модели. Я будуиспользовать 3D Max.
У этой модели 50 полигонов т.е. 100 треугольников.
Дальше создаём UVразвертку, которая отвечает за то,какой регион на текстуре относится к какой части полигона модели.
После этого нехитро запекаем нормали.. и идём смотретьрезультат в MarmosetToolbag2.
Дурно, но сгодится. Теперь у нас есть все детали что были нахайполи, но у нас не 6 миллионов полигонов, а 50 полигонов и одна текстура 1024x1024 карта нормалей.
Здесь вы можете сравнить детали на Хайполи и Лоуполи, самыебольшие и заметные косяки, это там где силуэт не совпадает, на вмятинах междублоками, это всё решается увеличением количества полигонов, но +- 100 это некритично сейчас, просто я ленивый и не стал эти выемки делать.
Если вы будете щедры на плюсы, то я ещё расскажу проостальные текстуры.
Нормали это реально крутая вещь. Ведь любую рельефную поверхностьможно на неё запечь.. к примеру у нас есть такая маска.
Перепекаем её на лоуполи.
Воах, это просто полигон, с нормалью от этой маски и альфакарта которая делает остальной фон на нём прозрачным. Вот так оно выглядит безальфы.
Спасибо за внимание, напомню, что ваши плюсы будутмотивировать меня продолжить на эту тему и рассказать про другие текстуры и какони работают. Специально для джоя.
Ну а если пост именно научно-познавательный - рассказал бы, как именно работает вся эта магия, обьяснил бы разницу между риалтаймом и пре-рендером и нафиг вообще это все надо, а то ж не ясно нифига.
Ну и это, не дезинформируй народ, полигон - это не 4 вертекса, а любое количество больше 3х, соответственно, треугольников в полигоне тоже может быть не два, а дофига больше.
Развёртка для моей задачи вполне сгодилась и удовлетворила мои потребности, может можно было лучше, я буду рад если ты мне объяснишь как было бы лучше в личку.
Ну, моя задача была показать, как оно работает, скажем наглядно. В следующем посте постараюсь учесть пожелания и сделать больше информативности.
В случае с разверткой, твоя задача занять как можно большее пространство развертки лоскутками модели, чтоб получить как можно большую детализацию, но у тебя процентов 30 текстурного пространства не занято ничем.
Дальше. Некоторые куски на развертке у тебя расположены почти вплотную и это не гуд. При текстуринге у каждой детали надо сделать отступ в несколько пикселей(иногда больше, но счас не об этом) на случай мип-маппинга (ужимания текстуры), иначе программа при ужимке возьмет цвета пикселей самой детали и цвета соседних пикселей и усреднит их, в итоге ты будешь иметь швы текстуры неправильного цвета. То же самое получится с нормалью - при понижении разрешения все эти вот красивые грани не будут выглядеть как надо.
Так же избегай разворачивать детали диагонально там, где это возможно, т.е если у тебя есть просто прямоугольник - всегда клади его либо горизонтально, либо вертикально. Во-первых, его будет проще текстурить, во-вторых, при том же мип-маппинге, вероятность получить хреновые стыки на диагоналях выше. И все это чудо еще и лесенкой пойдет.
Так же у тебя одним куском развернуты передняя и боковая часть, угол между которыми 90 градусов. Тут как бы можно так сделать, но я бы не стал, нормаль не всегда хорошо с таким справляется. А боковая часть еще и в нескольки плоскостях, из-за чего ровно их никак не развернешь и получаются заметные потяжки. Вот так я бы разворачивал только мелкие и малозаметные детали, а конкретно тут лучше сделать отдельно и назначить разные смус-группы.
Вроде все. Можно мне лодку?
А технические художники - вообще очень расплывчатое понятие. Они могут и шейдеры писать, и риггингом заниматься. Или там пайплайны составлять. Или сделать так, чтоб сцена у тебя без сильной потери качества жрала меньше ресурсов.
Но вообще, счас там столько этих специальностей, что я бы не придавал этому всему большого значения.
Ну и тут такая штука, если делать как ты показал, выходит, что надо разворачивать не в квадрат, а в прямоугольник. А значит, придется спрашивать у программеров, как там у нас движок воспринимает прямоугольные текстуры. Короче, не все так просто=)
Ну и имхо отдельно стоит отметить, что не только каждый ув лоскут должен быть на небольшом отдалении друг от друга, а ещё и от краёв текстуры.
Мы пойдем каконем по полю вдвоем
"КАКОНИ БЛЯДЬ РАБОТАЮТ" - Да чтобы тебя КАКОНИ в жопу ебли, текст читать - просто блядь, больно,
Иди нахуй с такими текстами или в школу \ дет сад откуда ты там вылез ?
То можно просто сделать объект, сделать развёртку и потом на развёртку налепить в Фотошопе через специальные плагины в нужных местах эти нормали.
в чем делать хайполи зависит от задач, в чем снимать карты дело вкуса, я снимаю в том в чем работаю в данный моммент, если нет то xnormal для снятия для рисования посмотри вот