assets/README.md

70 lines
3.8 KiB
Markdown

# assets
Asset/art files for Hook, Line and Axe
## Naming Conventions
Naming conventions are important for project organization and tooling.
For automation, **it is heavily preferred that all folders and file names are kept lowercase with no spaces**.
- **Characters** - Please store all character models, textures, rigs, etc in its relevant subfolder within the `characters` directory.
- **Props** - Please store all within the `props` folder, within its relevant subfolder.
- When uploading models, please use either FBX or OBJ formats.
- **Animation** - Character *animations* should instead be stored in the `animations` directory, within its relevant subfolder.
- Depending on who is animating, please start your filename with `anims-alan` (or `anims-tommy` or `anims-shelby`, etc) for batch-export automation purposes. Iterative saves are okay.
### Material Maps
[IronPress](https://github.com/arocull/IronPress) requires naming conventions for texture maps to be properly used. IronPress enforces proper bit-depth, channel-packing, and enables batch-resizing of textures.
All materials and material maps should start with the prefix `mat_` and followed by the material name, such as `mat_stone`. **Lowercase is required**.
Texture maps should be followed with specific names. Examples are provided
- `mat_example_basecolor` - Basecolor/diffuse/albedo of material. If the material is transparent, alpha is stored on this as well
- `mat_example_arm` - ARM is Ambient Occlusion, Roughness, Metallic all packed into one material. If the maps are separate, name them like this:
- `mat_example_ao` - Ambient Occlusion map
- `mat_example_roughness` - Roughness map
- `mat_example_metallic` - Metallic map, optional
- `mat_example_normal` - Normal Map, export as 16-bit if possible
- `mat_example_opacity` - Opacity map, only use if necessary
- `mat_example_mask` - Mask, only use if necessary
Please store all textures under one folder in the relevant directory, named `textures` (in all lowercase).
Additional notes:
- If multiple materials use the same textures maps, please only store one copy of said texture map.
- Export normal maps to 16-bit if possible for maximum quality
- IronPress can be avoided with a customized Substance export setup
## Resources and Guidelines
### Animation Guides
We are using [**Blender 3.6 LTS**](https://www.blender.org/download/lts/3-6/). As rigging changes in 4.0, please use the correct Blender version to ensure compatibility.
Guides for animation:
- [Setting Up a New Animation](docs/animation.md/#setting-up-a-new-animation)
- [Finalizing an Animation](docs/animation.md/#finalizing-an-animation)
- [Editing Existing Animations](docs/animation.md/#editing-existing-animations)
### Asset Guidelines
Guidelines for asset making:
- [Topology](docs/assets.md#topologydetail-density)
- [Texturing](docs/assets.md#texturing)
- [Scale](docs/assets.md#scale)
### Level Design Guidelines
Guidelines for level design:
- [Minimum Requirements](docs/level_design.md)
- [Spatial Requirements](docs/level_design.md#making-space)
- [Use of Space](docs/level_design.md#use-of-space)
- [Introducing Mechanics and Enemies](docs/level_design.md#introducing-mechanics-and-enemies)
- [Difficulty Ramping](docs/level_design.md#difficulty-ramping)
- [Innovation](docs/level_design.md#final-notes)
### Automation
If you need results from an automated process, see the `pipeline` directory. Each shell script should export the corresponding textures to a folder within the `export` directory.
For animations, please include the `pipeline/export_anims.py` script in your Blender file. This allows one-click exporting of FBX animations (may be fully automated with a script later).
See [automation docs](docs/automation.md)
## Questions
If there are any questions or feedback on these guidelines and conventions, please poke Alan with a sharp, pointy stick.