-
Notifications
You must be signed in to change notification settings - Fork 27
Adding Minis
This documentation has not yet been written. Stay tuned!.
- A 3D modelling program (Blender 2.79b will be used in this wiki, but any other program that exports .obj files works)
- Image editing program (Photoshop)
- Source Models
Blender Armature file ...
- with 27mm base: (To upload)
- 50mm base: (To upload)
- 70mm base: (To upload)
- 100mm base: (To upload)
- TX-225 Tank base: (To upload)
- AAT Battle Tank base: (To upload)
Base texture:
You can refer to a video tutorial here: https://www.youtube.com/watch?v=ufuwtyAChjA&feature=youtu.be
Note: This wiki will not be a tutorial on how to use blender, a knowledge of how to use a 3D modelling program is required.
- An .obj file with a single .jpg texture file. (NOTE: TTS imposes a 20k polygon limit on .obj files.)
- Optionally, instead a .3dunity asset bundle exported from a Unity project that complies with TTS's Unity requirements.
- The base mesh should be used as the collider.
- The base should be a separate mesh from the rest of the model. All other meshes should be parented to the base. (This ensures that the tint function within TTS works as expected.)
- The origin of the model must be at the bottom center of the base.
- The "front" of the model should be oriented along the -Z axis.
Most of the models in the models are 3D models found from various sources. First you would need a 3D model of the mini you want to import. In this example, we'll be using General Grievous, but the steps would be the same for any other model.
You'll need a 3D model of Grievous and it's UV texture file.
Open up Blender, open up the Armature file with the mini base. A hoth trooper is included in for height reference. Import Grievous in as well.
Scale Grievous to the correct size. Grievous is 2.16m, so assuming that the Hoth trooper is 1.7m, we can scale it about 1.3 times larger than the Hoth trooper to get its correct scale.
Next get rid of the hoth trooper, and then you can begin rigging the model to the armature. This wiki will not go through the process of rigging, but you can find a rigging tutorial here
Once Grievous is rigged (I added extra bones for Grievous' extra arms), you can start to pose Grievous. Make sure you pose the model similar to FFG's offical minis, as its size and pose will affect gameplay. For Grievous, I also found a lightsaber 3D model and added it.
Once you've finished posing the model. The next step is to fatten the model. This is because the proportions of the FFG minis are fatter so that it looks better on the tabletop. The mod strives to follow this same aesthetic. This can be done in blender by simply using the Shrink/Fatten tool in edit mode. Usually, I would fatten everything except for the Mini's head and hands, but then scale up the mini's heads and hands separately. This is so that the features of the head doesn't get distorted.
Next you have to create the UV Texture image. TTS uses only a single image file, so you have to consolidate all its textures into a single file. I used photoshop to put Grievous', the base and the lightsaber textures into one image. The mod tries to be as lightweight as possible in terms of file size, so try and make this texture file smaller than 500kb. For trooper minis, i try to keep it at 200kb, but for larger models you can afford to have larger files.
Next is to UV map all the textures of the mini to this single new UV Texture file. When a player changes a mini's tint in TTS, it is only the base that changes. So the base texture is white so that it can change tint accurately. Make sure the base's side faces are mapped to the grey in the base texture file.
Last step is to organize all the objects in the scene viewer so everything is a child object of the base model. This is because if there are multiple object groups in the exported .obj file, TTS will only change the tint of the first obj group when a player clicks to change its tint. By putting everything else as a child object of the base model, this ensures that the base model is the first object in the .obj file.
This doesn't work in Blender 2.8, but you can get around this by making sure that the base model is the first object imported in. You can also just select all the models except for the base, duplicate it, and delete the original copies. This instantly makes the base model the "oldest" model created.
Lastly, export the model to the .obj format, making sure that the triangulate faces option is checked. Then check the size of the .obj file and make sure it's under 500kb if possible. TTS has problems with models above 2mb sometimes. If it's too big, you can apply the decimate modifier to reduce the number of faces.
SWLegion.Dev • A Community Run Organization • Our Philosophy • Wiki