Model layer

What can I do with the model layer?

With the model layer you can render 3D model files.


How do I add a model layer?

Choose LAYER > Add layer > Add model layer... to add a new model layer.

The new model layer can be selected from the layers dropdown to make it the active layer.

Examples

The installer comes with shows demonstrating the possibilities of the model layer. Choose FILE > Open show... and select a show from the BluffTitler/Media/Shows/Model folder.

To quickly switch between your own shows and the ones that came with the installer, click on the Personal and App buttons in the upper right corner of the file dialog.


3D model formats

BluffTitler supports 3D models in the .GLB, .OBJ and .X formats. Change the model of the active layer by choosing MEDIA > Change model...

.MTL files

.MTL files are used by .OBJ files to store the materials. Without an accompanying .MTL file, .OBJ files are fully white and untextured. Make sure to place the .MTL file next to the .OBJ file.

Animations

When the model contains an animation, it automatically starts playing after loading. Control the animation with the Animation and Animation speed properties.


An animation from another model can be imported by choosing MEDIA > Change animation.... Joints are matched by name, so this only works when the joints have the same name.

Mixamo automates the process of animating humanoid models. The generated .FBX file can be converted to .GLB with the standard Windows app 3D viewer.

Textures

The .GLB format stores the textures inside the .GLB file.

The .OBJ and .X formats store the textures as separate files. Make sure to place the textures next to the model file.


Colour maps

When the model features a colour map, it is offered in the 1st texture slot. Every submodel can have its own colour map.

Texture overriding

The model textures can be replaced in the MEDIA > Change texture... dialog. Click on the Select texture... button to load your own texture. Learn more

Click on the Clear button to clear your own texture and go back to the model texture.

Click the Clear button again to use no texture, even when the model offers one.

Normal maps

When the model features a normal map, it is offered in the 2nd texture slot and the AdvancedMaterials/ColourmapNormalmapCubemap effect is automatically selected.

Fine-tune the material with the FX Normal strength property.

Cube maps

The AdvancedMaterials/ColourmapNormalmapCubemap effect accepts a cube map in its 3rd texture slot. This is never filled automatically because none of the model formats support cube maps.

Place your own cube map in the 3rd texture slot. The installer comes with an example: Textures/CubeMap.dds

Fine-tune the material with the FX Reflection factor property.

Occlusion roughness metallic maps

When the model features an occlusion roughness metallic (ORM) map, it is offered in the 4th texture slot and the AdvancedMaterials/ColourmapNormalmapCubemap effect is automatically selected.

Fine-tune the material with the FX Ambient occlusion factor property.

Submodels

A model is built out of submodels.

Submodel property

When the Submodel property is set to 0, all submodels are rendered. When this property is set to 1, only submodel 1 is rendered. And when this property is set to -1, all submodels except 1 are rendered.

You can automatically create a separate layer for every submodel by pressing <Ctrl> U.

The container layer can be used to group the submodels together:

  • Choose LAYER > Add layer > Add container layer
  • Choose LAYER > Add layer > Add model layer...
  • Select the model layer
  • Press <Ctrl> U

This way you can give every submodel its own colour, texture and effect!

Double sided

To speed up rendering, BluffTitler renders all models single sided. To force double sided faces, set the FX Double sided property of the AdvancedMaterials/ColourmapNormalmapCubemap effect to 1.

Transparency

Use the FX Alpha test property of the AdvancedMaterials/ColourmapNormalmapCubemap effect to fine-tune the transparent textures.

Glow

When the model features glowing/emissive parts, BluffTitler automatically renders the glow.

Control the effect with the Glow property.

The effect can further be adjusted with the glow properties of the camera layer.


Joints

When the model contains joints, they are added as layer properties with the prefixes JX (joint rotation) and SX (joint size).

The JX and SX properties can be animated just like any other property. For example, you can rotate the head of an avatar with the JX Head property. And you can scale the head with the SX Head property.


Joints can quickly be selected by double clicking on the model with the <Ctrl> key pressed.

Press <F2> to render the coordinate system of the active joint.

Morph targets

When the model contains morph targets, they are added as layer properties with the prefix MX.

The MX properties can be animated just like any other property. For example, you can make an avatar smile with the MX mouthSmile property.


The Ready Player Me generated avatars contain a huge collection of morph targets.

Model joint

A container layer can be attached to a specific part of a model with the Model joint property of the container layer. The attached layers automatically follow the animation.

This way you can make a hand hold a phone... or an alien!


Here's a step by step guide how to attach a model to a joint of another model:

  • Press <F2> to render the coordinate system of the active layer/joint
  • Select a model layer
  • Double click on the desired joint of the model with the <Ctrl> key pressed
  • Choose LAYER > Add layer > Add container layer and answer Yes in the dialog
  • Select the attached container layer
  • Choose LAYER > Add layer > Add model layer and answer Yes in the dialog
  • Fine-tune the Position, Rotation and Size properties of the container layer

Animation blending

Models can contain multiple animations. The animation can be selected with the 1st slider of the Animation property. When this property is animated, BluffTitler is smart enough not to interpolate this animation index (for example jumping from 2 to 3 to 4), but instead blends the animation (making a smooth transition from 2 to 4).

Seamlessly looping

Walk cycle with displacement

To prevent the model jumps back to its start position after every loop, you can set the number of loops with the 3rd slider of the Animation property.

Set this slider to -1 to make the animation perform in place, which can be handy when attaching the model to a sketch layer.


Walk cycle in place

When the model performs the walk cycle in place, you have to move the model yourself with its Position property, carefully matching animation speed with walk speed.


