від Емі
Іноді, коли ви import модель у 3DCoat, normal map у вікні візуалізації не відображається належним чином. Але це починається з того, як ви експортуєте свою модель у будь-яке інше програмне забезпечення.
Карта нормалей може трохи виправити проблеми із затіненням, пов’язані з тим, як карти нормалей зчитуються програмним забезпеченням, і це може зробити проблему трохи менш помітною, але проблема все ще існує. Ви повинні застосувати деякі правила, які допоможуть вирішити справжню проблему, щоб полегшити роботу та життя, створивши кращі карти нормалей.
Без застосування цього правила зазвичай більшість нормальних показників були середніми, а деякі були жорсткими, що було дивно бачити. Але це, очевидно, основна причина проблем, як експортуються групи згладжування для вашої моделі та як вони зчитуються в іншому програмному забезпеченні.
По-перше, коробки не можуть бути з м’якими краями або середніми, вони мають кути 90°, і що б ви не робили, у них завжди буде ця проблема з освітленням, якщо вони не встановлені на жорсткі краї. У минулому, до того, як з’явилися більш просунуті програми випікання, як-от Marmoset, які полегшували це, ви завжди повинні були робити клітку, і це була та клітка, яка мала середні нормалі вершин, тому клітку використовували для виконання середнього ‘ пошук» високого полі, не викликаючи помилок у випіканні, оскільки коробка нагадувала б жорсткі краї. Звичайно, тепер Marmoset має прапорець «гладка клітка», який робить те саме, і тепер вам не потрібна клітка, якщо вона вам дійсно не потрібна.
Отже, тут є два «правила», і вони також пов’язані між собою:
1. Коли ви робите моделі з кутами 90°, вони завжди повинні бути жорсткими. Звичайно, ви також можете зробити невеликий фасок і уникнути країв під кутом 90°. це не тільки точно повторюватиме форму моделі з високою роздільною здатністю, але також ви можете використовувати м’які краї на коробці, щоб вона виглядала привабливіше та з меншими проблемами, а також округлялася та красивіша тощо.
2. Жорсткі краї (які майже мають бути кутами 90°) завжди мають бути розділені на UV , щоб уникнути проблем, ви можете не помітити це на своїй моделі, але вони є, і це пов’язано з тим, як пікселі стикаються під кутом 90° і як пікселі можуть змішуватися, і вони просто відрізняються, тому не вистачає місця, як це було б із заповненням, щоб вирішити невеликі проблеми, які можуть виникнути. Так, це залежить від роздільної здатності та UVs , і все це може зробити його більш помітним, ніж інші, але так, у такому випадку, коли ви робите коробки, вам доведеться розділити всі ці 90° краї, і так, це означає, що 6 сторін коробки = 6 островів, щоб уникнути проблем.
Говорячи про 3DCoat і про те, як він працює з пресетами тощо. Наскільки я розумію про це, використовуючи попередні налаштування, такі як Blender або Unity, ви фактично використовуєте попередньо визначений файл не лише з тим, як він оброблятиме карту нормалей, чи буде він зеленим перевернутим чи ні. Але також дотичний простір, тріангуляція та те, як вона експортує нормалі та деякі інші параметри. Якщо ви скористаєтеся опцією «Невідомий», ви зможете використовувати ті параметри, які ви встановили.
Якщо ви перейдете до C:Program Files 3DCoat-VXXXToolsPresetsExtTools, ви побачите файли XML і те, чим Unity відрізняється від Blender, тому що стиль Blender використовує MikkTSpace, тоді як unity встановлено на LengyelAreaAngleWeightedSpace. Це єдина різниця. але, мабуть, достатньо, щоб ви це побачили, оскільки вони тлумачаться по-різному. Технічно вони не мають впливати ні на що, а лише на спосіб читання normal map , якщо це «DirectX» або «OpenGL», але корінь проблеми із затіненням полягає не в normal map, а в моделі, і вона буде завжди бути моделлю.
Залишаючи осторонь правила UVs , проблеми, які це спричиняє, є мінімальними, якщо ви це знаєте, тоді це ваш вибір: заощадити трохи простору для UV та ігнорувати краї та проблему, яка може виникнути у разі їх правильного виконання, оскільки вам доведеться підійти занадто близько щоб помітити проблеми. іноді між краями утворюється велика щілина, таке траплялося зі мною.
Якщо ви не можете мати коробки як усереднені нормалі вершин або м’які, вони повинні виглядати як коробки з жорсткими краями, оскільки це кутові ребра 90°. Якщо ви хочете використовувати м’які краї, вам потрібно створити фаску.
Краї боксерів повинні бути на 100% твердими, циліндри мають бути жорсткими зверху та знизу, а бічні сторони – м’якими.
Для низькополігональних моделей я пропоную робити скоси, лише крихітний скіс матиме велике значення в багатьох випадках, особливо сьогодні, коли немає виправдання мати коробку без скосу взагалі для чогось подібного.
Попередні налаштування 3DCoat — це лише невеликі варіації, які ви навіть можете вибрати вручну за допомогою невідомого, вам не потрібні попередні налаштування, вони лише допомагають 3DCoat інтерпретувати normal map і модель, але я ніколи не довіряю попереднім налаштуванням, тому що, як ви кажете, попередні налаштування Unity повинні бути встановлено на MikkTSpace. Але я хочу сказати, що мова йде не лише про normal map OpenGL проти DirectX.
Отже, коли я використовую 3DCoat , який зазвичай призначений для малювання, все працює добре, але це тому, що я переконався, що все на моєму низькому полі також добре, я маю на увазі, щоб створити хороші карти нормалей і змусити їх працювати скрізь, де вам потрібен хороший низький полі полі, який може вловити будь-які високополігональні деталі, які ви зробили. Немає ніякої магії, це просто працює, тому що я перевіряю все, як групи згладжування, UVs і все таке.
Я маю на увазі те, що для моделі з кутом 90° краї повинні бути автоматично встановлені жорсткі краї, іншого шляху немає, і все. не має значення, чи має Куб 6 сторін, як у цьому випадку, чи 1000 підрозділів Ширина, Висота та Глибина. Якщо ви не встановите кут 90° коробки як жорсткий край, він завжди матиме дивне затінення на тих краях, які становлять 90°, але встановлено на м’які або щось інше.
Якщо ви застосовуєте одну групу згладжування до цілого набору об’єктів… це неправильно, тому що ви не можете зробити м’які краї для Boxes, особливо якщо ці об’єкти є лише кубами з 6 гранями.
Ви не можете «згладити» щось подібне, особливо якщо у вас є проста коробка з 6 багатокутників, якщо ви хочете використовувати коробку, встановіть для всіх сторін жорсткі краї. Або інший спосіб обійти — додати фаску навколо країв, щоб порушити різкий кут 90°, а потім встановити його на м’який. Baking normal map , щоб приховати проблему, не є рішенням, вона може виглядати трохи краще, але помилка затінення все ще існує на моделі. Навіть циліндри повинні мати м’які краї з боків, а на верхній і нижній сторонах вони повинні бути жорсткими, якщо ви не додасте фаску.
Тож постає запитання: чи все одно ви хочете зберегти все як єдину групу згладжування? якщо ви не попрацюєте над цим належним чином і не налаштуєте речі, які мають бути жорсткими, жорсткими, м’якими, м’якими, або додасте скоси на кожні 90°, тоді нічого не вирішить вашу проблему, і вам доведеться просто приховати проблему за допомогою normal map і вдавати, що проблеми немає існує.
Сподіваюся, я гідно пояснив, у чому тут проблема, щоб це могло допомогти вам у майбутніх normal map .
Успіхів і гарного дня!