Автор: MastaMan
Дата: Июнь 16, 2023
Обновлено: Июнь 21, 2023

Рекомендации работы с Playcanvas

За долгое время работы в Playcanvas и работы в команде, мы собрали лучшие практики, которые применяем в каждом нашем проекте.

Наименование объектов

Правильные имена это путь от хаоса к порядку.
Рекомендуем соблюдать следующие правила в названиях:

Asset Type

Prefix

Example

Static Mesh

SM_

SM_Floor

Dynamic Mesh

DM_

DM_Fish

Materials

M_

M_Roof_Rust

Textures

T_

T_Brick_D

Sounds

S_

S_Swirl

Fonts

Font_

Font_Raleway

Для всех текстур необходимо добавлять постфикс в имени.

Например: 
T_Texture_Name_N
T_Texture_Name_AO

Texture Type

Postfix

Example

Ambient Occlusion

_AO

T_Wall_AO

Diffuse

_D

T_Concrete_D

Metalness

_M

T_Door_Handle_M

Glossiness

_G

T_Paint_G

Roughness

_R

T_Toy_R

Emissive

_E

T_Pendant_Spot_E

Normal

_N

T_Barelief_N

Light Map

_LM

T_House_LM

Важно! 
В названиях не использовать пробелы. Заменяйте пробелы на нижнее подчеркивание “_”.

Наименование материалов

Рассмотрим пример для SM_Car_03, у которого присутствуют 3 ID.

В 3Ds Max мы можем называть материалы как угодно, но для Playcanvas правильный нейминг является обязательным условием.

Например:
M_Car_03_0
M_Car_03_1
M_Car_03_2

Идентификатор в конце название показывает порядок Id в Multimaterial в 3Ds Max.

Экспорт объектов

Для экспорта объектов из 3Ds Max необходимо использовать только FBX формат.

Настройки экспорта приведены ниже.

export from 3dsmax fbx to playcanvas settings
Loading...

Импорт в Playcanvas

Импорт моделей осуществляется обычным перетаскиванием файлов FBX на панель Assets.

После импорта будут автоматически созданы *.glb файлы, которые мы будем в дальнейшем использовать в нашей работе.

Важно! 
Удаление всех FBX файлов из Assets необходимо производить только в самом конце проекта!

Структура папок

📁 Mesh - папка для объектов. Необходимо создать отдельную папку для каждого FBX файла.

Например:
SM_Floor_01 (папка)
SM_Walls (папка)
SM_Kitchen_Appliciance_01 (папка)
SM_Sofa_01 (папка)

Такие папки могут содержать собственные уникальные текстуры и материалы, которые относятся к конкретному FBX.

📁  Textures - папка с различными текстурами.

📁 Cubemap - папка для  картинок и материалов cubemap.

📁 Scripts - папка для скриптов.

Оптимизация текстур

Все текстуры должны строго соответствовать размерам и быть кратными 2.

Например:
4096x4096
2048x2048
1024x1024
512x512
256x256

Не забывайте применять компрессию когда сохраняете картинки в Photoshop.

Используйте File → Save for Web и устанавливайте качество на 90%.

Рекомендую также использоваться JPEG Optimize утилиту, которая позволяет сжимать картинки в несколько раз без потери качества.

Скачать JPEG Optimize и подробная инструкция доступна подписчикам Patreon.

Patreon

Также можно пользоваться встроенными возможностями Playcanvas и использовать BASIS компрессию в инспекторе ассетов.

Прозрачность

Для того чтобы прозрачность отображалась правильно на всех устройствах вы должны использовать черно-белую карту.

black white map opacity for playcanvas
Loading...

Cubemap

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

Для конвертации обычной 360° панорамы в cubemap воспользуйтесь сервисом:

https://matheowis.github.io/HDRI-to-CubeMap/
PlayCanvas Developer Resources
PlayCanvas Tutorials
3D Ground Playcanvas Articles

Редактирование статьи

Автор оставляет за собой право редактировать и дополнять статью по мере необходимости. 
Чтобы не пропустить обновления, подписывайтесь на Patreon!

Patreon


{{commentsMsg}}
  

Никто не оставил комментариев
{{comment.lastname}} {{comment.name}} {{comment.date}}
{{comment.text}}
Sponsored content