Special behaviour

The model can be given special behaviour with the 3rd style.

When you only want to to give this special behaviour to a limited number of submodels, for example only rotating the wheels of a car, you can prepare the model in your modelling app:

When the name of a submodel contains the text [BluffTitlerWheel], it automatically rotates as a wheel when moving.

When the name of a submodel contains the text [BluffTitlerWalkingSquare], it automatically walks as a tilting square when moving.


Model layer style 1

3D in background

In this style, the 3D model is rendered in the background.


3D in 3D space

In this style, the 3D model can intersect other layers.


3D in foreground

In this style, 3D model is rendered in the foreground.


Model layer style 2

Vertical align top

The model is top aligned


Vertical align centre

The model is centre aligned


Vertical align bottom

This style is useful when placing models on the floor.


Not aligned

This style uses the positions as stored in the model file, without any scaling and translations. It can be useful when a bigger model must be built out of separate model files.


Model layer style 3

Normal

No special behaviour


Wheel

The model rolls when it is moved.


Walking square

The model walks as a tilting square when it is moved.


Model layer properties

Position

The position of the model.

1st slider: horizontal (x) position

2nd slider: vertical (y) position

3rd slider: depth (z) position

Press <F2> to render the coordinate system.


Rotation

The rotation of the model.

1st slider: heading

2nd slider: pitch

3rd slider: roll

Press <F2> to render the coordinate system.


Pivot point

The point around which the model rotates when animating the Rotation property.

When you press <F2>, the pivot point is visualised with cyan, yellow and purple arrows.


Size

The size of the model.

1st slider: width (x)

2nd slider: height (y)

3rd slider: depth (z)


Colour

The diffuse colour of the model.

1st slider: red

2nd slider: green

3rd slider: blue

When the mouse is inside the tool window and you press <F3>, the colour dialog is displayed. But when the mouse is outside the tool window, the colour of the current mouse position is picked.


Specular colour

The colour used for specular highlights.

1st slider: red

2nd slider: green

3rd slider: blue

When the mouse is inside the tool window and you press <F3>, the colour dialog is displayed. But when the mouse is outside the tool window, the colour of the current mouse position is picked.

When this property is (0, 0, 0), the diffuse colour is used as the specular colour.


Specularity

The size of the specular highlights.

Set the specular colour with the Specular colour property.


Glow

When the model defines glowing (emissive) parts, their brightness can be set with this property.

When the Glow checkbox is marked in the LAYER > Active layer properties... dialog, the whole model glows.

Use the Glow properties of the camera layer to control the global glow.


Transparency

The transparency of the model.

0 means fully opaque

1 means fully transparent (invisible)


Submodel

When the Submodel property is set to 0, all submodels are rendered. When this property is set to 1, only submodel 1 is rendered. And when this property is set to -1, all submodels except 1 are rendered.


Submodel explosion

The Submodel explosion property explodes the model into its submodels.

1st slider: the positions of the submodels.

2nd slider: the rotations of the submodels.

3rd slider: random seed.

For a typical animation, the 1st and 2nd sliders are animated and the 3rd is fixed.

Use the Special/FragmentExplosion effect to colour the fragments.


The 3rd slider has special meaning when using a negative value:
-1: Not X
-2: Not Y
-4: Not Z
-8: Positive X
-16: Positive Y
-32: Positive Z
-64: Negative X
-128: Negative Y
-256: Negative Z

Values can be added. For example:
-6: Only X
-5: Only Y
-3: Only Z
-24: Positive X and positive Y


Animation

1st slider: the active animation. Models can contain multiple animations. 0 turns all animation off.

2nd slider: the playmode
0: looping
1: ping pong

3rd slider: the number of loops after which the model returns to its start position. This is typically used for making a walk cycle loop seamlessly. When this value is -1, the model moves in place, which can be useful when you want to move the model yourself.


Animation speed

1st slider: the animation speed. 1 means normal speed.

2nd slider: the animation position. This is only used when the 1st slider is 0.
0: first frame
1: last frame


Depth bias

This property can be used to solve sorting problems.

Layers have to be sorted according to their distance to the camera. This sometimes goes wrong when using very big, very small or irregular shaped layers. When this happens, use the Depth bias property to fix it.



Demo models

The BluffTitler installer comes with a few models to play around with.

Bix

Bix is the alien mascot of Outerspace Software.

You can bring him to life by applying the Special/Bix effect. With this effect you can move his arms, legs and eyes.


EZ

Bix's sidekick is called EZ, pronounced as "easy".

You can bring EZ to life by applying the Special/EZ effect.


Avatar

The avatar model is a low-poly, low-res game character. By editing Avatar.png next to the model file, you can easily create your own characters.

You can bring your avatar to life by applying the Special/Avatar effect.


Stock sites and tools

There are many sites where you can download 3D models.

Sketchfab

sketchfab offers many animated models in the .GLB format.


Ready Player Me

Ready Player Me offers an excellent avatar creation system. Models can be downloaded in the .GLB format.


MakeHuman

MakeHuman is another tool that automates the process of creating avatars.


Mixamo

Mixamo automates the process of animating humanoids.


3D Viewer

The Windows 3D Viewer app comes with a huge collection of 3D models. Choose File > 3D library to open a model. Choose File > Save as to save as .GLB.


CGTrader

cgtrader offers many models in the .OBJ format.


Hum3d.com

hum3d.com offers many models in the .OBJ format.


3D CAD BROWSER

3D CAD BROWSER offers many models in the .OBJ format.