Unity - Керівництво Керівництво з найкращих практик роботи з графічними ассетами

Unity підтримує текстуровані 3D моделі, створені у різних програмах. Це короткий посібник було створено ігровими художниками та розробниками в Unity, щоб допомогти вам у створенні ассетів, які будуть працювати краще та ефективніше у вашому Unity проекті.

Масштаб та одиниці виміру

  • Встановіть одиниці вимірювання системи та проекту у вашому програмному забезпеченні для узгодженого використання з Unity, наприклад, метричні.
  • Робота у правильному масштабі може бути важлива як освітлення, так симуляції фізики.
  • Врахуйте, що, наприклад, Max одиниці за замовчуванням - дюйми, а в Maya - сантиметри.
  • У Unity масштаб імпортованих FBX та файлів 3d додатків - різний; перевірте налаштування масштабу імпортованого FBX в інспекторі.
  • Якщо ви сумніваєтеся, експортуйте метричний куб (куб з довжиною ребра в 1 метр) з сценою для порівняння з вбудованим у Unity метричним кубом.
  • У різних додатках частота кадрів анімації може бути різна, краще встановити постійну частоту протягом всього циклу розробки, наприклад, 30 fps.
  • Файли та об'єкти

    • Давайте об'єктам у вашій сцені осмислені та унікальні імена. Це може допомогти знайти та налагодити певні міші у вашому проекті.
    • Не використовуйте спеціальні символи *()?"#$ і т.д.
    • Для об'єктів та файлів використовуйте прості, але змістовні імена.
    • Зберігайте найпростішу ієрархію наскільки можна.
    • Під час роботи над великими проетками у вашому додатку для 3D моделювання постарайтеся розміщувати файл проекту поза папкою проекту Unity. Найчастіше це може заощадити час, потрібний для оновлення та імпортування непотрібнихданих.
    unity
    Зрозумілі імена допомагають вам швидко знаходити потрібні речі
    • Моделюйте з ефективною топологією. Використовуйте полігони лише там, де вони потрібні.
    • Оптимізуйте вашу геометрію, якщо вона містить дуже багато полігонів. Багато моделей персонажів повинні бути грамотно оптимізовані або навіть перезібрані художником, особливо якщо вони отримані/зібрані з:
    • Даних 3D захоплення
    • Poser
    • Zbrush
    • Інших високощільних Nurbs/Patch моделей, призначених для рендеру
  • По можливості, рівномірно розподіляйте полігони в будинках, ландшафті та архітектурі, це допоможе у поширенні освітлення та дозволить уникнути негарних зламів.
  • Уникайте дуже довгих тонких трикутників.
  • найкращих
    Сходи у високопродуктивний рай

    Метод, який ви використовуєте для збирання об'єктів, може значно впливати на кількість полігонів, особливо, якщо не проводити оптимізацію. На зображенні вище показаний той самий shape меш, з 156 трикутниками праворуч і 726 зліва. 726 може звучати не так серйозно, коли йдеться про полігони, але якщо такий міш використаний на рівні 40 разів, ви почнете помічати різницю. Хороше правило для застосування на практиці - починати з простого, а потім додавати деталі в міру необхідності. Завжди простіше додати полігон, ніж видалити.

    • Працюйте з вихідним файлом високої роздільної здатності поза проектом Unity (напр., PSD або файл Gimp). Ви завжди можете відмасштабувати розмір вихідної графіки у менший бік, але не навпаки.
    • Використовуйте роздільну здатність тексту (збережіть копію, наприклад оптимізований 256x256 PNG або TGA файл). Ви можете судити з того, де відображатиметься текстура і де її буде видно.
    • Зберігайтефайли текстур в одному місці у вашому Unity проекті (наприклад: \Assets\textures).
    • Переконайтеся, що ваш робочий файл із 3D контентом посилається на ці текстури для збереження цілісності при збереженні/експорті.
    • Використовуйте вільне місце у текстурі, але врахуйте, що різні матеріали можуть працювати з різними частинами однієї і тієї ж текстури. Це може призвести до багаторазового використання/завантаження цієї текстури.
    • Розділяйте текстури для альфи (cutout) та елементів, які можуть бути оброблені різними шейдерами. Наприклад, одиночна текстура, показана нижче (ліворуч), була замінена трьома меншими за розміром текстурами (праворуч).
    unity
    Одна текстура (ліворуч) vs три текстури (праворуч)
    • Використовуйте тайлінг текстури (ті, які можуть повторюватися безшовно), тоді ви зможете використовувати більш високу роздільну здатність на ділянках, що повторюються.
    • Видаляйте з вашого зображення елементи, що повторюються, які легко помітити і будьте обережні з контрастністю. Якщо ви бажаєте додати деталі, використовуйте декалі та об'єкти для розрядження повторень.
    найкращих
    Тайлінг текстур ftw
    • Unity дбає про стиснення для цільової платформи, так що, якщо ваш вихідний файл вже не є JPG правильного дозволу, краще використовувати lossless формат для ваших текстур.
    • При створенні текстури з фотографії зменшуйте її за допомогою окремих модульних секцій, які можуть повторюватися. Наприклад, вам не потрібні 12 однакових вікон, які використовують текстурний простір. Таким чином, ви можете мати більше деталей на піксель для цього вікна.
    найкращих
    Чи потрібні всі ці вікна?

    • Організуйте та називайте матеріали у вашій сцені. Таким чином, вам буде набагато простіше редагувати ваші матеріали в Unity після імпорту.
    • Ви можетевибрати створення матеріалів в Unity з:
    • ім'я матеріалу> або: or
    • - переконайтеся, що ви знаєте, який варіант вибрати.
  • Не всі налаштування матеріалів з пакета моделювання будуть імпортовані в Unity:
  • Diffuse колір, Diffuse текстура та імена зазвичай підтримуються
  • Shader model, specular, normal, інші вторинні текстури та налаштування субстанцій не будуть упізнані/імпортовані (має з'явитися в Unity 3.5)
  • Імпорт експорт

    Unity може використовувати два типи файлів: збережені файли програм для 3D моделювання та експортовані 3D формати. Вибір на користь одного з них може бути досить важливим:

    Збережені файли програм для моделювання

    Unity може імпортувати шляхом конвертації: файли Max, Maya, Blender, Cinema4D, Modo, Lightwave & cheetah3D, напр., .MAX, .MB, .MA і т.д. див. Імпорт об'єктів для отримання додаткової інформації.

    Переваги :

    • Швидкий ітеративний процес (зберігаєте зміни та Unity їх "підхоплює")
    • Спочатку просто

    Недоліки :

    • Ліцензійна копія програми (чий формат використовується) має бути встановлена ​​на всіх машинах, на яких використовується проект Unity
    • Файли можуть бути невиправдано великими через непотрібні дані
    • Великі файли можуть уповільнити "живе" оновлення Unity
    • Менше перевірок та складніше налагоджувати проблеми

    Експортовані 3D формати

    Переваги :

    • Експортуються лише необхідні файли
    • Ви можете перевірити ваші дані (повторно імпортувавши в пакет 3D моделювання) до того, як використовувати в Unity
    • Зазвичай ви отримаєте файли меншого розміру
    • Дозволяєвикористовувати модульний підхід

    Недоліки :

    • Прототипування, ітерації та весь робочий процес може бути повільнішим
    • Простіше заплутатися у версіях вихідника (робочого файлу) та ігрових даних (експортованого FBX)