Список разделов » 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

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

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

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

Robinson Raven Ii
Aircraft
Ford Mustang
Coordinator Cruiser
Дикий кот из ТОГО мира
Комната-Студия

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

Девочка
Переход
Portret Knight 2
Pic 22
Паук
Молотоголовый
Наверх