The most basic type of furniture item is also the simplest mesh product that can be made, all that’s needed is a mesh, the bit users see, and a skeleton comprising a single bone or node called Root. So long as the two elements, mesh and skeleton, are linked together properly a working product can be exported for IMVU.
Basic Furniture Skeleton
The most basic skeleton that can be used for furniture is a single node (an Empty), or an Armature with a single bone. In either case this master node/bone is called Root and sits at the top of the items hierarchy.
Root - Mesh - [+ nodes]
Root is normally positioned at grid-centre in Blender and relative to the furniture items intended use, so looked at in Local orientation mode this means the blue handle of the 3D widget, or Z axis, generally points up for floor mounted furniture, inwards for wall and down for ceiling items;
Z axis orientation - Floor = upwards - Wall = inwards - Ceiling = downwards
Basic Furniture Skeleton + Seats
For more complex furniture the basic single node skeleton can be augmented with seats or avatar spots, places the avatar can sit, stand or appear to do something – the simple cube above for example can become a balancing box if avatars are positioned to sit on or pose around it. This is what seating does, add interaction and interest to the item.
Root » Handle[n] » seat[n].Sitting » Catcher[n].Sitting » Pitcher[n].Sitting » Mesh (chair, horse, lamp-post, etc.)
In Blender seats are provided in the furniture starter file as a unit or set of nodes (along with a dummy helper) that can be moved as a group for easy positioning, for simple items this can be as straightforward as selecting the ‘seat’ node and using the widget handles to reposition the group, and once in place, parented to the furniture items Root node.
For even greater interactivity furniture can be animated, a feature that does not necessarily mean everything suddenly gets super complicated, a roundabout for example only needs two nodes, seating notwithstanding. Root and the node responsible for controlling the rotational animation of the mesh, which in this situation would be parented to the control node rather than Root. Avatar spots can also form part of an animation allowing for various poses or actions to be triggered. These too would either be parented to the animation control node or Root depending on what the avatar is shown to be doing.
Root » animated node » » seat01 etc. » » animated mesh (optional) » seat02 etc. » seat03 etc. » Mesh
The Parent « Child relationships between elements an animated furniture item differ depending on what each does, the roundabout for example has a specific node called ‘spinny’ acting as the control for all the animated parts or parts therein, that’s the roundabout mesh and accompanying seat nodes, all of which are parented to ‘spinny’ – when that moves all its children move with it.
spinny » roundabout (mesh) » seat01 etc. (nodes) » seat02 etc. (nodes)
This in turn is parented to Root as the master node for the entire item.
Root » spinny » » roundabout » » seat01 » » seat02
For seating not part of the roundabout, these would be parented to Root.
Root » spinny » » roundabout » » seat01 » » seat02 » seat03 » seat04
For simple non-animated furniture all that’s requires is for the mesh to be properly vertex grouped and then parented to Root along with any seating spots (as discussed in previous sections above).