Art Asset Guidelines
What is an Asset?
In a production pipeline, (both animated films and video games), art assets are finished pieces that are ready to be used in a scene. Creating an asset is more than making a model and submitting a .blend file. A completed asset involves all of the surrounding work to enable the next person in the pipeline to effectively drag-and-drop the asset into the scene, and have everything just work.
What's expected?
For a 3D game, a finished asset includes:
Art Source Content:
- A .blend source file for the high-res model checked into the `art-source` repository:
- file in the right place with the correct 'snake_case' naming convention.
- A collection inside the file named correctly for the asset.
- A .blend source file for the low-res model checked into the `art-source` repository:
- file in the right place with the correct 'snake_case' naming convention.
- A collection inside the file named correctly for the asset.
- A "collection exporter" set up for the asset saved with the correct export settings, with the export path pointed at the correct location in the `game` repository.
- UV unwrapped correctly.
- Materials assigned correctly.
- Topology prepared for game:
- No n-gons
- Reasonable polycount
- other validation. - TODO add more about validation.
- A set of input 'mesh maps' saved as .png files in the same folder:
- asset_name_mesh_id.png - ID map
- asset_name_mesh_world_normal.png - High-res world space normal (16 bit depth).
- asset_name_mesh_tangent_normal.png - High-res tangent space normal (16 bit depth).
- asset_name_mesh_ao.png - High-res ambient occlusion
- asset_name_mesh_curvature.png - High-res curvature
- A textures set of baked output textures channel packed and saved as .png files in the same folder:
- asset_name_abedo.png - (Color map aka "Base Color")
- asset_name_normal.png - (16 bit)
- asset_name_orm.png (Channel packed Occlusion, Roughness, Metallic).
In-Game Content:
- A pair of asset_name.gltf + asset_name.bin files exported into the `game` repository via the "export collection" in the source .blend file.
- One or more materials for the model:
- asset_name_mat.tres
- OR e.g:
- asset_name_head_mat.tres
- asset_name_body_mat.tres
- asset_name_armor_mat.tres
- All textures from the model's texture set imported with the correct settings:
- asset_name_abedo.png
- asset_name_normal.png
- asset_name_orm.png
- A scene for the asset:
- asset_name.tscn
- Simple colliders assigned:
- SphereShape3D
- BoxShape3D
- CapsuleShape3D
- CylinderShape3D - NOTE: this is reportedly buggy, we need to test it before approval, use Capsule instead.
- If absolutely necessary:
- ConvexPolygonShape3D
- ConcavePolygonShape3D
- LODs created or generated for the model.
I'd drop this, and at the end of this paragraph have something like:
A finished asset generally has 3 components: the game-ready content, the low poly .blend and supporting files, and (usually) a high poly .blend file.
Building from the prev comment, I'd split this into a high res and low res, adding to each (and the game content) brief reason on "why", ex
* "Sculpting is great to work through ideas and create details but the result is too dense for a game engine. This mesh might also be used to create various texture maps."
* High poly: "A low poly version is made so it's more performant, and if it will be rigged, much easier to weight."
* Low poly: "While godot can import blend files directly, it easily to accidentally add things you don't want exported so having an explicit export step keeps cruft out of the game file".
* Game Content: "The actual game content files typically have some additional engine-specific settings to make sure they show up correctly."
I'd put albedo, normal, orm first since they're generally more important, and put this as possible additional texture maps, I wouldn't expect a number of things, esp env stuff, to have all of these.
No comments to display
No comments to display