A Static Asset is an art asset that does not animate, meaning that it does not need to deform. It is composed of either a single mesh, or a single group of meshes.

Modelling, Texturing, Exporting, and Importing a Simple Cube

Creating assets

Once your artists have created a model in 3ds Max or Maya, that art will then need to be exported into a mesh file that HeroEngine can use. This section will review in detail the creation of a static asset (that being a game world asset that does not animate).

For quick reference on the different export modes, including static assets, see the Hero Export Guide.

Static Assets

Build the geometry

Model an object in 3ds Max or Maya. Remember to name it and to make sure the geometry is clean.

transforms and scale should be reset

Polygons are single sided

Pivot point should be placed where you want it relative to the object

Object should be one mesh or one group of meshes

Use a HeroMaterial

Urwir Material 3ds Max

Urwir Material Maya

Next apply a HeroMaterial to your geometry. If you need more than one HeroMaterial, you can assign a Multi/Sub-Object material with as many sub-HeroMaterials as you want or you can assign individual HeroMaterials directly to the appropriate polygons. The sample image displays a fairly common HeroMaterial setup for us. It uses a diffuse texture(.dds) and Normal map(.dds) texture with a spec channel on it.

Use a HeroMaterial or Multi/Sub-Object material made up of multiple HeroMaterials

Textures must be dds files, and the texture path is relative to the model path. So if your model is in .../MyComputer/MyArt/MyModels/ and your texture is in .../MyComputer/MyArt/MyTextures/, your model now knows where to find its texture. When you upload it to the server via the repository browser it will then look to find its texture in the same relative path. So you would need to upload your model to .../MyRepository/MyArt/MyModels/ and you would need to upload your textures to .../MyRepository/MyArt/MyTextures. This is why we have the concept of the Art_Depot. But if you get confused, just put all your models and textures in the same folder on your local machine, then have them all in the same folder on the server, until you get your feet wet.

There are two special exceptions to "put your stuff anywhere". The select terrain texture dialog looks in \World\LiveContent\TerrainMaps\ and its sub-directories for terrain textures. Make sure to add your terrain textures there, or they will not be found by the select texture dialog. And Dynamic characters must have the Character\Dynamic_2 folder as their root. It is required that character files go inside the Character/Dynamic_2 folder, but you may create subfolders in anyway you like.

LODs

urwir asset in 3ds Max

urwir asset in Maya

If you are going to add LODs then follow the next step, otherwise you can can skip ahead.

LOD objects must be named LOD_01-LOD_05. Use only what you need, simply start at 01.

These should have the same material applied to them

To add an LOD to your static asset, create your low res geometry and place it in the exact same spot as your hi res geometry. Name your hi res LOD_01 and then each lower res piece of geometry LOD_02, LOD_03, LOD_04, LOD_05. You do not need all 5, use only what you feel you need, just don't skip any numbers, start at 01 and work from there. The engine automatically reads these labels from the asset as LOD's

You can also name the object and add the "_LOD_01" as a suffix. For example: myObject_LOD_01, myObject_LOD_02, myObject_LOD_03, myObject_LOD_04, and myObject_LOD_05

Occluder Geometry

Once again, if you do not intend to use any occluders for your asset, you can skip ahead.
Please reference the page on Occlusion_assets for more detailed information.

There are two ways of making Occluders. The first is mainly for exterior pieces. Since an Occluder can't occlude something within it's own volume, you need to make a few simple planes to occlude from each direction. These should have no material assigned to them and should be grouped after all the appropriate ones are made. Once they are grouped, name the group _occluder_only and move the groups pivot to the same spot as the main geometry. You can also name use the occluder_only tag as a suffix just like the LOD's, for example: "myObject_occluder_only"

Geometry group with occluder_only group in the same place

A view of just the occluder_only group

An exploded view of the occluder_only group showing the individual planes

The second method is to use the existing geometry of your asset as an occluder. This works well for interiors since the player is inside them looking outward. In this case, right click on your model or group and go to properties. Then click on the User Defined tab. This is the same place that you add snap settings. If you have snap setting add the following line after those: