How to Import Assets

From Thrive Developer Wiki
Revision as of 17:21, 31 August 2024 by Hhyyrylainen (talk | contribs) (remove link to asset import page)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to navigation Jump to search

Updated for Thrive 0.7.0

All importing of assets to Thrive can be done via the Godot editor. These are the file types currently used in Thrive (though other file types compatible with Blender Textures are generally .png files. Models are generally .glb files (which is necessary for animated models) or directly imported from Blender as .blend files. Icons can be either .png or .svg files.

Additionally if you are making a modified version of an asset you'll want to get the raw version of the asset. You can clone the whole of Thrive from GitHub, which gives you all the assets as they are used in the game. Note that you need Git and Git LFS to clone it properly. Some assets that don't need to be converted are stored in the main repo, but also use Git LFS. The raw versions are also stored here.

These instructions are for modellers. For programmers there are no Godot technical guide by us yet, so look up Godot 4 tutorials.

Requirements for Models

There is an outdated page that has some general instructions for how to make models that are suitable for importing: blender-and-ogre-tutorial

Here's a short list:

  • In most cases, the model should be placed at 0,0,0.
  • It's generally best to center the mesh on its origin. In Blender, activate the Snap pie menu (default Shift-S) and select 'Cursor to Origin', go into Edit mode, select all vertices, activate Snap pie menu (Shift-S) again and select 'Selection to Cursor (Keep Offset)'.
  • It's best to apply all transforms (translation, scale and rotation) on the model before importing into Godot.
  • The model can be translated, rotated or scaled in Godot if needed, though in some cases this can add complications.
  • Armatures should have named animation tracks.
  • Vertex counts for models should be reasonable compared to how much screen space the model takes up.