Список разделов » 3D WIP (Work In Progress)

Монстр как способ познакомиться

» Сообщения (страница 7, вернуться на первую страницу)

Что-то псдшник не открывается ни в сs6 ни в сс/

Дата сообщения: 26.07.2014 01:23 [#] [@]

Rebecca, скачал, проверил - у меня открылось. Не знаю, с чем может быть связано. Ну, видимо, не судьба Crying or Very sad

Дата сообщения: 26.07.2014 02:39 [#] [@]

Rebecca писал(а):



Что-то псдшник не открывается ни в сs6 ни в сс/





Тоже не открывался. По какой-то причине файл скачивается не до конца. Надо пробовать скачивать до тех пор, пока файл не будет весить 258 МБ. С 3 раза удалось скачать Smile

Дата сообщения: 26.07.2014 06:15 [#] [@]

https://dl.dropboxusercontent.com/u/61343721/free_stuff/bezz...



А так? старый добрый Дропбокс не должен подвести Embarassed

Дата сообщения: 26.07.2014 13:21 [#] [@]

НУ вот, Felix17, я дописал наконец то, что хотел написать про нормалки и хард эджи.



По крайней мере настолько, что больше писать уже не могу, залолбало))





Ну кароч, я эту штуку пишу, в первую очередь, для себя. Я где-то что-то прочитал, с чем-то столкнулся, что-то просмотрел. Я хочу суммировать и допонять. Да, такой вот я эгоист. Поэтому прошу прощения, если кроме непосредственного ответа на вопрос, придется прочитать кучу того, что и так знаете. А вот если ответа на вопрос не нашлось — то смерть мне через посыл гнева в комменты и в личку! Буду исправляться!





Так, ну, по-первых, кто знает английский, пусть лучше посмотрят вот эти вещи:



3d Motive - Baking Normal Maps-Tips and Tricks



http://www.handplane3d.com/videos.html



Там все объясняется доступнее и понятнее, чем я счас тут распишу.





Издалека и нудно (ну хоть без формул)





Что такое карты нормалей?



Карты нормалей, как вы наверное знаете, это, если грубо, способ заставить объект выглядеть детальнее, не усложняя геометрию. Как это работает — в текстуру записываются данные о нормалях поверхности высокодетализированного объекта и применяются на менее детализированном.





Это все понятно, это вам википедия и без меня могла сказать. И про то, что есть Tangent space и object space тоже. Но вот чего википедия не говорила мне, в свое время, так это то, ПОЧЕМУ, МАТЬ ТВОЮ, обжектспейс нормалка при запечении получается иногда прям вся такая чистенькая и красивенькая, а тангент спейс вся в дурацких разводах, из-за которых тенюшки неприятные на лополи.









А все почему? А все потому, что обжект спейс нормалка полностью игнорит нормали лоуполи и подменяет их на хайпольные, в то время, как тангент спейс нормали запекаются относительно нормалей лоуполи. То есть, если нормали хайполи и лоуполи полностью совпадают, мы получим чистую голубую текстуру, в остальных случаях — собственно разницу нормалей в виде оттенков, которые и показывают, на сколько по каждой из осей координат нормаль хайполи отклоняется от нормали лоуполи.





Но что я все на словах? Вот вам эксперимент: возьмем два куба — один с мягкими ребрами, другой с жесткими, все по классике, и попробуем запечь на каждый из них хайполи сферу и хайполи куб с чамфером.









Получим результат:









1. Обычный хороший результат. Большая часть текстуры ровно голубая и только там, где у хайполи скругленные края добавляется цвет.



2. и 3. Градиенты показывают, что чем дальше от центра плоскостей, тем сильнее расходятся нормали лоуполи и хайполи.



4. Тадааам! Чисто ровный цвет. И это не баг, это то, о чем я говорил выше — технически, нормали лоуполи и хайполи не отличаются друг от друга, и никаких отклонений нет.



То есть куб с мягкими ребрами, это куб, который считает себя сферой.









Ну и что? Какя разница-то? Ну компенсирует же? Ну градиенты. Но в итоге же все будет ровненько и вообще ок? Не, не ок.



Ну, редко мож и ок, но в основном нет.





А все опять же потому, что по какой-то мне неизвестной причине, нет единого алгоритма, записи и считывания тангент спейс карт утвержденного в трех чтениях и высеченного в граните в назидание потомкам. Хз почему. Гуглите. Потом мне расскажете.





А вот обжект спейс наоборот, ввиду своей прямолинейности считывается и записывается везде одинаково, сука такая. Ну да хрен с ней, она нас не интересует пока.





Вот и получается, что макс печет нормалки так, майя сяк а хнормал еще как-то, при том, что и движки их считывают тоже каждый по-своему. Отсюда и пресловутая галка «flip green channel” где-то, и другие отличия.









Кароч, если у вас совпадает алгоритм записи и считывания, вам сказочно повезло — цените. Можно печь как угодно и все должно выглядеть красивенько.



Но бывает так крайне редко. Поэтому основная задача снятия нормалок, - сделать это так, чтобы даже при самой неудачной из комбинаций модель выглядела хорошо.





Капитанство, я знаю, но теперь у вас есть понимание того, почему так. Для меня это было важным открытием, вот и пишу все это.





Методы борьбы:





В идеале









  • Подобрать такую пару движок/редактор, которая идеально понимает друг друга и способна пожить долгую и счастливую совместную жизнь.





  • Если точно известен только один из двух этих компонетнов, написать/скорректировать второй под него. (есть слух, Naughty dog написали такой плугин для хнормала и радовались (инфа отсюда).







Приземленно









  • Использовать Handplane. Это бесплатная тулза,которая из лоуполи и обжектспейс нормалки создает тангентспейс нормалку под выбранный двиг из списка. Список там не оч большой, но самое популярное есть. Мож можно и дописать, я хз.



    Честно, я ей в практических целях не пользовался. Только эксперементировал. Подсмотрел вот тут..





  • Делать хайполи с расчетом на запекание, то есть не подгонять лоуполи под хайполи, а наоборот: сразу делать так,чтобы получилаcь хорошая нормалка.











Первую модель так же можно исправить, если подобавлять жестких ребер/смуфгрупп, но тогда и количество швов на развертке сильно вырастет, что затрудняет текстурирование. Но можно. Дело вкуса, как обычно.





Про чамфер и смуфгруппы





Технически, между чамфером и жестким ребром разницы нету — количество вертексов по факту одно и то же. Правда, в случае с чамфером, 3дмакс вам скажет, что кол-во вершин изменилось, а в случае групп сглаживания, нет.





На всякий случай, поясню. Каждый вертекс содержит в себе только один набор информации (о нормали, UV, цвете вершины и проч). При создании жесткого ребра, шва развертки или назначении нового Material ID, появляется дополнительная инфа, которую надо куда-то записать. А вертексы в 3д графике так устроены, что не принимают в себя больше одного набора инфы за раз. И что остается делать? Создать еще один вертекс, в который и поместить всю новую информацию. Вот.





Самые любопытные пользователи зд макса могут заюзать вот этот скрипт , который показывает честное количество вертексов. Сохраняем как UberVertCount.mcr, закидываем в макс, customize ->customize user interface... во вкладке toolbars находим скрипт и вытаскиваем на панель. Пользуемся. Там есть справка, что к чему.









Обратно к делу. Лично я предпочитаю чамфер, потому что в таком случае не надо разделять куски на развертке и текстурить проще. К тому же швы имеют свойство вылезать в самый неприятный момент, когда вы уже почти закончили текстринг. С другой стороны, если шов так и так делать, чамфер уже и ни к чему. Ну, разве что у вас очень толстый бюджет на полигоны. Как у ребят, делающих Star citizen, например.









Можете сами посмотреть тут. Внизу страницы.





Еще я заметил, что на практике на фактическое количество вертексов никто внимания не обращает. То есть если у вас бюджет на полигоны, скажем, 1000 треугольников, то если вы замоделите впритык, а потом наделаете смуфгрупп, вряд ли кто-то скажет



«О, чувак, тебе кажется, что ты уложился в лимит, но смуфгруппы добавили еще 20%, так что надо оптимизировать». Не, не помню такого. Глянут на статистику, и примут модель.



Хотя я не такой и большой опыт имею. Поправьте меня, кто встречался с более серьезным отношением к вопросу.





Вообще, имейте ввиду — вся это тема, когда можно рисовать и лепить по модели не парясь о швах, эт конечно хорошо, но швы все равно лучше прятать в самые незаметные места, хотя бы из-за возможных проблем с чтением нормалки, указанных выше.





Ну, вот как то так. Вам хоть что-то пригодилось? Дайте знать, мне важно))


Прикрепленное изображение (вес файла 204.5 Кб)
gradients.jpg

Прикрепленное изображение (вес файла 249.8 Кб)
normals_setup_02.jpg

Прикрепленное изображение (вес файла 186.1 Кб)
normals__result_02_rres.jpg

Прикрепленное изображение (вес файла 26.3 Кб)
5de73284-2331-4d7f-84fb-12fe3c489a7c.jpg

Прикрепленное изображение (вес файла 310.7 Кб)
02_normals_compare.jpg

Прикрепленное изображение (вес файла 28.8 Кб)
4072315735_c300,200,50,50,100.jpg

Прикрепленное изображение (вес файла 328.9 Кб)
good_vs_exact.jpg

Прикрепленное изображение (вес файла 319.3 Кб)
uberVertCount.jpg

Прикрепленное изображение (вес файла 308.6 Кб)
The Origin M50 Racer.jpg
Дата сообщения: 16.08.2014 13:36 [#] [@]

"куб, который считает себя сферой" это круто) не знал что плоская нормалка получится)



Полезная статья, подчерпнул для себя пару моментов Wink

Дата сообщения: 05.11.2014 13:13 [#] [@]

San oOo



Ого! Embarassed



Спасиб, польщен))

Дата сообщения: 05.11.2014 14:31 [#] [@]

Bezz, спасибо за столь развернутый и информативный ответ, подчерпнул для себя пару моментов. Smile





Про 20% из за смуз групп это на самом деле ерунда, ибо лимиты даются с расчетом на то что движок может поднять вдвое больше. Smile

Дата сообщения: 09.11.2014 00:19 [#] [@]

Страницы: 1234567

Количество просмотров у этой темы: 33868.

← Предыдущая тема: Вертолёт Воздушных сил Украины

Случайные работы 3D

Alien
смотритель
космическая крепость Берсерк
Сигвей
Heavy Cruiser
Нагибатель

Случайные работы 2D

Landscape Ix
Alien 01
страж долины ветров
Всадница
Заперты
The Invaders
Наверх