Education Center - IMVU Creator
1 of 2
< Return to IMVU
create
manage
information
Welcome, LadyNatulcien
Welcome, LadyNatulcien since: 2007-07-02 Last on: 2008-11-06
5,650 credits 0 promo credits 15 dev tokens
search tutorials
The Basics
What is a derivation? How do you earn credits? If you don't know the answer to these questions then you need to learn the Basics.
Education Center
Creating Getting Started
The tutorials in this section will begin to answer many of the questions new Creators have as they get started.
The Basics Stickers Textures
To learn more, go to The Basics Introduction
Furniture Rooms Avatar Body Parts Accessories Avatar Actions Previewer
Learning Merchandising Promotional Bundles
Showing results: 1-10 out of 20 tutorials
1 2 >
Other Tools
Intro to Animation by: IMVU inc.
Working with the Camera by: IMVU inc.
Animation Introduction Let's face it, nothing adds life to a product better than if it moves or triggers movement in the avatars that interact
Working with the Camera When you are creating a Room for IMVU, you will need to include a 3D Camera before exporting. The
Animating in 3DS MAX by: IMVU inc.
Animation Looping by: IMVU inc.
Animating in 3D MAX IMVU uses a program called 3D Studio MAX to build all of its 3D assets. MAX is a great tool not only for building
Animation Looping An animation that begins and ends on the same frame is called a 'loop'. Looped animations are used EVERYWHERE in
Bone Parenting by: IMVU inc.
Exporting Morph - .xpf by: IMVU inc.
Bone Parenting If you want boneA in a skeleton to move when boneB is animated, then you want boneA to be 'parented' to boneB. Its Easy
Exporting Morph Animations - .XPF A morph animation is defined as an animation that is driven by morph targets (mesh shape changes)
Morph Targets by: IMVU inc.
Locking Pos Ori by: IMVU inc.
Morph Targets What is a Morph Target, anyway? The Free Dictionary tells us that "Morph Target Animation (or per-vertex
Locking Position and Orientation Sometimes, an animation calls for a bit more control than what you normally find in the base MAX files
Basics of Good Design by: IMVU inc.
Weighting in Physique by: IMVU inc.
Basics of Good Design Here are some basic rules to creating a quality 3D product for use in IMVU. Some of these may not be as obvious as
Weighting in Physique A mesh does not know how to move with a skeleton unless the vertices of that mesh are 'weighted' to a bone in 1 2 >
Here are some basic rules to creating a quality 3D product for use in IMVU. Some of these may not be as obvious as others, but all are worth keeping in mind as you design your unique products for the IMVU Catalog. In the end we hope these tips will not only make your products look and run better, but help them sell more successfully as well. Be Frugal with Your Polys One of the realities of building 3D products for use in a virtual world is that the more polygons visible to the camera, the more work your computer needs to do to render that world for your customers. If you create a new hairstyle that is made up of 20,000 polygons, it may look realistic, but it is bound to slow down any party just as soon as you appear in their Public Room. The trick is to find ways to do more with less, which is a challenge facing many game designers today. When you are building your 3D Mesh, the poly count can add up very quickly if you are not forever vigilant. Two places that are especially susceptible to lots of polys are curved surfaces, like those found in cylinders and spheres. 3D applications offer lots of primitive shapes, and these are sometimes built with many more polygons than you actually need. Your secret weapon for making your low poly models look smooth are Smoothing Groups. As you can see in this example, having a complex mesh isn't always necessary if you have Smoothing Groups applied correctly. The telltale sign that you have a low poly mesh can be seen along the edge of the circular top of the cylinder, but we have to chalk that up to a necessary evil of working in 3D for online virtual worlds... at least for now.
Create Quality Textures Creating textures for your 3D products can be the most time consuming of all the steps in the building of your 3D product. Since so much depends on the quality of your textures, it is good to spend a little extra time to get it right. There are several pitfalls to avoid while texturing your products, so here are some hints to help you make sure that your products look their very best.
Avoid Using Photographic Textures Trust me, I know how tempting it is to do a Google search for some cool texture and slap it onto my 3D Mesh, but I have learned over time that the quick solution is seldom the best. Finding a photograph of a material you wish to add to your model can come with artifacts that will make your product look amateurish. Photos tend to have higher contrast and shadows that can contradict the illusion you are trying to achieve. In this example you can see that the stones appear to be casting shadows in several different directions. The stones also suggest depth that is not apparent at the edges of the cube, making it look like nothing more than a block with a photo pasted on it, and not an object made of stones.
Minimize Contrast This doesn't mean that I don't use photographs periodically. If I do find something I like, I will usually do a lot of work on it to reduce or illuminate harsh shadows, and strong contrasts. Creating convincing 3D models depends on a balance between suggested dimensionality and the actual 3D details already built into your model. Dramatic differences in the value of surface textures can draw attention to repeats in a tiled texture, especially when used on large areas like floors and walls. All of the above textures originally started as photographs, but were adjusted extensively in Photoshop to make them work better on my 3D models.
Tiling Textures Creating tiled textures is an art form unto itself, and a poorly tiled texture can really draw attention to itself. This is another danger of using unedited photographs for your textures. In the above examples you can see how obvious the tiling appears in the unedited photograph reference (top), compared to the texture created completely in Photoshop (below). This noticeable tiling effect is especially obvious when used to represent things like water and terrain. No matter how careful you are there is always the danger that with enough distance you will start to see a pattern appear, like a floral print pattern on fabric, so be careful as you work to avoid too many contrasting elements on each texture tile, or they will become all the more obvious when your texture is repeated.
Keep Textures Small If you want more detail in your textures you just make them really big... right? Actually, that is not necessarily true. Although applying large textures to your models will add some more detail, like adding a ton of polygons it can greatly slow down how your product is rendered in the IMVU Client window. To remedy this IMVU force compresses large files as part of the product Submissions process. This means that although your product might look great in the Previewer, you have no control over the quality of the compression of your oversize textures once you Submit it. We recommend you avoid making textures any larger than 512 x 512 pixels, and think selectively about how you are going to use your textures. It would be silly to use a 512 x 512 texture on a bracelet, but it might be perfectly appropriate if it is going to represent a giant door in your castle room. Also, keep in mind the distance the 3D camera will be from your textured object. If you are creating a chandelier to hang from the ceiling, the camera will always be far away enough that a very highly detailed texture will not be necessary.
There is no reason this metal floor texture needs to be this big. By reducing it even twice, I retail a lot of the detail, and speed up the rendering of my model in the IMVU Client window.
Get More Out of Fewer Textures The fewer textures you use will also greatly speed up how your product is rendered in IMVU. When possible try to create textures that have multiple uses. In the above example I have used elements from the same texture all over these models. By ganging up reuseable bits within one texture you can get away with more complexity without slowing down the process to render it.
This technique is most often used in the creation of textures for both avatars and pets, but there is no reason you couldn't apply it to your Furniture and Room models as well.
Advertising Your Wares
Taking Good Screenshots The Catalog is filled with product shots taken inside the empty Previewer default room. If you really wish to sell your 3D creations, try to find a good environment to photograph them in. Look at the way catalogs for real world products present their wares and see if you can us some of these same techniques in the virtual world. Remember that you aren't just selling an object or outfit, you are selling the Story that goes along with it. Where would this look best? What does this item say about the purchaser?
Model Your Outfits Your Avatar outfits and accessories will always look better when placed in a dynamic setting that compliments your designs in both color and mood. Finding complementary Poses and exciting backdrops, either 2D graphics or 3D environments, will greatly enhance your products. Searching through real world fashion magazines can also inspire you with their use of color and environment to set off the products they are selling.
Avoid Jagged Edges Depending on your video card settings or IMVU rendering options, you may be seeing Aliased (or jagged) edges on your screenshots of avatars and objects in IMVU. To create smooth edges, and greatly enhance the appearance of your screenshots, be sure that your 3D card is set to AntiAlias, and your IMVU settings to Accelerated Graphics, for OpenGL or Direct3D. Jagged Aliased edges are an artifact of older computer games and can make your work look dated. Whenever possible take advantage of what your computer can do to make your products look their best.
These are just a few of the many ways you can enhance the quality of your product designs and how you promote them. Each of these topics could warrant their own tutorials, and many already have. We encourage you to search through the Tutorials section of the Content Creator site and look for more helpful tips for how to improve your IMVU product offerings.
Like anything worth doing, building and selling virtual products for IMVU can be challenging. There are several levels of difficulty that you may encounter, each depending on the product you wish to create, and the software and experience you currently have.
Stickers Creating a Sticker for IMVU is probably the simplest category and a good place to start. Stickers are 2D graphic images that can be created using 2D image manipulation software like Adobe Photoshop, or Adobe Photoshop Elements. You will need to understand how to create and save a file in .JPG format, or if you intend for your Sticker to contain transparencies or a “cut-out” edge, then the .PNG format. For more information on Sticker Creation, check out the Introduction to Stickers tutorial
Texture Swapping The next opportunity for original product creation is through Deriving and swapping the textures on a pre-existing 3D Mesh. To do this you will also need to have an application like Photoshop to create 2D textures that will be reapplied to an existing mesh. Second to Sticker creation, Texture Swapping is the most popular method of creating an IMVU product and the perfect introduction to working in 3D. You will learn from experience how your flat, 2D textures “wrap” around the 3D models and be able to jump in and out of the Previewer to adjust and fine tune your creation. You will also find it helpful to learn how Layers work in Photoshop so that you can build master .PSD versions of your textures, allowing you infinite control for future adjustments. For more information on Texture Swapping, check out the Introduction to Textures tutorial
3D Furniture & Rooms The next level of complexity comes as you jump into the world of 3D Mesh building. Currently IMVU only “officially” supports the use of 3D Studio Max 7 for the building and exporting of 3D meshes to the IMVU Previewer. We are currently working to broaden our list of supported applications, and some Developers have had luck with Blender to create their 3D models. 3D Mesh building can have a steep learning curve, but you are rewarded with each level of complexity you master. You will need to be able to build a 3D Mesh, Texture, Link, Skin, and Export your model and have an basic knowledge of how 3D application work with external files. You will also need to become familiar with IMVU's very specific “production path” which insists that certain naming conventions are followed for your product to work in the IMVU Previewer and Client. For more information on building 3D Meshes, check out the Introductions to Furniture and Room tutorials
Avatar & Avatar Accessories The most complex aspect of the IMVU Developer process involves the creation of 3D elements that are either added to or replace the IMVU Avatar. To be successful you will need an Intermediate to Advanced knowledge of your 3D application, including all of the above mentioned 2D skills. You will need to understand animating in 3D, Character Rigging, Physique Skinning, and Morph Animation. Working with the Avatar gives you control over the very foundation of the IMVU product, so there are a lot of reason to wish to learn these more advanced skills. We advise you enter this type of product creation with caution, but we also want you to know we are thrill to see your new interpretations of what an IMVU Avatar can be. For more information on building unique Avatars & Avatar Accessories, check out Introduction to Avatar Actions, Introduction to Avatar Accessories, and Introduction to the Avatar Head. For more information on the specifics of creating products for IMVU, be sure to search through our wealth of Creator Tutorials.
We get a lot of messages from developers who wish to branch out beyond 2D texture swapping and move into creating their own 3D models. Most of this correspondence centers around the frustration felt when first opening a 3D application and facing the daunting learning curve that is necessary to make the jump from 2D to 3D. Although it would be impossible to give you a full lesson in 3D modeling, I can attempt to demystify some of the basic principles involved and maybe dispel some of that initial fear. * For those of you "meshers" out there that are already experienced 3D model builders, you will find this stuff pretty basic, but we would love your input if you see any areas I should elaborate on, or have missed entirely. It is also worth noting that we are using 3D Studio Max to illustrate these initial principles of 3D design, you will find other application unique, but not completely dissimilar.
An Introduction to 3D Modeling - Don't Panic! Okay, before we start I would like to get out into the open a dirty little secret about 3D modeling. It is my opinion that although 3D applications, like 3D Max and Maya are powerful tools, they have made no real attempt to make their applications intuitive or easy to use. These are complex tools that have been built on simpler, earlier incarnations and their evolution has added depth to appeal to a wide range of power users, from the gaming to the entertainment industries. These applications can do amazing things and even veteran users of these programs find themselves discovering new depths and shortcuts to getting their work done. If you have experience using Photoshop you know what it is like to have used the program for years and be introduced to a new trick that would have probably saved you weeks of your life if you had just known it years ago. Although I know that the designers of these programs are doing their best to create these deep applications, I have to wonder if they actually use them on a daily basis. As an example, to import a Bitmap image into 3D Max to use as a texture to apply to a mesh, I have to click a button that has no label or icon on it. The only conclusion I can come to is that whoever decided to design a button with no label on it (to do something as important as importing a texture) must secretly hate me. Still, in their defense, all good things take work to understand, and one of the realities of modeling in 3D is that you have to learn the obscure language used by the software engineers responsible for creating these applications.
Viewports - The windows into the 3D world The Basics: Most 3D software gives you the default option of viewing your models from various viewpoints at the same time. In the case of 3D Studio Max, this means you will see the front, top, left, and perspective views of your modeling environment as soon as you open the application. In Max, these are called "Viewports".
Axis In the 2D world of programs like Photoshop, we are dealing with the two dimensions of Up and Down (Z), and Side-to-Side (X)... but in 3D we have a third dimension to work with, the "Y" axis, Back-to-Front. This is frequently represented by a graphic like the one depicted here, indicating each of these directions, depending on the view you are currently working within.
"The Gizmo" To make the act of manipulating your mesh in this 3D space easier, both Max and Maya give you a device to help you grab your object and move it along any of these three axis'. In Max this is called a "Gizmo" (please don't ask my why that call it that). This consists of three oversized "Handles" that always point along the three axis' x, y & z.
"The Create Tab" All new projects begin somewhere, and in the case of 3D applications like 3DS Max you start at the Create Tab. A sub Tab under the Create Tab is the Geometry Tab, which allows you to access primitive shapes that will become the foundation of your new model. These are the initial building blocks that you can distort, extrude, bend, and manipulate into whatever object you desire. Here you will be able to create a Box, Sphere, Cylinder, Cone, Tube, and Plane. You can also create a variety of more complex shapes like a Torus, GeoSphere, Pyramid, and the Max signature... Teapot. As you create your initial shape, you will be able to adjust the Parameters of the shape. In the example below, the Box has been set to include multiple segments at its Length, Width, and Height. This adds complexity to your basic shape, but it also gives you more Verts to work with as you continue.
The Parameters window is especially useful when determining the number of sides to a Cylinder, the amount of facets on a Sphere, and the number of sections in something like a vertical post. Be sure to play with these settings to see what you can come up with.
Vertex Versus Polygon While there are many elements to the creation of a 3D mesh, for your work in IMVU you will work mostly with both vertices and polygons. You can think of your mesh like a wire cage. At each point where one "wire" interacts with another wire is a dot/handle that can be manipulated, this is called a Vertex. The surface we customarily think of as the skin of our mesh is called a Polygon. Technically, when we are working with a mesh, the vertex points dictate the location, relationship, and properties of that surface, so when you move a vertex point, you move one edge of a poly. Polygons are three sided and when limited in number they can make your model look faceted. Typically, the fewer polys in your model the more angular your model will appear, so, more ploys mean a smoother surface. This is why hardware developers are constantly pushing the power of their technology to render as many polygons as possible. More polys = More Realistic.
Although the area depicted here is a square, each square is invisibly divided in half, to create a 3-sided surface Modifiers Modifiers are tools you can use to help you manipulate the verts and polys in your model. Like the Filters in Photoshop, Modifiers are applied to your model, and are too numerous and varied to fully list here, but it is highly recommended that you play and experiment. You never know when you might get just the effect you are looking for by simply manipulating your mesh with an applied modifier. Modifiers include such tools as Taper, Squeeze, Lathe, Mesh Smooth, and many, many more, including Material Mapping tools, which we will talk about later.
Smoothing Groups One handy tool that many 3D applications include is the ability to add a "Smoothing Group" to an object. This is usually applied to a model's surface and gives the illusion that the surface is smoother then it actually is. This is handy when building low poly objects, since it can give the effect that there is more surface detail then there actually is. In the case of IMVU, there can only be one smoothing group number applied to any one model. Smoothing applied to a faceted surface can be very effective, but because it does not actually smooth the geometry itself, your model will still retain a faceted edge.
Materials - Putting Textures on the Surface of Your Mesh Once you have created your mesh, you are ready to apply textures to its surface. 3D Max calls these textures "Materials", which suggests not merely textures, but a texture and all its additionally applied attributes. One way to think of applying materials to a model is to imagine you are applying wallpaper, or contact paper, to the surface of your mesh. Materials are Bitmap or JPG images that are created in a 2D program then imported into your 3D application. Depending on the depth of detail in that 2D image, you can make up for a lot of limits in your mesh with a more complex, or higher resolution material applied to it. Materials can also contain additional information, such as alpha, bump or even reflective and illumination maps that give your texture even more detail and surface characteristics. At the moment IMVU only supports alpha maps, which we will discuss further in an upcoming section.
SIDE NOTE: Remember that button I told you about earlier... the one without a label? The one that you use to import bitmaps? Well, there it is. Did I mention how much I hate that button?
Mapping Your Mesh The act of applying a material to a model is called Mapping. There are a variety of ways to Map a material to your model's surface, and a wide array of additional tools to help you manipulate it once it is there. There are some mapping tools you will use more often then others. The short list includes:
Planar Projects the map from a single plane flat against the object, somewhat like projecting a slide. Planar projection is useful when only one side of an object needs to be mapped. It is also useful for obliquely mapping multiple sides, and for mapping two sides of a symmetrical object.
Cylindrical Projects the map from a cylinder, wrapping it around an object. Seams where the edges of the bitmap meet are visible unless a seamless map is used. Cylindrical projection is useful for objects that are roughly cylindrical in shape.
Spherical Surrounds the object by projecting the map from a sphere. You see a seam and mapping singularities at the top and bottom of the sphere where the bitmap edges meet at the sphere's poles. Spherical mapping is useful for objects that are roughly spherical in shape.
Box Projects the map from the six sides of a box. Each side projects as a planar map, and the effect on the surface depends on the surface normal. Each face is mapped from the closest box surface whose normal most closely parallels its own normal. * Mapping images and descriptions supplied by 3D Max User Reference Datebase.
UVW Map & Unwrap UVW Modifiers For your work creating materials for your IMVU products in 3D Max, you will most likely be using two modifiers to help you apply textures to your meshes. These include UVW Map, and Unwrap UVW.
UVW Map is the tool that allows you to decided which method you would like to use to apply materials to your mesh (see above list).
Unwrap UVW allows you to fine tune how your material is applied to any one, or group of polys within your mesh.
Multi-Sub Materials Just when your brain was experiencing the dull ache of comprehension, we have one more abstract concept to throw at you, and that is Multi-Sub Materials. IMVU insists that if you are planning on applying multiple textures to a single Mesh, that you only apply them as a Multi-Sub Material. Simply put, a Multi-Sub Material is a single material that is made up of a collection of textures and their attributes. Each mesh you create can have many textures, but only one SubMaterial attributed to it.
To create a Sub-Material in Max, select a material preview sphere in the Materials Editor window, then click the Standard button to change the material type. In the pop-up window choose Sub-Material. You should see your materials window transform into something like this: Now you can start adding textures to your SubMaterials list by clicking on the Add button. Each new material will appear in your list, and will be given a unique Material ID Number. This ID number will be used later, under the UV Map Modifier, to help you apply that specific SubMaterial to your mesh. NOTE: Currently, IMVU requires a very specific naming and numbering convention for the materials you apply to your models, so I encourage you to read over the Mapping Materials Tutorial before jumping into texture application for your meshes.
Alpha Maps Another technique you have in your IMVU bag of tricks is the use of Alpha Maps, or Opacity Maps. These are additional black & white bitmaps that you apply to a texture to create a "cutout" effect. Opacity maps can also be used to create translucent materials. An Alpha or Opacity Map works like a frame, solid White becomes opaque, Black is transparent, and shades of Gray are various levels of translucency.
< Example of a texture and its accompanying opacity map.
Skinning and Weighting Your Mesh Although first-time meshers won't necessarily run into the concept of "Skinning" or Weighting your models, it is one of the necessary steps to getting your completed mesh into the IMVU Previewer, and eventually into the catalog. Thinking of your Mesh as an Avatar In the creation of IMVU, its designers chose to apply the metaphors used in the building of avatars to the building of just about everything else. So the surface of your mesh, whether it is an avatar asset, a room, or an article of clothing, is referred to as a "Skin" and many of the nodes as "Bones". The process of skinning a mesh is done once your model is completed, textured and ready to be exported to the Previewer. Any additional changes you make to your mesh will necessitate it to be reSkinned and re-Exported for everything to work properly.
The exact steps for Skinning your mesh are covered in the Weighting a Mesh Tutorial, but in a nutshell, Skins are applied to a mesh as a Modifier, with several quick steps that will apply weighting information to that mesh, making it ready to be exported. For static models weighting is a necessary step but does not greatly influence your models. Once you get into creating animated avatars (pretty advanced stuff) you will lean more heavily on how your meshes are weighted. Either way, it is all good stuff to know as you become more familiar with your 3D tool set.
Now Get Out There And Start Building Cool Stuff! This may all seem like a head spinning jumble of things to figure out, and you would be right. With anything worth knowing you have to expect a little bit of a learning curve, but there is no reason you can't start today with something small and work your way up to more complex models later. Anyone who has taken the leap to 3D would tell you that it really takes a year of use before you feel comfortable with using 3D tools, but the effort is worth it. It has been our hope at IMVU that the tools we use to create our virtual products are the standard tools the computer game and film industry use every day. The knowledge you learn here will be applicable to any 3D project you might attempt in the future, in any situation. So, take the leap, and whether you are learning in 3D Max, Maya, or some other 3D application, you can feel more confident that you can build anything you can imagine, and share your creation with the world!
Although a staple of many video games, IMVU is just now working to bring a Particle System to its 3D environments. A Particle System is used to create visual special effects like smoke, fire, sparks, bubbles, and countless other magic for your 3D world. Particles are points that interact with each other based on certain parameters, like gravity, velocity, and length of life over time. To these points you apply a texture to represent a spark, drop of water, flake of snow, or puff of smoke. The best way to imagine a Particle System is to think of a fountain spraying water, now apply to each water droplet its own texture (.png), and regulate the flow of each droplet to create a variety of effects. The IMVU Particle System is in ALPHA, so please use at your own risk. Although we are only planning to refine and add to the existing system, we can't guarantee future changes won't alter some of your effects settings. With that in mind we do hope you will play inside the Particles TAB within the Previewer and see what you come up with. Below are quick descriptions of some of the settings and menus you will encounter within the Particles TAB. These various parameters can be a little daunting at first glance, so we suggest you have a look at some of our initial particle effects products and play with these to become better acquainted with what the Particle System is capable of. To explore a few pre-set Particles products, click on one of the below images to go to their product page. From there you can click the Derive button and have a look at their settings, and see what happens when you alter them:
Bubbles
Sparkles
The Previewer- Particles TAB
Smoke
Fire
Fountain
Gravity The direction and intensity of the gravity that the particles are subjected to. This is a 3vector.ex "0,0,0" means no gravity at all. Texture A texture image. All particles use this texture. We recommend .PNG files (which allows for transparency) and keep files to 32x32 pixels for best results. We understand that this is small, but particles can really slow down the frame rate of a computer, especially if your effect includes a high particle generation Rate per second. Rules Each particle effect consists of a set of rules that describe how the particles ought to behave. For now, there are 10 different types of rules. (except that 3 of them don't do anything yet)
Source The source rule brings new particles into existence every frame. Rate (per second) - The rate at which particles are created, in particles per second. Position - Particles' initial positions will be a randomly chosen point from the specified domain*. (domains are described below) The three position numbers represent the location within the 3D environment. 0,0,0 is at the very center of the Root node of your product, and variations in that number move this position point up, down or to the sides, front, and back in relation to the Root. Customarily the 0,0,1 is at he middle of the avatar, and 0,0,2 is near the head:
Periodically you will be asked to place a Normal number in an available field. A Normal is a 1-unit vector which forms a right angle with the surface you're describing. Conveniently, you don't actually have to enter a true normal into this field--any vector will do. If I describe a plane as the point 0,0,2 with a normal of 0,0,1, that plane is parallel with the "ground" and goes approximately through the avatar's head. It points upwards. Velocity - Particles' initial velocities will be a randomly chosen vector from the domain *.
Sink Particles that come into contact with a Sink are destroyed. The domain* describes the shape of the sink.
KillOld Destroys particles whose age is above some number of seconds. The AgeLimit determines the distance the particle travels before disappearing. If you wish to fill a room with particles then leave the number high, but if you want them close to the origin point, reduce the AgeLimit to a lower number.
RandomAccel Add a random velocity vector from the domain given into each particle's velocity every frame. This makes the particles appear to wander around a bit instead of moving in parabolic arcs.
RandomDisplace Add a random displacement vector from the domain into each particle's position every frame. This makes particles appear to twitch.
SpeedLimit Describes minimum and maximum speeds for all particles.
TargetVelocity Every frame, adjust the velocity of all particles in the system to be closer to the velocity given. "Scale" is the percentage of the target velocity that is applied each second.
TargetColor, TargetSize, and TargetRotVelocity do not do anything yet, as our renderer does not yet support colored, scaled, or rotating particles
* Domains A domain is a geometric shape. Many rules use a domain to select a random position or velocity vector for a particle. For instance, a Source may be given a "Point" domain to say that all particles are spawned at exactly one position, but a spherical domain for their initial velocity, which means that new particles can have a velocity in any direction, with any velocity up to the radius of the sphere.
The supported domains are: Point A single geometric point.
Sphere Takes a position that is the centre of the sphere, plus an inner and outer radius. If the inner radius is nonzero, then the sphere is hollow.
Box Takes two positions: these two positions are opposing corners of the box. Cone Takes two positions: the "top" is the pointy end of the cone, and the "bottom" is the blunt end. The Inner and Outer radius are the radii of the blunt end. (a nonzero inner radius produces a hollow cone) Cylinder Takes two positions which are endpoints of the cylinder. Inner and outer radius work in the same way as they do for cones and spheres. Line Takes two positions: the endpoints of the line. Disc Takes a centre point of the disc, a normal vector which points away from the disc, and two radii scalars. Plane An infinitely large, flat plane. Takes one position which is any point on the plane, and a normal vector. Rectangle A rhomboid plane. Takes a centre point, and two vectors that determine the centre points of the sides. I will draw a diagram, this one is really hard to describe. Triangle A simple triangle. Takes three positions that are the corners of the triangle.
All 3D products in IMVU are built on the principle of a Skeleton. Whether it is an Avatar, Room, or Furniture product, each is constructed, linked, and weighted into a collection of Nodes, Bones, Cameras, and Lights. These pieces make up how a product will be exported and eventually viewed in the IMVU Previewer and 3D Client. Like the bones in a human skeleton, each piece is connected and makes up a hierarchy of related objects. For your IMVU product to work properly certain bones need to exist, be named in a specific way, and linked in a special order for the IMVU Previewer to be able to display them.
Furniture Skeleton Furniture products are the simplest example of how Skeletons work. A static Furniture model might only have one Root Node and one Mesh. The Mesh is Weighted to the Root Node and that is that.
Furniture products that include one avatar seat, or more, will have more Nodes and be Linked in a hierarchy that would look something like the image below.
Skeletons need to be Linked together is a very specific way. For the above sofa product the hierarchy looks like the image on the left. All of the Nodes are Linked to the Root Node, indicated by their being indented within the Select Objects window in 3D Max. The Mesh is Weighted to the Root Node, so it does not fall under the indented list below the Root.
Room Skeleton Rooms have more elaborate Skeletons. For Room products you will need a Skeleton Node (Root), a Camera, Scene Node, Avatar Nodes, and optional Lights. Rooms can become complex very quickly and it is especially important that all of your Nodes are named properly and Linked appropriately. A typical simple Room hierarchy will look something like this. > NOTE: The Light in the above example is Linked to the Scene Node (node.Room), so it is indented even further. Also, the Avatar Placehoder model (Girl_Standing01) is Linked to the Seat Node (seat01.Standing).
Room products also include Furniture Nodes. These are nodes representing the locations where Furniture products can be placed. These nodes are individually named and should be placed on the floor, walls, and ceiling of your Room. Furniture Nodes are Linked to the Skeleton Node (Root), just as the Avatar and Scene nodes are. If there are no Furniture Nodes present in your model than a Furniture Product cannot be placed in it. Furniture Nodes can quickly clutter up a 3D model, so it is suggested that they are added last, just before exporting your model.
Furniture Nodes naming and placement are discussed in more detail in the Rooms Node tutorial.
Avatar Skeleton The Avatar Skeleton is the most complex of all, but it follows the same rules. There is a MasterRoot Node (Root) and all other Bones link to it. Avatars are by far the most complex of the IMVU products you will run across, and are not for the faint of heart. Still, this doesn't mean that you won't be running across the avatar's nodes when dealing with the production of other IMVU products. For animation products like Poses and Actions, you will be working with Avatar Nodes within a pre-rigged Max model supplied by IMVU. Avatar Nodes are also encountered when dealing with Avatar Accessories, as many accessory products link to specific Bones, like the head or wrist.
To make a Node in 3D Max, create a Dummy Node in the Create menu, under Helpers. We recommend when possible that you use the Nodes found in the example files offered by IMVU, for ease of use and consistency.
A good mantra for you to repeat often to yourself is, “Nodes are Linked, Meshes are Weighted”. Think of the Nodes as the bones in a skeleton, while the Mesh is the flesh that is wrapped around those bones. The Mesh is never Linked, it is always Weighted to the Node. Once you have finished building your Mesh, and you have created all of the Nodes, and Linked them properly to each other, your last step before exporting the lot is to Weight the Mesh to the Nodes you have created. Weighting a Mesh to a Node is a simple process, but vital for getting your model to work in IMVU. There are only a few steps but these need to be done in a precise order or you will quickly run into problems once you move over to the Previewer.
First, makes sure that you Export your Skeleton (.xsf) before you Weight your Mesh. The reason you do this is because the act of exporting your Mesh will automatically reference the last Skeleton file that was exported. Next, select your Mesh and apply a Skin Modifier to the top of the stack. Within the Skin modifier, click the Add button and add the skeleton.Room Node (Root if you are working with a Furniture product) to the bone list. Now click the button labeled Edit Envelopes. Check the Vertices box and uncheck the Envelopes and Cross Sections boxes. In the Veiwport, click-anddrag over all of the vertices in your mesh to select all of them. This will put a small box around each of the selected vertices in your model (see header image for example). Back in the Skin Parameters menu, scroll down to Weight Properties and uncheck the Normalize and Rigid Handles boxes. Then check the Rigid box and drag the Abs. Effect arrows to the numeric value to 1.0. Unclick the big Edit Envelopes button and, voila, your mesh is now weighted. You can now safely export your Mesh (.xmf) file.
Whether you are making a texture for a 3D model, a Sticker, or just customizing your Homepage, you will be using some sort of 2D application to create and manipulate your digital images. Although Photoshop is the acknowledged industry standard, it isn't necessarily your only choice. Photoshop is what we use here at IMVU, and is by far the most powerful image manipulation software out there, but if you have limited funds you might need to look for alternatives. Here we talk about some of those alternatives with the benefits and downfalls.
Adobe Photoshop There isn't a day that goes by that I don't have Photoshop open to work on some aspect of what we do here at IMVU. Whether I am building a 3D product textures, or just creating Ad images to sell that product, I use Photoshop to do the
lion's share of the work for me. With its origins as photo manipulation software, Photoshop has grown into a standard tool for all digital artists, with many of them forgoing traditional mediums, like paint to create their work entirely in the computer. With each new update Photoshop gets bigger and more complex and at least monthly I uncover some new trick that would have saved me loads of time if I had only learned it earlier. Still, as an artist I can't imagine getting my work done without it. Photoshop's many advantages' are topped by the availability of Filters and Layers. Filters allow you to change the quality of all or a portion of an image. You can add texture to it, create shadows, glow, blur, or even liquefy a surface. Layers allow you to build your images one part at a time, each stacking on top of the other. This allows you infinite ways of manipulating even small portions of your image without altering the rest inadvertently. If you are serious about working on art in the computer then you will eventually own your own copy of Photoshop. Until then there are other options out there to try. http://www.adobe.com/products/photoshop/photoshop/
Photoshop Elements Photoshop Elements used to be a cheaper alternative to the Professional version of Photoshop, so it consisted of many of the tools you would most often use when creating images for IMVU. Recently Adobe has drastically redesigned Photoshop Elements to focus more specifically on the amateur photo manipulation market and the two products are now unrecognizable as having come from the same origins. Many of the same tools are there, but using the new version of Elements may involve having to completely re-learn how to use Photoshop. We have not tried this version ourselves, but knowing Adobe, Elements will be powerful enough to get you started, and for under a $100. it beats the price tag of its older sibling. http://www.adobe.com/products/photoshopelwin/
GIMP In the wild west world of Open Source applications, GIMP is the recognized free competitor to Adobe's Photoshop. With many of the same features, GIMP is a solid alternative to Photoshop, and who knows, you might actually like GIMP better? GIMP includes Layers, as does Photoshop, as well as a limited number of Filter options. http://www.gimp.org/
Although there are many more options out there, these three could easily get the job done. Like anything, the more you work with an application the better you are able to understand its possibilities. We recommend you dive right in, and be sure to search the Web for the many tutorials that are available out there to help you along.
At its core, IMVU is a 3D environment filled with 3D people and places. To create the 3D products that fill IMVU's Catalog, Developers have used a variety of applications and tools to take their designs from purely conceptual to purchasable. Best of all, these virtual products never run out of stock. In addition, with the ability to Derive from products, your seed of an idea might just inspire other Developers to build countless new products from yours, all of which you get a small cut from each sale. Currently IMVU only supports 3D Studio Max 7 as the “official” 3D application for building products. We are the first to acknowledge that this is nuts, and we are working to remedy that now. Still, this hasn't stopped industrious Developers from creating alternatives to building 3D content for IMVU. As IMVU grows so will the tools it supports, but for now these are the options available:
3D Studio Max Probably one of the most expensive options available, 3D Max is still an industry leader and the tool we use internally to build all of our products. Although there is a steep learning curve to mastering 3D Max, all the
skills learned are applicable to the real world of 3D asset creation, for both the game and movie industries. Although we officially support 3D Max 7, many of our Developers have had luck with both Max 8 and 9 in Exporting most of their assets. Autodesk 3D Max here: http://usa.autodesk.com/adsk/servlet/index?id=5659302&siteID=123112
Blender Another popular option is Blender. As an Open Source application Blender is free to use and has an ever growing community of dedicated users and contributors. Neo5842 has created a wonderful introduction to Blender with tutorials on how to use it for IMVU specific projects, and offers Blender specific Exporters for helping you get your designs into the Previewer. Get Blender here: http://www.blender.org/ Neo5842's Blender Exporter & Tutorials here: http://neo5842.starlithost.info/home page.html
Google SketchUp As part of an earlier Beta test, we offer a SketchUp to IMVU Exporter that will allow you to create simple 3D Furniture products for the IMVU Catalog. This option is not free of bugs, but it has allowed Developers new to creating 3D products a chance to get their feet wet, while learning on a free and easy to grasp tool. Google SketchUp (free): http://sketchup.google.com/thankyou_win.html SketchUp to IMVU Exporter Tutorial & Files: http://www.imvu.com/catalog/web_images/how_to/sketchup_index.htm
Seat nodes are nodes that are contained within both Room and Furniture products. They tell IMVU where an avatar is allowed to move in the 3D scene. When a user hovers their mouse over the IMVU chat window, they may see some little seat icons appear. When they click on one of those icons, their avatar will move to that location. Well, the seat icon only appears on screen if there is a properly teched seat node in that location.
Node Naming A seat node has to be named a certain way or the IMVU system will not recognize it as a seat. The naming convention is pretty simple: seat##.AnimationName 1. The prefix is the seat number. An individual product may have up to 99 seats. So, your seat prefixes can range from 01 to 99. 2. The prefix and the suffix are seperated by a period in the middle. 3. The suffix is the Action name. The Action name can be anything you want. NOTE: the first letter of the Action name must be CAPITALIZED.
Default Animations There are two Actions that come standard in the IMVU avatars: Standing and Sitting. If you want your seat node to trigger either one of these standard Actions, you must use the following node names: Standing: seat01.Standing Sitting: seat01.Sitting
Unique Seat Numbers Although you may have up to 99 seats per Room or Furniture product, each seat number must be unique. This means that you may only have one seat01 per product. So, every seat node in your product skeleton needs to have a number that is different from any other seat number in the skeleton. NOTE: If you have two seat nodes in one skeleton that share the same number, then the IMVU code will only recognize one of them. So, if you recognize that a seat node is missing while testing your product, the culprit is probably that the seat has not been named correctly.
New Actions If you're interested in learning how to get a new avatar Action to show up in your product, click here to go to the Avatar Action Preview Tutorial.
Ah...the lazy movement of the trees as the breeze passes by; the way she shifts her weight and winks her eye; the way she turns to me and gives me that "I am SO alive" look; the way we touch; the way my pet dinosaur tries to eat her while avoiding my posessed, bouncing pogo stick with the 'Boing' noise; Ah... Animations and sounds add life to all environments including IMVU and Actions are the tool Creators use to piece those animations and sounds together in an IMVU product. What is an Action? An Action is a collection of animation and/or sound assets that play back in IMVU. Actions follow several hard coded rules but, in essence, can be as simple or complex as you like. Actions also afford you the incedible ability to create random playback events and, therefore, add a feeling of life to all of your products. Adding Actions is well worth the effort as those product that contain Actions (and chickens, mustn't forget chickens) sell very well with the IMVU audience.
The IMVU Action System It is always good to know the following rules of how an IMVU Action works: - An Action can include a single sound. - An Action can also be a collection of one or more Ensembles and a few rules that the Ensembles follow.
- The trigger name supplied in an Action dictates whether the action is an Idle or a triggered action. - An Ensemble contains the actual animation assets and the rules that those assets follow - There can be multiple Actions of the same name. For example, there can be multiple Actions named stance.Idle - There can be multiple Ensembles in each Action. What Products Contain Actions? Every base 3D product type can include Actions. This includes Avatars, Avatar clothing, Avatar Accessories, Modicons, Furniture and Rooms. Even more, Room and Furniture products can contain Actions that effect the Avatar as well. As my Irish grandmother once said, when she stepped off the boat after her three week journey of toil and seasickness and touched American soil for the first time, "That's a whole lotta Actions!" NOTE: Although Eye and Skin products are, by definition, Avatar clothing products, they can not contain Actions (as far as we know) as they do not override body part IDs and therefore do not have a way to influence the Avatar. To learn more, please go to the Introduction to Body Parts Tutorial.
Action Types There are three types of Action: 1. Idle Actions 2. Stance Actions 3. Triggered Actions An Idle Action plays forever and does not require input from a person in order to do so. A stance Action is dictated by a room or furniture seat node. For example, if a seat node is named seat01.FloatinInWater, then the IMVU code wants to play an animation called stance.FloatingInWater. If an Action with the same name exists in either the avatar product or within the Room or Furniture product, that animation will be applied to the Avatar. The three main Idle/Stance Actions names are stance.Idle, stance.Standing and stance.Sitting. To learn more, please go to the Seat Naming Tutorial. A triggered action is an action that plays once (or loops infinitely until removed) and then goes away. When you type LOL in IMVU, you 'trigger' the LOL animation to play on your avatar. Any product that can contain an Action can contain any and/or all of these three Action types.
Get the Previewer - and FEEEEEL its power Actions are built in the IMVU Previewer: IMVU's proprietary tool for putting together individual assets and turning them into one CFL product. To learn more, please go to the Previewer Tutorials section of the Creator Education Center.
Simple vs. Complex The most simple Action is one that only contains a sound file. It is simple because you only need to do four things: 1. Click the Add Action button 2. Add a trigger word (any word will do) 3. Click Browse and add your ogg. sound file 4. Save & submit Simple, huh? At the same time, Actions can be vastly complex as the options afforded you are limitless. For example, an Ensemble is where skeletal and morph animation assets are stored and directed. Each Action can contain an unlimited number of Ensembles that each control either the same modifiers or different modifiers in the parent product.
On top of that, you can have multiple Actions with the same name. This means that you can have multiple things occur on the same parent product when that universal name is called in IMVU. [wipes brow] As you can imagine, there is an art to making terrific Actions. Idle Actions To learn more about Actions that play forever on their own, please go to the Idle Actions Tutorial.
Personal Animation Products A Personal Animation is an animation that is triggered when you click on your own avatar to trigger an animation. IMVU conversations are wired up to allow you to trigger a Personal Animation by typing in a trigger word. Although you do not have the ability to add Personal Animations to the IMVU Avatar menu yet, you should know what they are. If you are making a Personal Animation, then you ought to derive from product10838. While 10838 is a Male avatar Action product, you can easily make it either a Female only or both avatar Action by adding either "80" or "191, 80" to the 'Avatar IDs' input field in the Previewer. To learn more about the 'Action Tab' settings in the Previewer, please go to the Previewer - Actions Tab Tutorial.
Cooperative Animations A Cooperative Animation is an animation that is triggered when you click on another person's avatar to trigger an animation. When you do this, both your avatar and the avatar you clicked on play an Action together. This is quite possibly one of IMVU's strongest features as it allows you to actually touch the other person with a fair degree of believability. Although you do not have the ability to add Cooperative Animations to the IMVU Avatar menu yet, you should know what they are.
Budgets Although you can have as many Actions with as many Ensembles as you like, please remember to keep your asset files and overall product sizes as small as possible. Large CFL products (ie - over 200k) take longer to download and render in IMVU. The longer a product takes to download, the angrier your customer gets. The best way to keep your customers happy is to be smart about how an animation asset is prepared...and the only way to do this is to know how the Previewer works. So, let's go to the Previewer - Actions Tab Tutorial.
If you want boneA in a skeleton to move when boneB is animated, then you want boneA to be 'parented' to boneB.
Its Easy Parenting bones is really easy. Just select the bones you want to be parented and then click on the 'Select and Link' tool icon.
Select and Link tool With the blah tool active, you can now click on the bone in the scene that you want to be parented to.
Select By Name Tool If there are too many bones in close proximity to each other for you to just click on the bone you want to parent to, you can open the 'Select By Name' dialog box. Just click on the bone you want to parent to and press OK in order to link.
Exit Select and Link tool Please remember to click another button in the top tool bar in order to exit the 'Select and Link' tool. This is so that you don't mistakenly link selected bones to the wrong bone. Verify I always make sure that my parenting has actually 'taken'. To do this, just open up the 'Select by Name' dialog box and look at the hierarchy displayed. In this case, we want the Bone01 and Bone02 bones to be indented directly underneath MainBONE. If everything looks OK, click cancel. Otherwise, follow the above process again.
Unlink If you want to unlink a bone, just select the bone and click on the 'Unlink Selection' button. This will break all links applied to the selected bone.
Rooms are the context for all 3D interactions in IMVU and act as the stage for members to display and arrange the Furniture in their Inventory. When creating a Room product you need to understand how furniture interacts within your 3D environment.
Before your Room can be submitted to the IMVU Catalog, it will need to include Nodes that will allow furniture to be placed within it. These are called Furniture Nodes and they need to be placed by you before a sofa can sit on the floor, a picture hang on a wall, or a chandelier suspend from the ceiling.
There are three types of Room Nodes, these are Floor Nodes, Ceiling Nodes, and Wall Nodes. Each are named specifically for their Node type, and each has a Axis that points into the 3D space, depending upon their specific location.
Floor Nodes have their Z Axis pointing upward into the Room
Wall Nodes have their Z Axis pointing inwards towards the center of the Room
Ceiling Nodes have their Z Axis pointing downwards into the Room
Within 3D Max, you can check the orientation of your Nodes by switching your Reference Coordinate System to 'Local' and select your Node(s):
Proper Naming Room/Furniture Nodes are Linked to the Room's Skeleton Node and need to be named accordingly: Floor Nodes: furniture.Floor.01 Wall Nodes: furniture.Wall.01 Ceiling Nodes: furniture.Ceiling.01 We recommend you limit the amount of Furniture nodes in your scene to 650 or less. We arrived at this number assuming there would be at most 100 pieces of furniture in a room and each on of those would have at least 1 node and up to 99 nodes. Although the cost of each individual node is insignificant, multiplying that by thousands means a performance hit while chatting in 3D. So, 650 or less, please.
Furniture/Room Nodes need to be placed so that the center of the Node sits at the inward facing surface of the floor, wall, or ceiling. To be safe we recommend that the Node be nudged a little bit further into the space so that objects like pictures, doorways, or floor shadows appear within the room and not beyond the surface.
Since adding Furniture/Room Nodes to a 3D Mesh can be time consuming, we have created a 3D Max Example Model to help speed things along. You can find it here: .../DevTutorial/Rooms/FurnitureNodes.max To import these Nodes into your Room model, choose File/Merge in 3D Max, then select those Nodes that you wish to import. We recommend that you import and place each Node type individually... so floor nodes go in first, get placed, then move on to wall nodes, etc. This makes the task less daunting and gives you the most control. If you need to create more Nodes, just Duplicate the Nodes you Merge and place them wherever you need them. Each Node needs to be uniquely named, but their numbers do not need to be chronological, so if you are missing a few numbers you are still okay. NOTE: Since members can "nudge" their Furniture around while in Edit Mode, there is no need for the Nodes to be right next to each other. There is also no limit to the number of Furniture items that can be placed on a single Node (as far as we know).
NOTE TOO: If your Room does not include walls or a ceiling, there is no need to include them.
If you are just beginning to contemplate creating 3D products for IMVU, then Furniture Products is a great place to start. Without the complex rigging of the avatar, or the tons of nodes you have to deal with in Room products, Furniture is about as basic as it gets. You will still need to understand the fundamentals of building a mesh in 3D, and you will need to learn the steps necessary to tech your 3D model, export it from your 3D application, and import it into the IMVU Previewer.
The definition of a Furniture Product is as follows: “In IMVU a piece of Furniture is any product that can be placed into a 3D scene, and it usually lives in the Furniture section of the IMVU catalog. Furniture can be anything you, the developer, can think of. Whether it is a simple cube or a treadmill with an running avatar animation, you can make and sell it all in IMVU. The biggest limitation on building Furniture for IMVU is your own imagination It is important to note that a Furniture product is different than a 3D Room in which it will eventually live. Although they can share many of the same technical aspects, Furniture is officially a product that can be placed and moved around in a 3D scene.”
To build a Furniture Product, you are going to have to gain knowledge in these specific areas: 1. 2. 3. 4.
Build a Skeleton, a 3D Mesh, and add Materials (textures) to your Furniture Export all of these assets into the proper Cal3D file formats Assemble your Furniture assets in the IMVU Previewer Submit your Furniture Product into the IMVU Catalog
Once you have gone through all the tutorials necessary to get from inspiration to final product, you will have learned many of the fundamental steps that are needed to get any 3D asset into IMVU, which means you are already on the road to being able to create Rooms, Avatar Accessories, and eventually the Avatar itself.
Files to Get You Started: We have some example files for you to look at, so you can get familiar with how furniture items are put together. For the purpose of these tutorials, we will be using 3D Studio Max 7 as the default 3D editing program in our examples.
Product12906_Furniture_window01.zip
Product12907_Furniture_couch01.zip
Product12908_Furniture_chair01.zip
Product12909_Furniture_bar01.zip
Example Furniture Product files: Example Chair Example Couch Example Bar Example window Each ZIP file above contains the textures and skeleton for each product as well as the product or CFL itself. You will need all of these to make your first furniture product in the Previewer. Each example Furniture MAX file contains several objects necessary to convert your idea into IMVU reality. These include a mesh or meshes, a Multi-Sub materials, and a Root node. Furniture that avatars can sit in also contain seat nodes, Catcher/Pitcher nodes, handle nodes and placeholder avatar meshes.
NOTE: Save this file with a new name, as you may need to merge facets of the original example 3D Scene into your new Scene if a mistake is made. NOTE: We at IMVU, inc. do not limit you in how large any individual piece of your Furniture asset can be. We do,
however, limit the overall size of your final CFL product file to 2mgs (WHICH IS HUGE). Download and runtime size is an issue that should be kept in mind whenever designing for IMVU. If your Furniture's file size is too big, it is unlikely that your potential customer will purchase and download it. It is good practice to try to keep the texture size, vertex/face count of your meshes and animation length down to the bare minimum. There really is no reason to have a 256x256 texture on a tiny facet of your Scene: it just won't be seen. In fact, we have found that the smaller the texture, the BETTER it looks in IMVU. Go figure.
Anytime you create an avatar “seat”, we recommend that you also include Catcher & Pitcher Nodes as well. The Catcher & Pitcher Nodes indicate the locations two avatars stand when performing a cooperative animation, like a hug or handshake. The distance between the two nodes is extremely important and should never change, or else you risk these animations not working, or feeling “broken”. The best way to insure that you do not accidentally change this distance between C&P Nodes, is to Merge the nodes, along with the Seat Node and placeholder avatar model, into your model from a preexisting IMVU provided Max file.
You can easily merge these nodes from the Example 3D Room file here: Example3Droom.zip
Creating an animated Furniture or Room product is actually pretty straightforward. When you wish some element of your product to animate you are really animating a Node and weighting a Mesh to that animating Node. In this video example, you will see four elements: A Root Node, an Animation Node, a Mesh for the base of the candle mobile, and the animating central core or propeller of the candle mobile. The Root is no different than a typical Furniture Node, or Room Skeleton Node and it remains static.
The non-moving candle base is Weighted to the Root Node, while the animating central core is weighted to the Animation Node. The Animation Node is Linked to the Root Node, so you should end up with a hierarchy for your model that looks something like this:
After you have exported your Skeleton (.xsf), Meshes (.xmf), and Materials (.xrf), you can now safely export your Animation file. To do so, make sure to select the Root Node and export as an animation file (.xaf).
You only need to export those nodes that actually animate. When exporting make sure that only those nodes that are animating are checked, all others should remain unchecked. More information on how to export animations in the Export Animations tutorial. NOTE: In regards to skeletal animation, the longer your animation, the larger your exported animation file will be and therefore the overall size of your Furniture will be higher. The same holds true for morph animation with the additional concern of the more morph targets you have in your exported file, the larger your file will be. Although you should not feel too contrained, it is always good to keep an eye on the final size of your model file, as a large file will effect the experience for those members that use your product. Further Note Although the example used in this tutorial shows the animating node aligned with the Root node, neither the avatar master root nor the seat node *need* to be aligned with the Root node of your Room or Furniture product. They *can* be but do not *need* to be. You can have hundreds of seats spread throughout your Room or Furniture product.
Adding animation to your Furniture and Room products will only make them more exciting for those members that purchase them. Whether you are just adding some movement to the surface water in your hot tub, or creating a fully
animated robot Pet, there are a few tricks you should try to make your products more dynamic. Texture Animation One of the easiest, and least expensive ways to create motion in your models is to animate the texture. Texture animation is available via the Materials TAB in the IMVU Previewer. By setting the direction, speed, and rate of cycling, any surface can become move, flash, or animate.
In this example a lava effect is created by sliding a texture with an alpha map along the surface of the model. My playing with how the texture maps onto the polys, you can create the illusion of speed and viscosity of the liquid. You can see the Lava Throne for yourself here.
Animated textures can also be used for large areas, like creating the illusion of a rolling sea or moving clouds. In this example I was able to create the movement a ship on waves by moving a large water texture over an uneven plane. You can see how this came out here >
Mesh Animation There is no limit to what a Room or Furniture product can be, or what it can do. Why just build a sofa when you can design a flying machine that flaps its brass and wooden wings over a sea of clouds? Mesh animations can be as simple or as complex as you like. In this example, our flying machine can pitch forward and backward while its back wings flap and front wings rotate. Each part of the flying machine is saved as a separate Mesh and each is Linked to its own Animation Node. After exporting each part, they are all rebuilt in the IMVU Previewer where their movements can be further refined before submitting to the Catalog. Be sure to check out the tutorial on the Introduction to Animation Nodes for more information on this topic.
Let's face it, morph animation is not easy. However, they're pretty damn cool, add a wonderful sense of life to your products and aide in product sales. So, what's not to love? Note: This tutorial is about building MORPH animations for Room or Furniture products. That means it is about making changes to the shape of a mesh over time. If you want to learn more about Room or Furniture skeletal animations, ie how to make the bones move, please go to the Animating Rooms and Furniture Tutorial. For the purposes of this tutorial, we will be using 3DS MAX.
Teched and Ready In order to create a morph animation, you need to start with a file that is properly set to allow you to animate it. This means that the parent mesh has a morpher modifier applied to it and that morph target channels live within that modifier. To see if your file is properly teched for morph animation, click on the mesh and look for the morpher modifier underneath the weighting modifier. If you don't see it - the file is not prepared for morph animation. To learn how to properly prepare a file for morph animation, please go to the Morph Target Tutorial. If you do see the morpher modifier as well as morph targets in the Channel List, then you're ready to go.
Basic Animation I always make a quick animation to verify that the mesh and morphs animate nicely together. If they do, then I can go ahead with my animation. If they don't, then there is no doubt a glitch in MAX. So, I restart and try again. This usually resolves the issue. To learn more about how to make a simple animation, please go to the Animate In Max Tutorial. To make a quick morph animation, follow these steps: Click the mesh Click on the Morpher modifier in the stack - make sure that the Channel List is visible Enter Animation Mode by clicking the 'Auto Key' button on the bottom Drag the animation slider to the middle of the time bar Drag the morph target slider to 100% Drag the animation slider to the end of the time bar Drag the morph target slider to 0% Exit Animation Mode by de-pressing the 'Auto Key' button Click the 'Play' button and watch how the morph behaves
Auto Key is IMPORTANT Please remember to only make changes to your morph channel percentages while in Animation Mode. If you are not in Auto Key mode and you make a change, that change will not be recorded at a point along the time slider. Rather, your change will be applied to the entire animation. While this can be useful for making Vogues (referred to below), it is easy to forget whether you are in Animation Mode or not. Don't worry, though. You'll learn either way. hahahaha. Action Types There are three types of avatar Actions: 1. Idle Actions - these Actions play animations continuously. They are meant to be interrupted by the other types of animations. 2. Stance Actions - these are animations triggered by the joining of a seat. They are closely related to Idles in that they play continuously once the seat has been joined. 3. Triggered animations - these animations are played when activated by a trigger word like 'wave'. They usually replace the morph channels being used in the Idle animation. Knowing how an animation is going to be used in IMVU *before* you build it helps you build the right kind of animation and helps reduce iteration time. Morph Naming Convention The morph targets have a naming convention that dictates what kind of morph they are. This naming convention must be used or your morphs will not play back in IMVU. An example of a properly named morph target is leftBlink.Clamped where the .Clamped suffix is the morph type. The prefix of the name can be anything you like. Here is a breakdown of
what the four morph types are and what they mean: .Clamped - allows multiple morph animations to affect the channel but clamps the sum of their effects to 100% .Averaged - allows mutlipe morph animations to affect the channel, averages the result. .Exclusive - allows only one morph animations (the most recent one applied) to affect the channel, no cap on value (i.e. allows values greater than 100%) .Additive - allows multiple animations to affect the channel, values are added together. Blend In / Blend Out Although this section focuses on a feature found in the Previewer, it is important to keep in mind while building your animation. As discussed below, the frame controls in the Previewer allow you to loop your animations. However, they also allow you to blend whatever animation is playing into your animation. This is very handy for morph animations as a non-blended jump from one morph animation to another can leave unpleasant artifacts for a few frames.
Vogue Animations Vogues are single frame or low frame animations that have very small file sizes. These animations rely on the blend in/out functionality of the Previewer to work properly in IMVU. Now, by no means are Vogues required to be simple expressions - but, regardless of the expression you are making, it is still just an expression. Think of it as a snapshot of an avatar statue's face....or an avatar stuck in an icy, frozen tundra surrounded by once fresh dreams that are only now beginning to thaw. By exporting this simple morph animation, you pretty much guarantee that your animation file size will be quite small. Small file size is really, really good. You should want your file sizes to be as small as possible. Once you've gotten your animation exported, simply play with the blend in/out and loop duration functionalities in the Previewer to get your Action product just right. You can loop a 2 frame animation for 30 frames and (at 30 frames per second) end up with a 2 second animation of your avatar's facial animation. Very cool and very cheap to download. Cheap download = wonderful customer experience. The only drawback to using Vogues is the aesthetically unappealing look of linear translation. However, this is more of a skeletal animation issue. Using Vogues for Morph animations is always OK. File Size Budget The win for doing vogues is keeping your overall animation size down. Please keep in mind that the more morph targets you animate and longer the duration of your animation, the larger your Action product is going to be. The larger your file, the longer it is going to take to load during a conversation. Please be as discerning as you can about where you spend your animation budget. We want you to be successful and it will be hard to be successful if your products take too long to download. Catalog Snapshot If you are creating an animation as a final product, please remember to take a 100x80 pixel Catalog snapshot. To learn more about catalog snapshots, please go to the catalog snapshot tutorial.
Export Once you have built your animation, you must export it as an .XPF file. .XPF is a Cal3D file format that is installed in MAX when you install the Previewer. .XPF files are what the IMVU Previewer recognizes as morph animation files. In order to export your Morph Animation file, select the Parent head mesh. In the case of the Female04_Anime01_IdleStandingPoseMASTER.max, the head mesh is called 'female01.Anime01.Head'. In the case of Male03_Anime01_IdleStandingPoseMASTER.max, the head mesh is called 'AnimeHead.Male01'. With the head mesh selected, choose Export in the file menu. Scroll to the .xpf file format, name your file (remembering to manually type in the .xpf at the end of the name) and click Save. In the Cal3D window that appears, verify the actual time values of the animation. Although they are almost always exactly the numbers they need to be, you should still check that the start and end frame numbers match what you intended to export, and make sure the frames per second is set to 30. Click finish. Animation file: EXPORTED!
What's Next? Now you're ready to bring your xpf into the Previewer to make an Action. To learn how, go to the Previewer - Actions Tab Tutorial.
As a wise, handsome and heroic man once wrote, "Animations and sounds add life to all environments including IMVU and Actions are the tool IMVU Creators use to piece those animations and sounds together in an IMVU product." What genius! What prose! What the hell?
This tutorial covers how to use the Actions tab in the IMVU Previewer. However, it does not cover how to build animation assets. If you want to learn how to build animations, please go to the Skeletal Animations Tutorial, the Morph Animations Tutorial, the Rooms Introduction, the Accessories Introduction and the Furniture Introduction. This tutorial assumes you have already read the Previewer Introduction and have already downloaded the Previewer. Also, please know that the Actions tab contains far more features and inter-connectivity than any of the other Previewer tabs. Therefore, this tutorial is long. So, grab yourself a pot o' tea and enjoy some nice, technical jargon. Get the Previewer Juuuuuuuuuust in case you haven't already downloaded the Previewer, we will take a moment to remind you that this tutorial doesn't make nearly as much sense without the Previewer than with it. Therefore, please take the time to register to become a Creator and then download and log into the Previewer. To download the Previewer, please go to the Previewer Introduction.
Advanced Mode Reminder Remember, if you have not set the Previewer to 'Advanced mode', then the Actions tab will not appear. To enter 'Advanced mode', click the Edit menu and then release over the title 'Advanced mode'. The next time you check this setting, it should have a check mark next to it. The check mark indicates that the Previewer is in Advanced mode. Also, the Previewer should remember this setting from now on.
The IMVU Action System It is always good to know the following rules of how an IMVU Action works: - An Action can include a single sound. - An Action can also be a collection of one or more Ensembles and a few rules that the Ensembles follow. - The trigger name supplied in an Action dictates whether the action is an Idle or a triggered action.
- An Ensemble contains the actual animation assets and the rules that those assets follow - There can be multiple Actions of the same name. For example, there can be multiple Actions named stance.Idle - There can be multiple Ensembles in each Action.
Previewer: The Action Tab All Actions are found in the Action tab in the Previewer. To learn more about the various tabs in the Previewer, please go to the Previewer Introduction.
Add Action: Empty Slate When you first enter the Action tab, you will see something like this:
Add Action The first step towards creating an Action is to actually click the 'Add' button. This will create a new, blue panel entitled 'Action 0' and a new, red panel entitled 'Ensemble 0'. Each Action you add from now on will ascend in number and this number will be evident in the action name, 'Action 1', Action 2', and so on. The Action and Ensemble names begin at '0' vs. '1' because the Previewer was made initially by engineering types and they're a little silly that way. The two panel types are color coded to make it easier for you to understand just what is effected and where. Also, each time you create a new Action, one Ensemble will be automatically added to the Action. This actually doesn't need to be the case as Actions do not necessarily need Ensembles in order to work (like sound Actions). However, the vast majority of them do need an Ensemble so we figured we would save you a step and add it for you.
Action Panel Detials: Action Parameters Ah...that soothing blue....just shy of green... Now that you have created an Action, I bet I know what you're thinking. "What the hell does all of that stuff do?!" Fear not, Action maker. Below are all the gory details of the Action Panel.
Play Action - At the top right of the panel is the 'Play Action' button. Clicking this button *after you click the Apply Changes button* will cause your action to play. This allows you to test your Actions before submitting them to the IMVU catalog.
Action parameters The first section in the Action panel is called 'Action parameters'. These parameters are the most used paramters in the Action panel. Trigger: - This field is where you type in the word or words that will cause the Action to play. A trigger word can be anything you like. When that word is typed in the IMVU messenger, the Action will play. An Action that does not contain a Trigger word will not play. Trigger words can also be named after Idle or Stance animations. To learn more, please go to the Avatar Actions Introduction. You can have multiple words trigger one Action. To achieve this, you add a comma separated list of words such as, "ha, haha, heh, har, hardy, lol". Type: - The type field is where you tell the Action whether it ought to apply to an Avatar or to anything else. The two options you have in this drop down menu are 'Avatar' or 'Room'. The 'Room' choice is good for Rooms, Furniture and Accessories (Actually, either setting works for Accessories.) Avatar IDs: - If you choose 'Avatar' in the Type field, then you will need to identify which avatar product IDs your Action is meant to work with. Since all IMVU avatar animations are built upon the same skeleton, they work with both the female and male avatars. However, as the author of the Action, you have control over which avatar an Action can work with. The product IDs of the IMVU avatars are: Female: 80 Male: 191 If you want your Action to apply to both avatars, you type in '80, 191'. # of ensembles played: - This field tells the Action how many Ensembles it ought to play. If you want the Action to loop forever, you type '0' in this field. If you want the Action to play once, just type in '1'. After playing: - This drop down menu tells the Action what it ought to do after playing an Ensemble. You have three choices: Pick new Ensemble - This option tells the Action to randomly choose a new Ensemble to play next.
Pick same Ensemble - This option tells the Action to play the same Ensemble repeatedly. Cycle through Ensembles - This option tells the Action to play the next Ensemble in the sequence. This option is used mostly to test that all of the Ensembles are actually working as designed. Action Panel Detials: Camera take Paramters In IMVU, you can choose whether your Action makes the camera cut to a spot in front of your avatar. For example, if you wanted to show off a smile, you could turn on the camera take for that particular Action so that no matter where either your and/or your chat partner's camera is looking, they will automatically cut to your avatar's face. As you can imagine, Camera Takes allow you to make very subtle animations that pack a very powerful punch as you get in close but would otherwise not be seen in the normal product.
On - In order to utilize the Camera Takes, the first thing you must do is check the ON box. Delay - Next, you may set the Delay (in frames) between when the Action is triggered and when the Camera Take takes place. The most common number is just 0 but you never know… Length - This field allows you to set how many frames the Camera Take will stay in the Take position. I usually leave some space at the end of the Take to allow the user to see the Avatar's face go back to normal for a split second - folks seem to like that better than cutting as soon as the Action is done. Distance - This field allows you to set (in meters) how far from the Head bone of the avatar the Take will be. This distance can be anything you like but for Head shots, I usually use anywhere from 1 to 1.5. Height Offset - You can also set how high or low the camera is in relation to the head bone. If you wanted to cut to an Action that took up more of the upper body than, say, a smile Action would, you could adjust both the Distance…and Height… to frame the avatar just right. Action Panel Detials: Sound - .ogg file An Action can contain a sound as well as animation assets. In fact, an Action can contain ONLY a sound if you want it to. The sound is just triggered by a trigger word like any other Action. Currently, IMVU supports only sound files in the .OGG file format.
Browse... - This one is fairly obvious. Just click to find and add your OGG file. Loop - Clicking this checkbox allows your sound to play indefinitely. This is really handy for background sound effects in Room products. Action Panel Detials: Multi Party Action Paramters Currently, only IMVU has access to this functionality. IMVU uses this functionality to create cooperative animations - ie. to create animations where two avatars interact with each other. Alas, IMVU has not yet opened this functionality up to the larger Creator community.
Multiple Actions Click the 'Add' button a few times. Go ahead. I dare you. If you took me up on that dare then you would have seen that multiple Actions appear in the Actions list on the left side of the Actions tab. That's right! You guessed it! You can have multiple Actions in one product. What's more, each individual Action in the CFL can have have the same Trigger name. This is especially handy for Idle actions. Ensemble? An Ensemble contains the animation details of your Action. The Ensemble is where your .xaf and .xpf files are loaded. Your Action can contain multiple Ensembles for some very fun variation. Add Ensemble As a reminder, your first Ensemble is added for you whenever you add an Action. However, if you wish to add more, you can do so by clicking the 'Add' button in the Ensemble Section
Ensemble Details: Sure, in nearly every example on the planet, red means stop. However, when it comes to IMVU Actions, red means go go go. The Ensemble panel is where you actually upload animation assets into your Action. What's more, the settings in this panel tell those animation assets how to behave.
Speed multiplier: - The Speed Multiplier settings allow you to speed up or slow down the playback speed of your animation when triggered. However, this box does not effect sound effects. Here are examples of what certain values
do: 0.5 = half playback speed. 1 = same playback speed. 2 = double playback speed. IMVU typically leaves these boxes empty. Stop After: - In the “Stop After” box, you may choose to stop the Ensemble after the “Longer effect ends” or the “Shorter effect ends”. If you choose to stop the Ensemble after “Longer effect ends”, then the Ensemble will wait until the last frame of the last asset to stop. If you choose to stop the Ensemble after “Shorter effect ends”, then the Ensemble will stop on the last frame of the first asset to end. Extra # of loops (up to): - This box allows you to add a random multiplier to the amount of loops your Ensemble will play. This only adds, not subtracts, loops to the number used in the “#of Loops” box found in each animation's Frame Controls. This allows you to have a random playback length every time your Action file is played which is very handy for idle animations and gives a lifelike quality to your Actions. If your initial “# of Loops” is zero, any change to “Extra # of Loops (up to)” will do nothing. Probability of playing - When your Action contains multiple Ensembles, the number typed here will tell the Action how often it should choose to play this particular Ensemble. The number typed here ought to be 1.0 or a fraction of 1.0. For example, if you want this Ensemble to play roughly 30% of the time, you would type in .3. It is best, though not required, to have the total values of all of the 'Probability of playing' boxes across all of your Ensembles equal 1.0. IMVU typically leaves this box empty. Disable Gaze - This check box allows you to control whether the Avatar will “look around” using IMVU's procedural gaze settings. This is actually pretty fun so try it out. Ensemble Details: Skeletal Animation Panel The Skeletal Animation Panel is where you browse for and edit settings for your skeletal animation - .xaf file. The Browse and Delete buttons are self-explanatory.
Playback Speed: - Not only can you control the overall playback speed of the entire Ensemble (using the Speed Multipler inputs) but you can also change the playback speed of individual assets within the Ensemble. By adding a value of, say, '2.0' you can double the speed of the asset loaded. IMVU typically leaves this box empty. Blend Weight: - You know....I just deleted a really long and tedious description of what this field does. The description was full of wonderful sentences that made this feature sound important. However, this feature is so unused that I believe I am going to ask the engineering team to remove it altogether. Suffice to say, IMVU typically leaves this box empty. Composition: - The “Composition” box allows you to effect whether an animation replaces or averages with other animations in the Action. When you choose Replace, the Replace effect ramps up to 1.0, the other non-Replace effects and lower priority
replace effects will be ramped down to zero. When you choose Average, the effects will compose with influence in proportion to their ramped relative weights. If there are two effects of equal relative weight, a fully ramped Average effect will have 50% influence, sharing the other 50% with an existing effect, instead of reducing the existing effect to 0% influence. NOTE: If you are making a Vogue, be sure to set the Composition to “Replace”. To learn more about Vogue animations, please read either the Morph Animation Tutorial or the Skeletal Animation Tutorial. Ensemble Details: Frame Controls Panels Each type of animation panel contains its own Frame Controls panel. This is because the skeletal and morph animation assets can be of different lengths and, therefore, require their own loop settings.
The looping and blending tools in these two panels are the life blood of Actions within IMVU as understanding how they work influences the creation of the animation assets they, in turn, will influence. So, take your time with this one and experiment. The Frame Controls allow you to set Blend In/Out frames, Loop Start/End frames, and the # of Loops for a given animation asset. The Blend In/Out boxes allow your animation to blend seamlessly from whatever was playing before your Action and then to whatever is meant to play after your Action. If you choose a Blend In/Out time of 0 frames, then your animation will snap. This does not look good so do choose something in the 5 to 10 range. It is important to know up front that the 'Composition' setting greatly influences whether an Action can blend with another one. For example, if two back to back Actions are both set to Replace, then no amount of Blend tweaking will allow them to blend together. Rather, they will simply snap from one to the other. It is possible to loop your animation for as long as you want and for as many frames within your asset as you want. This can effectively cut your .xaf down to only the necessary frames needed to export. Much can be accomplished by simply playing with the loop parameters. What follows is a more verbose description of just what looping means: This parameter specifies where the loop section begins. The effect will begin on frame N, advancing to the end frame, then cycling back to the start frame for the remaining loop iterations. After all iterations have played, the effect will advance through the end frame to the remaining frames. The effect remains "on" during the release period. If the start and end frame are both zero and the effect loads successfully, then the end frame will be adjusted to be the last frame. Thus if you want a simple looping effect you can set the start frame, end frame, and loopIterations all to zero. If you want a simple one shot effect, then set the start frame and end frame to zero, but set loopIterations to one. If the start and adjusted end frame are the same, then the effect does not have a loop section, and the loopIterations parameter will be ignored. Ensemble Details Morph Animation Panel
The first difference between the Morph and Skeletal Animation panels is that the Morph panel is missing the
“Composition” box. This is due to the fact that this functionality needs to take place in the actual morph target name within your 3D program. The second difference is the addition of the “Amplitude Scale” box. By adding numerical values greater than 1.0 to the “Amplitude Scale” box, the .xpf will scale the active morph targets. For example, if you had set a morph to 75% upon export, and then set your Amplitude Scale to 2, the morph would play back at 150%. This can result in some fun varieties that you never would have thought of while setting key frames. Play around with it to see what I mean. NOTE: There are no magic settings insofar as Actions are concerned so please have a blast and play around. Multiple Ensembles As has been hinted to earlier in this tutorial, each Action may contain numerous Ensembles. This functionality coupled with the 'After playing' and 'Probability of playing' settings allows you to create the compelling and wonderful illusion of life.
Fully Loaded Action And...here is what a fully loaded Action panel can look like:
When I want to learn how something works I like to just take the dang thing apart and see how it ticks! This is the very reason we created the Super Furniture Product. Although fairly useless as Furniture items go, it does include one of every potential settings and effect you might want to use in your own Furniture product creation. In this tutorial we will break down each of the features used and point you to other tutorials that will help you better understand how to do this yourself. It is worth noting that this only scratches the surface of what is possible and we look forward to you surprising us with your own unique combinations of these effects and techniques. To help you along, we recommend that you check out the Super Furniture Product itself by clicking on the Derive from this Product link at the bottom of the product's catalog page, here: Super Furniture Product
Standing & Seated Nodes Starting from the far right and working ourselves to the left, we have included the standard Standing & Sitting avatar seat locations. These are as basic as it get, but worth mentioning. The standard Seat Nodes include an appropriately named Root node, a Catcher & Pitcher node, and in the case of the Seated avatar, a Handle node.
All avatar animations that are displayed in these locations are the default seat and standing Idle Animations built into the IMVU Client. To create your own poses and animations you will need to do a little more work... which we will cover below. For more information about Standing & Seated Nodes, check out the following Tutorials: Nodes for Furniture Catcher & Pitcher Nodes Handle Nodes Seat Naming Convention Note: The Catcher & Pitcher nodes are place in the depicted way to keep cooperative animations from intersecting the model platform.
Animated Textures There are a lot of ways to create movement in your Furniture and Room models without necessarily having to build it into the geometry. These include both Scrolling and Cycling Texture Animations. Both are achieved through settings in the Previewer and need a little preparation in the textures that you use.
Scrolling Texture The lower meter effect is created using a single texture that "scrolls" from right to left. To achieve this I built a texture that could Tile horizontally. This means that as the texture scrolls you are unable to see a seam that would otherwise give away the effect of moving from one image to the next. In the Previewer I used the below settings to create the animated effect:
Note that the Texture Animations Parameters is checked ON, the Mode is set to Scrolling, and the Direction is along the X Axis at "-1" (speed)
Cycling Animation For the monitor that includes thewire frame rotating chair, I used a simple Cycling Texture Animation consisting of for frames. All four frames live on the same texture and are applied to the Mesh so that all of the frames are visible. Once in the Previewer you can set each part of the texture to be displayed separately, over an adjustable length of time. In the Previewer I used the below settings to create this animated effect: Note that the Texture Animation Parameters is checked ON, the Mode is set to Cycling, and the Frame/Cell set to 12. The Cell Width and Height tells the Previewer the size of each frame of animation, the Start Cell begins with 0 to indicate the first frame, and the Number how many cells are in your texture. For more information on how to apply and animate textures, check out the following Tutorials: Introduction to Textures Mapping Materials Previewer - Materials TAB
Particle Effect Another effect that can be added to a Furniture Product is Particle Effects. These can be as simple as a puff of smoke, or splash from a fountain, or engulf your entire product in flames. Particle Effects are still an ALPHA feature and will be going through an evolution of enhancements over time, but you can start playing with them now in the latest version of the Previewer. The many options for how a particle is displayed and reacts can be daunting, so we suggest you try building your furniture product from one of the several beginning Particle products we have created for that purpose. You can find links to these products here.
The settings for this particular effect include a Source Rule and a KillOld Rule. The main Particles TAB allows you to influence the Gravity effect, load a .PNG texture file, and choose which Rules will influence how your particles will behave.
The Source Rule determines how many particles appear per second and how they are created.
The KillOld Rule determines the life of a particle on screen. The smaller the number the shorter the life of the particle.
For more information about Particle Effects, be sure to visit the Particle Effects ALPHA Tutorial
Animated Avatar For the control panel, I did a simple avatar animation or "action". Like the Seat Nodes, I created a unique avatar seat that loads an avatar action I created using the Rigged Avatar.
The Rigged Avatar file allows you to load up all the tools you need to pose or animate your avatar. In the case of the avatar pressing buttons on my control panel, I have only animated those bones that control the arms, shoulders, and hips. The rest of the avatar, including the hands, are in a static pose position that is all I need to create the action I want. The head is free to look around, and when another avatar sits in the animated chair the two avatars appear to be looking at each other as they go through their motions.
For more information on how to create an animated avatar Pose or Action, check out these tutorials: Rigged Avatar Tutorial Avatar Animation Files Avatar Skeletal Animations Avatar Animations for Furniture & Rooms
Avatar Statue For the animated chair I wanted an avatar pose that was different than what is offered with the standard Seat Nodes. To do this I created a static pose and an Avatar Statue to help me correctly place my new pose within my Mesh while I built it.
To achieve this, I applied the same technique used to create my animated avatar at the control panel, but I did not include movement. I did however still need to export a animation file (.xaf) to tell the avatar to assume the pose when seated in my chair.
I left the head free to look around to add a sense of connectedness to the environment and periodic eye contact with the avatar at the controls, or anywhere nearby for that matter.
To learn more about creating Poses or Avatar Statues check out the following tutorials: Avatar Statue Avatar Actions
Chat Triggered Animated Chair The final element is the animated chair who's animation is triggered by the avatar typing the word "Go" into a chat balloon. Note in the video to the right that the movement of the Mesh is dictated by an Animation Node (green cube)
that the chair is Weighted to. The secret behind animating any Furniture or Room element is the Animation Node and how the Mesh relates to it. It is also important to note that the Seat Node and Avatar Statue are Linked to the Animation Node.
In the Hierarchy chart to the left you will see the Root Node (.xsf), with the Animation Node (CaptainsChair.animation) Linked to it. The Handle Node and Seat Node are then Linked to the Animation Node, and finally, the Avatar Placeholder (Avatar Statue) is Linked to the Seat Node. Finally the Mesh (CaptainsChair.mesh) is Weighted to the Animation Node. This allows for the Mesh to animate with the Animation Node, and the Avatar to follow right along. To create a word trigger to start the animation I placed the word "go" into the Trigger field under the Actions TAB in the IMVU Previewer:
For more information about Furniture Animation check out these tutorials: Animating Nodes Furniture & Room Animation Exporting Animations .XAF
When you are mousing around a 3D Room in IMVU you will see Avatar Seat icons appear in those places that will allow you to stand or sit. By default these icons appear in the location of the avatar Seat Node (at the level of the floor). In some cases, you might want the icon to appear in a different place, like in the seat of a chair. To do this you will need to create a Handle Node. Handle Nodes can be placed anywhere you like, but they will need to be named specifically to the Seat Node number you are referencing. So, if you are creating a Handle Node for seat01.Sitting, you will need to label the corresponding Handle Node Handle01, and so on.
As you see in the examples above, a Handle Node is placed where you would like an avatar seat icon to appear within your Furniture or Room product.
< The Handle Node will need to be Linked to the Root Node, just as the Seat Node is. To make this step easy, I often create a Handle Node by duplicating the Seat Node and placing it where I would like it to appear. I then make sure to rename the Node "Handle" and give it the same number as the Seat Node it is referencing.
Prop Actions kick some serious booty. A 'prop action' is a Furniture or Room action that is triggered when an avatar joins a certain seat. For example, when you click on one of the paws in the Flying Dragon Room, the Dragon's paw wraps around the avatar. Also, when you move from that paw to any other seat in the Room, the paw goes back to its normal, open animation. When the paw changes with a 'seat' change, you are witnessing a Prop Action. To be clear, prop actions work in both Rooms *and* Furniture products. Prop Actions can be used in concert with Avatar Actions to create wonderful effects. For the purposes of this tutorial, we will assume you want to make a piece of Furniture animate in concert with an Avatar Action. However, please note that a Prop Action does not require a corresponding Avatar Action. What You Need Before you can make a Prop Action, you need to have built a few things first.Build your room or furniture product. Link. Build an avatar action. Link. Build room or furniture animation. Link. Export all of above.
To create a prop action, you need: 1. a completed Furniture or Room file. ie - the skeleton (including properly named seat nodes), mesh and mapping has already been completed. (Heck, its a good idea to build the whole product in the Previewer first just to make sure it all works.) 2. The number of the seat node that will trigger the action (example: seat35) 3. The name of the avatar stance for that seat 4. An exported .xaf and/or .xpf for your Furniture/Room Idle Action 5. An exported .xaf and/or .xpf for your Furniture/Room Prop Action 6. OPTIONAL - an exported Avatar Animation that works with the Furniture/Room file mentioned above Idle *AND* Prop Action A Prop Action only works if the bones involved in that Action are being animated by another Action. For example, the bar on my bench press seemingly does not move when my avatar is not in the bench press seat. However, it actually is animating - just so slightly that an IMVU user can not tell. That way, when my avatar joins the seat, the Prop Action is triggered and the currently animating bones have a new location to go to.
To make an Idle animation, Save a copy of your working file. Name it something that you will remember later. For example, if your original animation came from a file called 'Furniture_BenchPress', then your Idle animation file could be called 'Furniture_BenchPress_Idle'. As mentioned above, the Idle animation moves all of the bones that will end up being moved in your Prop Action. That movement can be as small as you want. In the case of a piece of furniture that is meant to look like it is sitting still when no avatars are seated on it, I always just move my bones fractions of milimeters along the Z axis.
So, REMEMBER: Make an Idle animation *and* a Prop Action animation for every Prop Action you wish to trigger.
Actions Needed Once you have all of your various animations exported, it is time to put it all together in the Previewer. For the purposes of this tutorial, we assume you are building a bench press. This means you will have three animations: 1. The bench press 'Idle' animation. 2. The bench press 'Pressing' animation. 3. The avatar 'Pressing' animation.
Previewer Tips Open the Previewer and create your Furniture or Room product completely. Then 'Save As' a new file. As a precautionary measure (and to just make sure you're working from a clean slate) quit and restart the Previewer and then reload your newly created product. It is very, very helpful to know that everything in your Furniture or Room product works perfectly before you embark on adding Prop Actions. This is because mistakes in exporting animations are only clear once you start loading in those animations.
Previewer Idle I always create the Idle(s) first. That way, I can more easily keep tabs on where they all are in the stack. To create an animation that loops forever, you want to create what is called an Idle Action. An Action is considered an Idle if it is named correctly. Otherwise, all other attributes of the Action are available to you.
Naming convention All Idle and avatar seat based animations are named the same way: stance.AnimationName The prefix is always labeled as 'stance.' as the code then recognizes that this Action will have special properties. The middle section can be named two things: 1. The name of the seat bone to which you want this Action to be applied 2. or 'Idle' If an Action is named stance.Idle, then the IMVU code will play it forever (or until the hamsters that keep our servers running need to take a bio break.) However, there is one other thing you will need to do in order to get your Idle animation to play forever: set the THING to zero.
Animation Type - Room When building an Action for your room or furniture product, you must set the Type to 'Room'.
Number of Idles You may have as many Idle Actions as you want. For example, in the Candle Lit Dinner scene, one Idle controls the up/down water movement, another Idle controls the Prop Action for the 'dolphin swim' seat rotation and yet another Idle controls the Prop Action for the violin.
Add Avatar Action
Once you have your Idle Action built, it is time to add your Avatar Action. The Avatar Action gets its name from the seat node in your Furniture or Room skeleton. To learn more about how to properly name a seat node, please go to the Seat Naming Convention Tutorial. However, in short, if your seat name is 'seat01.BenchPress' then your Action name will be 'stance.BenchPress'. The IMVU code sees the suffix in the seat name in your Room or Furniture skeleton and then searches for an Avatar Action with the same suffix.
Animation Type - Avatar If you want to add an avatar Action to your room or furniture product, you must assign the 'Avatar' type to that Action. Then, in the box labeled ID next to the Type field, you ought to enter 80, 191. This ensures that your action works with the IMVU female avatar (product 80) and male avatar (product 191.) To learn more about what the other knobs and guages in the Previewer do, please go to the Previewer - Actions Tab Tutorial. Add Prop Action Now that you have a fully built product and have tested that the avatar animation works, it is time to add your Prop Action. To do so, create an Action with one Ensemble. Since a prop action is a room or furniture animation, set your Type to 'Room'.
Seat Numbers Matter A Prop Action corresponds with a seat number (or numbers) found in your furniture or room product. In this instance, the bench press only has one seat, seat01.BenchPress. So, the name of the prop action would be: stance.BenchPress-seat01
Please note the addition of the dash suffix at the end of the name that includes a seat number. This '-seat01' tells the code that this Action should be triggered when an avatar joins seat01. You can have multiple seats in a prop action name. For example, if the bench press was some sort of crazy, two person bench press, then the bar could be triggered by both seats 01 and 02. To make that happen, my Prop Action name would be: stance.BenchPress-seat01,02 Please note the addition of the comma and new seat number. This ',02' tells the code that this Action should be triggered by joining either seat01 and/or seat02. VERY IMPORTANT: Interoperable animations must be the same legth As mentioned above, sometimes, you want a prop action to work with an avatar action. Said another way, you want the prop action and the avatar action to work seamlessly together. In the case of the avatar bouncing on the pogo stick, if the avatar action played even one frame longer than the pogo stick animation, then, eventually, the avatar would go down while the pogo stick went up. Even worse, if you want the prop action and avatar action to *end* at the same time, it is possible to have the avatar end up in the J-pose while the Action system finishes the animation that isn't done yet. The way to ensure that your prop action and your avatar action work perfectly together is to make sure they are both the same number of frames when they are exported. This is VERY important. If your animations are not the same length (in number of frames) then your prop action will end up looking broken. Rooms Only - Sync All Actions Sometimes, Prop Actions can get out whack in Room products as chatters bounce around from seat to seat. To prevent any sort of whackiness in Room Prop Actions, it is best turn on two check boxes in the Previewer. These two boxes can be found in the 'Special' tab in the Preveiwer and are called 'Synch all Actions' and 'Synch props'. With both of these boxes checked, then the Room will reset itself every time a Prop Action is triggered.
Test While it is always a good idea to repeatedly test your product as you build it, testing is especially necessary for Prop Actions. Save your file and then join the seat. If you see your avatar animation and prop action move in unison, then you have been successful. If they do not move in unison, then there is something wrong and you need to go back and verify: 1. that your avatar and room/furniture animations actually move in unison in your 3D program
2. that you have properly named your Actions 3. that you have properly named your seat node in your 3D program 4. that you are using the latest exported assets for both the room/furniture skeleton (xsf) and all of the exported animations (xaf) 5. that you have chosen the correct animation type across all Actions 6. that you have assigned the correct avatar IDs to the avatar Action 7. that you are using a version of the Previewer that supports this feature. If in doubt, download the latest version. Congratulations Now that you know how to make a Prop Action, you are able to delight your customers. Let's face it: we all love the pleasant surprise of a prop action. Even better, IMVU has seen a significant increase in sales of products that contain prop actions so use them wisely...a
Seat nodes are nodes that are contained within both Room and Furniture products. They tell IMVU where an avatar is allowed to move in the 3D scene. When a user hovers their mouse over the IMVU chat window, they may see some little seat icons appear. When they click on one of those icons, their avatar will move to that location. Well, the seat icon only appears on screen if there is a properly teched seat node in that location.
Node Naming A seat node has to be named a certain way or the IMVU system will not recognize it as a seat. The naming convention is pretty simple: seat##.AnimationName 1. The prefix is the seat number. An individual product may have up to 99 seats. So, your seat prefixes can range from 01 to 99. 2. The prefix and the suffix are seperated by a period in the middle. 3. The suffix is the Action name. The Action name can be anything you want. NOTE: the first letter of the Action name must be CAPITALIZED.
Default Animations There are two Actions that come standard in the IMVU avatars: Standing and Sitting. If you want your seat node to trigger either one of these standard Actions, you must use the following node names: Standing: seat01.Standing Sitting: seat01.Sitting
Unique Seat Numbers Although you may have up to 99 seats per Room or Furniture product, each seat number must be unique. This means that you may only have one seat01 per product. So, every seat node in your product skeleton needs to have a number that is different from any other seat number in the skeleton. NOTE: If you have two seat nodes in one skeleton that share the same number, then the IMVU code will only recognize one of them. So, if you recognize that a seat node is missing while testing your product, the culprit is probably that the seat has not been named correctly.
New Actions If you're interested in learning how to get a new avatar Action to show up in your product, click here to go to the Avatar Action Preview Tutorial.
IMVU is all about creating a place for people all over the world to meet up and express themselves, all within a virtual 3D environment. What your avatar wears is one form of self expression, but just as important is the place you choose to gather within. The IMVU Catalog offers a wide selection of Rooms, customizable 3D spaces created by fellow Developers, which act as the backdrop for an even wider array of furniture items to populate them with. There is no limit to what a Room can be, big or small, but there are some specific technical challenges to creating your own environmental product.
Examples of just a few of the many Rooms created by IMVU, inc. What is a Room? Rooms are very much like Avatar Clothing, Furniture, or Accessories, they are 3D products that can be purchased and “worn” by its owner. The main difference is that Rooms can contain your invited friends, exist as a persistent Public place, and act as the setting for an activity or game. During the early development of IMVU, three dimensional environments were what we now call “Locked Rooms”. These are spaces that came “pre-decorated” and did not allow their owners to add furniture or customize them in any way. Today, Rooms are empty shells waiting to be filled by their owners, or Bundled with products fitting to their theme.
Example of a Bundle containing Furniture products that compliment the Room theme What Makes Rooms Different? Rooms are not free roaming spaces, in fact Avatars, Furniture, and Rooms contain no collision information, so there is no way for an avatar to wander around inside a 3D Room, stand on a chair, or sit at a table by itself. Rooms and Furniture items include invisible Nodes where an Avatar can stand or sit, and these Nodes can be placed anywhere, in any number, and they can include triggers for Avatar Actions and animations. Nodes are hand placed by the developer responsible for the creation of the Room, and these can live in the floor, walls, and ceiling of your 3D space.
Examples of Room wireframes with Nodes in place. Note the Node boxes on the floors, walls and ceilings of each Room. Size Is Relative
The only limits to the size of a Room is its polygon count. Although it is possible to create a Room of any size, it is important to remember that the more polygons you have in your model, the slower the 3D software will run, especially on older computers. To be safe, try and be clever about where you use your polys.
Comparison of a small simplistic Room and a larger more detailed Room The same is true of the textures you use. Try and find a balance between detail/complexity and the file size of your finished Room. Be sure to visit the Furniture Tutorials to find out more about Furniture Nodes and other technical requirements specific to creating Rooms for IMVU.
Ever get frustrated when your IMVU camera gets stuck behind some 3D in-world pillar, or solid wall? Ever wish the wall could just magically disappear when your camera moved behind it, so it wouldn't obscure your view? Well it can, through the use of See-Through Nodes. See-Through Nodes are nodes that are Linked to the Root node of a Room or Furniture item which tells the camera not to draw any geometry Weighted to that node when the camera goes behind it.
For example, here is the IMVU Idol Furniture product. The IMVU Idol logo with lights looks great from the front, but if the camera moved behind it the view would be blocked by the logo, obscuring the avatars on stage. In this case the IMVU Idol logo and lights are saved as a separate Mesh and Weighted to a See-Through Node that tells the camera to no longer draw the logo when it moves behind it.
For See-Through Nodes to work, the part of your product you wish to disappear will need to be exported as a separate Mesh. Here we have built a test room that includes all solid walls. We have broken each segment into its own Mesh so each part will disappear when the camera rotates around the outside of the room, allowing visual access to the interior.
When assembled in your 3D application, the finished model will look something like this.
Once your Mesh segments are finished and textured, create individual Nodes for each segment and name them: SeeThrough01, SeeThrough02, SeeThrough03, etc. and Link each to the Root or Skeleton Node. Your eventual hierarchy should look something like this:
The “Z” Axis of each Node will need to face into the CENTER of your main model. This means that wall See-Through Nodes will need to face inward on their sides, and ceiling See-Through Nodes will need to angle (if ceiling slopes) to point towards the center of your model.
end your mesh with See-Through Nodes should look something like this. Export each mesh separately, then them into the IMVU Previewer. Once the .xsf file is loaded into the Previewer then it will do the rest and meshes that are linked to See-Through Nodes will disappear as your camera swivels behind them. This is ally handy when creating pillars, fireplaces, and thick walls in your model, but still desire freedom of ment for your camera.
We have spent several months creating tutorials for all the various steps used to create a product for the IMVU Catalog. Over time we realized that although we covered many of the mechanical steps used in the creation process, we haven’t yet talked about our artistic motivations, or many of the tricks we use along the way. We decided to create a series of tutorials that follow us through the process of creating several products, and we wanted to pay close attention to why we are making the choices we do along the way.
One of our many personal projects is to create a series of products that are thematically linked together. These would be a collection of “Rooms” that build upon each other and encouraged other developers to come “play” with us as we continued to add to that initial theme. For this particular project we are creating a Renaissance Faire venue for the placement of craft booths, guildhalls, games, and all the supporting props and costumes that might appear in a Faire setting. To do this we needed to create a consistent visual style and a way of working that would support our ultimate goal of building a series of places that felt like they belong together. Part of creating an integrated style meant that we had to work within the limits of what is achievable inside IMVU, but still push at the boundaries of what is artistically possible. Although we have been creating 3D products for several years now, we are always trying to stretch what we are capable of achieving, and expanding on the definition of what a virtual chat environment can be.
To being with, I wanted to create an outdoor setting that would give the illusion of being connected to a larger world than could easily exist within the polygon limits of what we consider a 3D Room product. To do this I had to build an environment that focused a lot of detail and complexity at its center and less at its distant edges. Rooms can be anything, but
they still are limited by how much geometry can be included within them.
I wanted to create an outdoor forest scene, one that gave the illusion that you were in the center of a Crossroads, with paths leading off in four directions. Later I will suggest that these various paths are going to eventually meet with other places (Rooms), but for now I had the challenge of making a natural setting with as few polygons as possible. This can be hard because natural places tend to feel asymmetrical and organic, and that is tough when you are limited to only a few thousand triangles to build with. I started with two Planes, one on top consisting of an 8x8 square grid, and one below made of 12x12 squares. Because I will be using the top layer to place furniture on, I need it to be perfectly flat. Although I "could" use only a one square grid for my flat plane, I wanted to include some soft vertex lighting on the ground surface and only additional geometry will allow that to work properly.
Selecting the lower 12x12 mesh, I pull up land masses through the upper mesh. I use a "soft selection" so that I don't have to pull each vertex up individually and massage as I go. Once I am happy with the look of these hills I can Attached the two planes to each other and delete any unnecessary geometry underneath.
When creating the textures for the terrain, I wanted to create a more organic transition that draws attention away from the hard edge that is created when the two geometry planes meet. To do this I created three textures, a tiling grass texture, a tiling dirt texture, and a transition texture (made using the previous two textures).
Note how relatively boring and flat the textures are... this is actually on purpose since textures with a lot of detail and contrast tend to create noticeable repeating patterns when tiled. I applied the tiled dirt texture to the flat plane, and the grass texture to the "hilly" plane, then individually applied the transition texture where the two planes meet. Although this takes a little more time to Map, the results are worth the effort. In this case I have suggested a slight mud embankment just below the grass in the transition texture. This does a better job of suggesting that the grass areas are elevated for a more naturalistic reason, rather than being merely two carpets meeting on an uneven surface.
The last thing I do is apply vertex shading to the terrain square. I do this by flooding the entire surface with a darker tint then erase highlight. This will suggest light falling through the leaves of the trees I will soon be placing. You can see why I added the additional geometry to the flat plane. If I had not the vertex shading would have not blended properly as it transitions from the rolling grass hills to the flat dirt areas.
Now it is time to create the trees. Like the terrain, I want to make sure that I get a lot of mood and variety without too much geometry. To do this I create some fairly simple cylinders with branches extending in several directions at the top. A lot of my detail will exist in the texture I apply to it, but I also want to make sure that some of the organic quality comes from the geometry as well. It can be really challenging to map textures to organic surfaces, so I will often apply my textures before I attempt to torque or twist my geometry. In the case of the trees, I made sure to map my vertical texture to the more symmetrical tree model and only after I was happy with how the textures were applied did I start grabbing sections of the tree and start twisting them around. This does stretch the textures a bit, but it also gives me a more organic result. To create variety in my forest of trees I will squash and stretch each duplicated tree trunk to give the illusion of variety. It is actually amazing how much diversity you can create with relatively little effort. I will also pull on the verts at the base of each trunk to better help it conform to the uneven surface of the hilly terrain.
Leaves on trees can be tricky. You want the illusion of density, but you also want to avoid creating something that includes too much geometry. To create the leave on my trees I started with a modular mesh that I could use to construct a variety of tree foliage types. This model consists of a solid central core (or pillow) and has "wings" extending from several of the hard edges.
I have created a base leaf texture and two opacity maps (each will be saved as their own material and .xrf file). The body of the leaves use the first mostly opaque opacity map, the second represents the edges of the leave clump. The goal here is to create something organic enough that it doesn't draw attention to the simple geometry that it is composed of. In the example on the left you can see what the finished clump of leaves looks like. Once the leaves are clustered over the trunk they will have a more realistic quality.
This final tree model is built using seven of the above leaf clusters. Although not completely realistic, it certainly does the job, especially as a background element in our environment.
Another even less geometry intensive option is to create a simple tree created with a bouquet of foliate flats. Although less elegant, these do the job of adding density to your forest with less cost than the cluster option. In my scene I use these as purely secondary filler objects that help break up the larger repeating tree trunks. Artistic Note This is a good time to talk about the artistic choices I am making in the building of my scene. Although I might have been able to find photographic reference for many of my textures, I have purposely chosen to paint all of my textures myself. One way to insure that all of the various pieces that go into your scene are cohesive is to have full control of both the color palette and eventual appearance of the final textures. It is also important to point out that my textures have a hierarchy of their own. You may have noticed that both the grass and dirt textures are really quite neutral, while the leaves and tree textures are more complex, in both color and contrast. This is completely on purpose. By deciding what will draw attention and what will fall into the background, I have more control over the actual experience of those
members visiting it!
Unlike a free-roaming virtual world like World of Warcraft, IMVU is made up of static settings, or "Rooms" where avatars can meet and socialize. You can think of these Rooms like theater or movie sets. For us to create large environments we need to suggest complexity in the distance without actually building that detail out of geometry. In the case of our Crossroads scene, all of our detail and complexity is at the center of the room, and all outlying areas are made up of backdrops or flats. I call this the "Salad Bowl Approach" where all the good stuff is in the middle and the surroundings are there as a container for that theme or experience.
Surrounding the inner environment I wanted to imply that the forest trees continue, but I didn't want to create it using reference that looks unlike the environments I have built for its center. To create the surrounding forest I rendered my central trees in various positions then created a 2D panorama in Photoshop. I generated an opacity map to allow you to view the sky backdrop, which comprises the outer wall of my scene.
For the sky, I have purposely created a warm and subtle backdrop that slowly scrolls. This is to create atmosphere without drawing attention to itself. I then set the Ambient and Fog settings to the same color range to give the illusion that the light created by the sky is effecting the entire environment.
With all the models built and textured, now we can add the Furniture Nodes. Since the only flat area of my model is the paths, I am going to limit my node placements to those areas. I "could" place nodes on the hills for additional tree products, but since the surface is uneven pretty much everything else placed on them will look awful. In the spirit of making the Room as nice looking as possible I have decided not to do that.
For Avatar Standing Nodes, I have just scattered a few on the path area. Since many furniture products include their own Avatar Nodes I will allow them to create additional places to stand or sit. I will also make sure to include lots of extra Avatar Standing Nodes with each prop I create for this new series.
Once everything comes together we can check to see if all of our ideas are working as we had planned. The colors should be complementary but not add so much variety that it becomes visually confusing. The detail of the tree trunks and leaves draw attention and the simple ground, grass, and sky textures visually support rather than complete. The fog and light settings are working well with the colors in the textures create a sense of depth and atmosphere. All the foreground elements contain just the right amount of detail and complexity with the background flats subtly suggesting this same complexity without having to create more geometry to achieve this look. All in all I think this works very nicely, and since this is ultimately just a backdrop for a lot of furniture items, it is a good start. Our next challenge is to create products that work well within this setting. We will also explore other ways to attain a similar effect but with different environmental colors and settings.
In IMVU, you can replace the default avatar clothing with clothing of your own design. HOW FRIGGIN COOL IS THAT?! You can make individual pieces of clothing, complete outfits or anything in between. Shirts. Pants. Fawn legs. Bear suits. Peg legs. The choices are limitless. However, building clothing is hard as it requires a patience and technical exactness that most other product types do not require. The two main reasons for this are simple: 1. There are hundreds of thousands of preexisting products that define how an avatar’s skin is supposed to be laid out. Customer expectation is that avatar skin will always be right so any deviation is viewed upon negatively. 2. As humans, we’re programmed to notice even the most subtle differences in anatomy and movement of that anatomy. Therefore, the movement of, say, the shoulder really matters to your customers’ end experience. While its true that building clothing is hard because you need to know how to model and map fairly well while, at the same time, you need to know how to use Physique fairly well, take comfort in the fact that thousands of IMVU content creators have done it. You can too!
Before jumping into building an avatar body part, please read the Introduction to Mesh Building Tutorial. What is a Body Pattern? Each avatar is made up of several, interconnected assets: A skeleton, several meshes, several materials and textures, and both triggered and idle animations. This patchwork of assets is called a ‘Body Pattern’. IMVU uses two main Body Patterns, the female (product 80) and the male (product 191).
...and a Body Part? Each mesh included in an avatar body pattern is called a ‘Body Part’. An avatar can be made up of any number of body parts. IMVU’s two main avatars are made up of ten body parts and each of them (or combinations of them) can be replaced by products found in the IMVU catalog. For example, if you want to change your hair, you just put on a new hair product. Under the hood, though, the original hair body part is being replaced with a new product that calls the same body part.
Override Body Parts on the default avatar A new piece of clothing is made visible by means of overriding a Body Part on the default avatar Body Pattern. For example, if you see a woman wearing a hoody sweatshirt in IMVU, it is because that hoody sweatshirt is overriding product 80’s Body Part number 2 (the ‘top’). The same is true when you see someone wearing a peg leg. The peg leg has no foot and so overrides both the leg (part 6) and the foot (part 8).
Body Part Override Every body part product (shirts, gloves, shoes, etc.) gets its override information from the Previewer. The Previewer is IMVU's proprietary product-making program. To learn more about the previewer, please go to the Previewer Introduction Tutorial. With the Previewer in Advanced mode, you can click on the Special tab. On the left side of the Special tab, you will see the 'Clothing Override BodyPart IDs' panel. Each numbered box represents a different body part.
Please remember that an avatar can only wear one instance of a body part ID. For example, if a pair of stockings is set to override body parts 6 and 7 and then your customer decides to put on a pair of eyelashes that also call body parts 6 and 7, the stockings will be removed to make way for the newly applied eyelashes. Note: You can override multiple body parts or no body parts. Knowing this can influence what you decide to build. An example of overwriting multiple body parts would be if you wanted to could build a peg leg. You could do so by overriding both the foot and the leg with one product. At the same time, it can be useful to override no body parts. For example, If you wanted to keep your outfit on but also wanted to add a trench coat - you could do that if the trench coat did not override any body parts. What Parts Can Change? The IMVU avatars allow you to change the following body parts: 0. Head 1. Hair 2. Upper Body 3. Right Hand 4. Left Hand 5. Pelvis 6. Right Leg 7. Left Leg 8. Right Foot 9. Left Foot Simply by checking the box next to a number in the 'Clothing Override BodyPart IDs' panel, those body parts will disappear. Then, you will need to add new geometry to be inserted for the overriden body parts. To learn how to add geometry in the Previewer, please go to the Previewer: Geometry Tab Tutorial.
Get the Weighting Files
Female Weighting File Male Weighting File
To build new clothing, hairstyle and head geometry for the IMVU avatars, you need to begin with an avatar that is positioned in the 'weighting pose'. A file for both the female and male is supplied to the left. These ZIP files contain a MAX file for use in 3DS MAX, textures that are applied to that file and a previously exported skeleton .xsf file. All of these files will come in handy later when using the Previewer.
New Avatars Considering that completely new avatar products will not work across all Furniture, Rooms, Head and Action menu items, we will not be covering how to build your own entirely new avatar from scratch in these tutorials. One skeleton - two bodies The IMVU female and male avatar use the exact same skeleton. This means you only need on skeleton .xsf file in order to export geometry for both the male and female. However, the shapes of the two bodies are quite different. What's more, their weighting poses (or, the position of the skeleton bones when the geometry is exported) are different. So, please remember that, should you build a cool jacket for the male that you want to port to the female, you will essentially have to rebuild the mesh and redo the weighting. Otherwise, the boundary vertices will look broken when applied in IMVU.
What's with the Glasses, yo? The same weighting files used for building Body Parts are used for building Accessories. The glasses included in the weighting files are there to help Creators learn how an Accessory needs to be teched. Note that the Glasses are weighted to a skeleton that is different from the Avatar skeleton. If you are building a new body part and are distracted by the Glasses and Accessory bones, please feel free to delete them. To learn more, please go to the Avatar Accessories Tutorial.
Geometric Complexity A body part can be as simple as one polygon, if you so choose. It can also contain as many or as few morph targets as you like. The IMVU body parts supplied in the weighting files can be pushed and pulled to become a wide variety of shapes while still maintaining the same mapping across problem areas (like shoulders and hips). Note: By using the supplied body parts, you also get the peace of mind of knowing that other products like skin will work with your product too.
Budgets Download and runtime file size is an issue that should be kept in mind whenever designing for IMVU. If your Head’s file size is too big, it is unlikely that your potential customer will purchase and download it and, if they do, there is a very high chance that they will review your product poorly and your sales will go down. Therefore, it is good practice to try to keep the texture size, vertex/face count of your meshes and animation length down to the bare minimum. There really is no reason to have a 256x256 texture for a button on a shirt: it just won’t be seen in the IMVU messenger. In fact, we have found that the smaller the texture, the BETTER it looks in IMVU. Go figure. Also, please know that IMVU automatically resizes assets that are too large or teched incorrectly. To learn more, please go to the Mapping Materials Tutorial. Helpful Embedded Animation Embedded in both example files is an avatar animation that moves every bone in the body. It even moves the Pelvis away from the Root node. This animation is meant to help you perfect the weighting on your mesh. To learn more about skeletal animation, please go to the Skeletal Animation Tutorial.
NOTE: While it is important to keep your avatar skeleton in the default position included in the example files, you can quickly get the vertex weighting just right by adjusting the weights on the animated avatar. For example, if you wanted to make sure your shoulder weighting was correct, just move the animation slider over until
the shoulders move to their end key frame. Then, simply dial in the weighting on your shoulder vertices one by one and get it PERFECT. To learn more about weighting in Physique, please go to the Weighting with Physique Tutorial. Please remember to put the animation slider back to zero when exporting your mesh. Any deviation from the master position will result in a dark alley visit from Mr. Scary McNastiness. Boundary Vertices? A vertex is a point on a 3D mesh. The space between vertices is called 'geometry' and that geometry is what is drawn on screen when you're chatting in IMVU. A boundary is defined as the open ends of a mesh where it is meant to meet up with connecting parts. So, the vertices that live along the boundaries of a body part are called 'boundary verts'. For example, an avatar top product has boundary verts along the neck (where it connects to the head), waste (where it connects to the lower body) and wrists (where it connects to the hands). Each boundary vert needs to be placed in the exact same location as its neighboring body part. What's more, each boundary vert needs to be weighted the exact same way as its neighboring part. Otherwise, you get nasty seams in the messenger. Note: This 'nasty seams' business is actually very important. When new geometry does not work well with existing clothes, customers complain and the overall sales of that Creator are hurt. So, take the time to get your placement and weighting right on your boundary verts. It really matters.
Oh, Snap! To get the boundary verts of two connecting pieces to be in the EXACT same location, just click the move icon and then click on the Snaps Toggle tool. Now, you can click on one of the verts in your mesh and drag it towards its destination. This will, as they say, ‘snap’ the vertex to the exact same 3D space as another vertex. Note: Please make sure you only snap the verts of the mesh you are working on. For example, if you’re building a new glove, make sure that you only move the vertices of your glove to the exact location of the wrist verts on the avatar top. In the case of the glove, if you move the verts of the wrist on the ‘top’ body part, you will end up with a hole in your wrist when the glove finally shows up in IMVU. As they say in northern Siberia, "Yuck."
Match the Skeleton The Female and Male IMVU avatars use the same skeleton. This is to aide in animation portability as well as cooperative animation construction. The exported version of this skeleton, Female04_Anime01_SkeletonMASTER.xsf, is included in the example ZIP files mentioned above. Although it is true that you can build your own avatar (complete with unique skeleton), most people utilize the enormous market that the existing body definitions represent. Consequently, most people will want to use the existing skeleton as the basis for their clothing. While building your mesh, please take care to note the placement of the actual joints of the IMVU skeleton and built your joints in the same general area. This will save you a lot of time later when weighting your mesh.
Material IDs and Mapping Although IMVU covers the basics of Material IDs and Mapping in the Mapping Materials Tutorial, there are enough
avatar-specific mapping tips to warrant their own tutorial. To learn more, please go to the Avatar Material IDs and Texture Mapping Tutorial.
Use IMVU's Skin Mapping If you are building a body part that is meant to work seamlessly with the rest of products in the IMVU catalog, please remember to use the texture mapping already embedded in the meshes supplied in the master weighting files. As mentioned above, IMVU users expect their skin texture products to work perfectly across all clothing meshes. When their skin texture products do not work perfectly, they get upset, leave bad reviews and spread the word that your products are unreliable. So, please err on the side of delighting your customers and use the texture mapping IMVU has already lovingly built for you. To the left is the 256x512 plaid texture we use to make sure that our mapping is near perfect. When this texture is applied to the avatar body in MAX, the horizontal and vertical lines are drawn as near straight as possible. This should allow you to more easily see how the skin on your new meshes is mapped and, more importantly, whether or not it matches what is on the master meshes.
Weight the Mesh. With your body part completely built, it is time to weight it. 'Weighting' means that each vertex in a mesh knows which bone it ought to move with. If a mesh isn't weighted, it won't show up in IMVU. Aside from hair, all body parts must use the Physique weighting modifier in MAX. To learn more, please go to the Weighting Using Skin Tutorial and the Weighting Using Physique Tutorial.
Export .xmf All body parts intended for use on the IMVU avatars use the same skeleton. This means that no matter what body part you are creating, you can use the 'Female04_Anime01_SkeletonMASTER.xsf' skeleton file that comes in the master weighting ZIP files. Just follow the export steps for exporting a mesh .xmf file as usual (to learn more, check out the Export the Mesh - .xmf Tutorial.) Then, when prompted for the skeleton, browse to the 'Female04_Anime01_SkeletonMASTER.xsf' skeleton file and then click OK until the mesh is exported. Remember: you must manually add the '.xmf' at the end of your asset name or you will end up exporting a useless .cmf file.
Relevant Links While most of the tips above apply to most of the body parts you can build, there are other tutorials that are recommended. Check 'em out:
Ah, hair. Long, lustrous hair. Short, curly hair. Bouyant hair. Striking hair. Attitude. Style. Chickens. OK....not so much with the chickens. Hair is one of the most defining characteristics of an avatar. Arguably more so than any other characteristic (of human avatars, anyway). In IMVU, you have the power to create your own hairstyles - anything you can think of. Mohawks. Bobs. Crew cuts. Ponytails. Your only limitation is your imagination. Building beautiful hair is truly an art form. On top of that, there is some technical skill required. For example, you need to know how to build in 3D, build textures, map those textures and weight the mesh. Therefore, building hair should not be considered 'easy'. That said, once you do it a few times, you will see that it can be one of the easiest body parts to create. While many of the basics of hair construction are shared with other body part creation tutorials, there are enough specifics to warrant its own tutorial. This tutorial will walk you through the essentials of building Hair and Hats. For the purposes of this tutorial, we assume you have read the Avatar Body Parts Introduction, the Weighting in Phsyique Tutorial, the Export the Mesh - .xmf Tutorial, the Export Materials - .xrf Tutorial and the Previewer Introduction. Get the example files We assume you have already read the Avatar Body Parts Introduction and therefore know where to get the default weighting avatars. If for some CRAZY reason you didn't get them then, you can get the Female Weighting File here and the Male Weighting File here. With one of these files open, zoom into the avatar head and select the hair mesh. Remember: you can build your own mesh at any time during this tutorial.
Build to the Head With the hair mesh selected, you can see how it conforms to the shape of the avatar head underneath. The default avatar heads in IMVU are of an enlarged, anime style. All of the accessories and hairstyles in the catalog have been built to fit these default heads. If you want your hair product to work across most of the IMVU avatar heads in the catalog, then your hair mesh should be built to fit the default avatar head embedded in the master weighting files. Basically, in MAX, your hair will look enormous in order for it to fit the original head. This is OK, though, as the size of the head varies across products due to the mesh scale feature. To learn more, please check out the Mesh Scale Tutorial.
Ears & Neck If you are making a long hairstyle, that is meant to cover the ears & neck, then you can move on to the next section. If you need to wrap around the ears & neck for any reason, then read on. Although you are free to use your own shapes, the shape of the hair around the ears & neck typically fits snugly to the head mesh. This is really handy as this means you can avoid 'Z fighting' along those edges.
Z Fighting? When two polygons live very close together in 3D space, rendering engines have a tough time deciding which to draw first. The result is an annoying, shimmering effect. This looks especially bad on products that interface with an avatar head as that is what most people are looking at when chatting. To avoid Z fighting, you can snap your hair verts to the same exact location as the head verts.
Two Materials As you know from reading the Avatar Body Parts Introduction, one Body Part can contain multiple materials. For example, the avatar head contains both the head skin, eyes, eyebrows and eyelashes. Hair meshes can contain two materials: one for Hair and one for Hat. Obviously, you can use these two materials however you like on the body part that is meant to override the hair slot. Said another way, you could use the 'Hat' material for a hairclip...or antennae....or a helmet...or a chicken antennae hairclip helmet...thing.
To see the materials in MAX, open the material editor and use the eyedropper to select the avatar's multi-sub material. The material ID for Hair is ID 5 [4] and the material ID for Hat is ID 11 [10]. To learn why I wrote the [brackets] above, please check out the Avatar Materials Tutorial Budgets Please remember to keep the polygon count of your hair down to as low as possible (while still looking like what you intended to build). One of the biggest complaints IMVU recieves is about the time it takes to load a scene that contains avatars with big hair (no Jersey jokes). IMVU will no doubt have to take action against such products in the future. Don't let your products get procedurally reduced! Please keep your hair products small.
Hats Amore! Although a hair body part is made up of one body part ID, it can contain a hat as well. Think of it as one product that contains both hair and hat. This is handy for things like helmets as you can force the avatar to not wear the spikey mohawk when wearing the helmet.
Mapping Once you have built your mesh, it is time to map it. To learn more, please go to the Avatar Materials and Texture Mapping Tutorial. There are some Hair-specific mapping points you should know as well. The most important is that it is a very, very good idea to spend time getting the mapping on your hair to be as highly customizable as possible. This means that the mapping on your hair is detailed and refined. You could apply a plaid texture to it and see each vertical and horizontal line evenly applied to the whole mesh. Giving your future derivers the ability to expand on the details in this way ensures a highly derived product and, therefore, more sales. Another important material-related thing you ought to know concerns opacity maps. To learn more, please go to the Opacity Maps Tutorial. To sum it all up, though, you must understand that if you use an opacity map on your Hair body part, then you run the risk of having that hair disappear in some circumstances due to an IMVU opacity bug.
Weighting Use 'Skin' for solid masses Once you hair mesh is built the way you like it and mapped to allow other creators to easily create textures for it, it is time to 'weight' it. For hairstyles that are meant to move entirely with the head, we recommend that you use the 'Skin' weighting modifier in MAX. To learn more, please go to the Weight a Mesh Tutorial.
Weighting Use 'Physique' for the Rest If your hair is meant to move partially with the head and partially with other parts of the body, you will need to use the 'Physique' weighting modifier in MAX. To learn more, please go to the Weighting in Phsyique Tutorial.
Export .xmf Once you have a mapped and weighted mesh, you can export it. Choose the export option in the File menu, browse to the 'Cal3D Mesh File (*.CMF, *.XMF)' option and name your mesh. Remember: you must manually add the '.xmf' at the end of your asset name or you will end up exporting a useless .cmf file. In the
Previewer - Body Part Override Open the Previewer and choose to derive from product 10866 for Female hair and product 344 for Male hair. As you no doubt remember from the Avatar Body Parts Introduction., the 'Special' tab in the Previewer contains the Clothing Override Body Part IDs panel. The body part to override in the Previewer is '1'. NOTE: You will not actually need to make any changes to this panel if you are deriving from an existing hair product.
Previewer - Add Mesh In the 'Geometry' tab, browse for your newly exported .xmf file. and hit the Apply Changes button. Your new mesh should appear with the existing material applied to it. If this is the case, move on to the next step. If this is not the case, then something went wrong in the export process. If so, you will need to check: 1. the weighting in MAX (is the skin/physique modifier turned on? Are the vertices weighted?) 2. the skeleton .xsf file (did you use the 'Female04_Anime01_SkeletonMASTER.xsf' file supplied in the ZIP files?) 3. the exported asset's file type (it should be '.xmf' - not .cmf or anything else)
Previewer - Add Textures In the 'Materials' tab, you can browse to add a new material .xrf file if you exported one. 99.99% of the time, you do not have to export your own material file as the one included in the default avatar should suffice. You really only want new textures to show up anyway so just click on the diffuse (color) texture to change it to your new texture. Remember: If you want to change the opacity map, you must click on the Opacity link in the 'Material Maps - Click to preview' panel. To learn more about opacity maps please go to the Opacity Maps Tutorial.
Previewer - Save & Submit Save this product and submit it. Voila! You have created a skin tight composite mesh that can be derived from by thousands of painter Developers from around the world.
In 3D, a 'Material' is essentially just a collection of data. The particular data contained in a Material all revolve around a texture. What is the name of the material? What texture is contained? Are there multiple textures (in the case of an opacity map)? What material ID is that texture supposed to be applied to? Is any ambient lighting applied to the material? Is the material two sided (ie - can it be seen when viewing both sides of a polygon)? Several of the bits of Material data that are useful in 3DS MAX do not translate directly into the Previewer. Rather, you have to specifically choose things like 'two-sided' in the Material properties in the Previewer. As mentioned above, each Material contains a texture. However, the Material does not dictate how that texture is applied to a mesh. That is handled with some sort of 'Mapping' tool. When IMVU refers to a "mapping a texture" we mean that the mesh knows what Material ID goes where and how the textures are actually applied across the surface of that mesh. Assumptions This tutorial assumes that you are using 3D Studio MAX. It also assumes that you are using the files found in either the Male03 _Anime01 _WeightingPoseMASTER.max that is found in Female Weighting File or the Male03 _Anime01 _WeightingPoseMASTER.max that is found in Male Weighting File This tutorial also assumes that you have already selected the male head mesh, applied the Physique modifier and Initialized it. This tutorial *also* assume that you have read the Introduction to Avatar Clothing and the Mapping Materials Tutorial.
Select Faces The original IMVU body parts come with a multi-sub material applied to them. If you are building a body part that is meant to work with the existing skin products in the catalog, please stick to the material IDs provided in the MAX file. That way, you won’t have to export new material (xrf) files for your new body part – all of the textures will just work! If you are using the body parts provided in the Example files as a starting point for your new body part, you will need to remap the textures. This is easy. Once you’re happy with the geometry, select the faces of your body part whose texture mapping you want to change.
UVW Map With your geometry selected, add a “UVW Map” modifier to it in the ‘Modify’ stack on the right hand side of the screen. When you add the modifier, the list of options at your immediate disposal are centered around texture mapping. Click around on the Mapping Parameters like Planar, Cylindrical or Box to see how that effects the Mapping gizmo that is now displayed on your mesh. Also make sure to play with the X, Y, Z buttons and the Tiling and Flip boxes.
Use IMVU's Skin Mapping If you are building a body part that is meant to work seamlessly with the rest of products in the IMVU catalog, please remember to use the texture mapping already embedded in the meshes supplied in the master weighting files. As mentioned above, IMVU users expect their skin texture products to work perfectly across all clothing meshes. When their skin texture products do not work perfectly, they get upset, leave bad reviews and spread the word that your products are unreliable. So, please err on the side of delighting your customers and use the texture mapping IMVU has already lovingly built for you. To the left is the 256x512 plaid texture we use to make sure that our mapping is near perfect. When this texture is applied to the avatar body in MAX, the horizontal and vertical lines are drawn as near straight as possible. This should allos you to more easily see how the skin on your new meshes is mapped and, more importantly, whether or not it matches what is on the master meshes.
Unwrap UVW When you have arrived at the base Mapping modifications that you are happy with, it is time to dig into the details. Click the Unwrap UVWs button.
Unwrap UVW - Click Edit When you Apply the IVW modifier, an ‘Edit’ button will appear under the ‘Parameters’ section. Click that button.
Edit UVWs Click that ‘Edit’ button and the Edit UVWs screen will pop up. Just select points or groups of points and move them around as you like. You can zoom in as close as you like to make sure the textures line up right.
Unwrap settings I typically have the Edit UVWs window options customized to allow me to see the adjustments I make in real time on the mesh. SUPER handy. Below is a shot of all of my unwrap settings.
Mapping your materials Please note, IMVU supplies you with a perfectly working sub-material to use with your body parts. This sub-material contains skin, eyes, and eyebrows already set up for you. Although you may create your own mutli-subs for your head, IMVU recommends you use the embedded ones for your first pass at head building. Texture mapping in any 3D program is an art all its own. However, there are a few IMVU specific things that you ought to know before you can export. First up, when you are ready to export, you are meant to have only one (1) material that is a multi-sub material. Within the multi-sub material, you may have as many material ids as you like.
One, Multi-Sub Material If you are using MAX, you may only have one material on your model. This material can contain as many sub-materials as you like and can therefore be a “Multi-Sub” material. If you are using another 3D program, it is likely that you will have to have separate top level materials. This may result in your needing to have more meshes than described in this document.
Material Naming Convention When creating your materials for IMVU products, you must follow a simple numerical naming convention in order for your textures to show up in the previewer. Each material name must contain a bracketed number at the end of the name. For example: FrogTexture [2] The number contained in the brackets is always one number less than the material index in MAX. Therefore, every time you have a material in index 1 in MAX, that material's name must contain [0] at the end of its name. If the index is 6, the convention is [5]. If the material is 10, the convention is [9] and so on. It is actually pretty easy once you know what to do. It is also easy to forget if you've never done it before. Very easy. Another thing to consider when naming your sub-materials is that they need to be consecutively numbered. You cannot have four sub-materials number [0], [2], [7], [22]. If you have four sub-materials, those materials must be numbered [0], [1], [2], [3]. Otherwise, you will end up with a product that will eventually not load. Avatar Material Assignments The IMVU avatar comes with a preset number of Materials. Each Material has a unique ID as per the naming convention listed above. These IDs are used in the active IMVU avatar so please try to follow them when building your mesh. Here is the list: Material 0 = UpperBody Material 1 = LowerBody Material 2 = Head (skin) Material 3 = Eyes Material 4 = Hair Material 5 = Eyelashes Material 6 = Eyebrows Material 7 = Skin Material 8 = Shoes Material 9 = Gloves Material 10 = Hat
Reminder: Texture Budgets Although you should review the Mapping Materials Tutorial, I just want to remind you to keep the following list in mind when creating your textures for IMVU products:
No texture should be greater than 512x512 pixels (this is actually a very helpful guideline as the larger your texture, the worse it looks in the IMVU window. This is due to IMVU having to cram all of your texture information into just a few pixels. Better to play it safe and keep your texture small and, surprisingly, more legible) In the IMVU rendering engine, it is far better to have many small textures rather than one big texture. This runs contrary to many other engines wherein puzzle-like texture collages are used to save rendering budget. Although we haven't hit a tiling limit yet, it is recommended that you keep your tiling down to 40 or so times. .jpg is the file type of choice. There are a plethora of file types that we support but we have found .jpg to be both the best tasting and most filling.
Smoothing Groups To avoid geometrical looking meshes in IMVU, it is important to make sure that all of the smoothing groups for a given mesh are set up properly. To learn more, please go to the Smoothing Groups Tutorial.
Morph Targets You can build a morph target for any mesh in IMVU. However, morph targets are not necessary for creating body parts. To learn more, please go to the Morph Targets Tutorial. To learn more about building Avatar Heads, please go to the Avatar Heads Tutorial.
Export Mesh - .xmf Once you have built your mesh, applied Material IDs, mapped your texture and weighted your mesh, it is time to export your mesh. When building any other type of mesh product, you would also export your materials. However, avatar products use the materials that have already been exported by IMVU. In fact, when you build your final product, it is highly likely that you will not be overriding the materials at all. Rather, it is highly likely that you will only change the mesh and textures. To learn more about exporting any Mesh in IMVU, please go to the Exporting Introduction and the Exprting the Mesh .xmf Tutorial.
Previewer Once you have an exported .xmf file, it is time to hop into the Previewer. To learn more, pleae check out the Previewer Introduction and the Avatar Body Part Previewer Tutorial.
'Composite skin' is the technical name for an item of clothing that is skin tight but does not override the skin texture. This allows IMVU users to change skintight items while keeping their underlying skin texture on and thus still being 'them'. Even better, it allows IMVU Creators to create clothing items simply by painting them on as opposed to having to mesh, map, weight and export their own entirely new geometries. As you can imagine, composite skin products deliver a pretty broad canvas to those Creators who are better painters than builders. There really is no special magic involved. Although it might be a bit confusing as to why we built the functionality this way, it works and we are sticking with it! ha. For the purposes of this tutorial, we assume you have read the Avatar Body Parts Introduction, the Weighting in Phsyique Tutorial, the Export the Mesh - .xmf Tutorial, the Export Materials - .xrf Tutorial and the Previewer Introduction.
Build Mesh - Select the Mesh We assume you have already read the Avatar Body Parts Introduction and therefore know where to get the default weighting avatars. No? You don't remember? Fine. You can get the Female Weighting File here and the Male Weighting File here. With one of these files open, select the body part you wish to export, then select the Edit Poly modifier that already exists in the stack. Remember: you can build one mesh that covers the entire avatar body. This will require new weighting but it can be done.
Build Mesh Select All Polygons in That Mesh In face select mode, select all of the faces of the mesh.
Build Mesh - Change Material ID Change all of the material IDs on the mesh to material ID 1 - which is the UpperBody [0] material slot.
Build Mesh - Weight & Export Weight the mesh using Phyqisue. To learn how to do this, please go to the Weighting in Phsyique Tutorial.
With the mesh selected (it should turn white in wireframe mode), choose Export in the file menu, scroll to the .xmf file format, name your mesh file, click save, choose the avatar skeleton file that comes in the ZIP files found in step 1 and then click next/finish until there are no Cal3D windows visible. TIP: to avoid confusion with other Developers' products and therefore to avoid copyright infringement issues, please give your .xmf file a name that is easily recognizable as coming from you.
Build Mesh - Make Two Textures In an image editor like Photoshop, create a diffuse (opaque/color) texture and an opacity/alpha texture that match the size of the avatar's skin texture. This texture can be either 128x256 or 256x512. So, using an avatar skin texture as a guide, you should make two separate textures: a diffuse texture and an opacity texture. To learn more about where to download avatar skin textures, please go to the Textures Introduction. To learn more about opacity maps, please go to the Opacity Maps Tutorial.
Create Material - Launch Material Editor In MAX, open the material editor, use the eyedropper to select the avatar's multi-sub material and then open the ID 1/UpperBody [0] sub-material - this is the upperbody submaterial.
Create Material - Add Diffuse Map Click on 'diffuse' and browse for your newly created diffuse texture. Then hit the back button on the material editor to get back to the ID 1/UpperBody [0] main area.
Create Material - Add Opacity Map Click on the button that says 'none' next to the word 'opacity' for this sub-material. In the dialog that appears, double click on the top option, 'Bitmap', and browse for your newly opacity map. Now close the Material editor. To learn more, go to the Opacity Map Tutorial. Create Material - Export .xrf Select nothing in the main MAX window, choose Export, scroll to the .xrf file format, name your material file, choose the material named 'UpperBody [0]' and click next/finish until there are no Cal3D windows visible.
Previewer - Derive We assume you have already read the Previewer Introduction. Open the Previewer and create a derived product. If you are making a Female skintight, composite mesh, choose to derive from product167. If you're making a Male mesh, choose to derive from product185.
Previewer - Override Body Parts In the 'Special' tab, choose which body part you want your mesh to replace. To learn more about Body Part replacement, go to the Avatar Body Parts Introduction.
Previewer - Add Mesh .xmf In the 'Geometry' tab, browse for your newly exported .xmf file. and hit the Apply Changes button. Your new mesh should appear with the existing material applied to it. If this is the case, move on to the next step. If this is not the case, then something went wrong in the export process. If so, you will need to check: 1. the weighting in MAX (is the physique modifier turned on? Are the vertices weighted?) 2. the skeleton .xsf file (did you use the 'Female04_Anime01_SkeletonMASTER.xsf' file supplied in the ZIP files?) 3. the exported asset's file type (it should be '.xmf' - not .cmf or anything else) Remember: If you want to use multiple body parts (ie - if you want to override both the Top and the Pelvis), you must add .xmf files for each body part you want to override. To do add multiple body parts to a product, click the 'Add' button in the Specified Body Parts panel and choose which ID you wish the new mesh to occupy.
Previewer - Add Material .xrf Under the 'Materials' tab, browse for your newly created .xrf file in the Material 0 panel and hit the Apply Changes button. Your new mesh will show up without any textures. That's OK - now you just have to add them. Browse for the textures you used when exporting your xrf file and hit apply changes. Your textures should now be visible on the mesh. Note: Please remember to add a texture for both the Diffuse and Opacity texture channels.
Previewer - Save & Submit
Save this product and submit it. Voila! You have created a skin tight composite mesh that can be derived from by thousands of painter Developers from around the world.
OK....this tutorial looks *eerily* like the Weighting in Physique Tutorial. Yes. We know. That is because they are the same thing. However, we figured that it would be easier for female head builders to find this way. Enjoy. A mesh does not know how to move with a skeleton unless the vertices of that mesh are 'weighted' to a bone in the skeleton. If a mesh is not 'weighted', then it will not show up in IMVU as it simply won't know what it ought to attach to. The most common ways to 'weight' a mesh in 3DS MAX are by using the Skin modifier or the Physique modifier. Each of these modifiers tells a vertex which bone it ought to move with. The Skin modifier is the easiest to use but is the most limited. Therefore, it is mostly used for meshes that do not have organic movement - ie. Furniture, Rooms, Accessories, Modicons.
Avatar Heads, Clothing and Pets, on the other hand, typically require more organic movement. Said another way, an avatar head needs to move with both the head bone and also the neck bones below it. In this case, you would use the Physique modifier. Physique is harder to use than Skin but allows for a much finer degree of control. For the purposes of this tutorial, we will be weighting the female avatar head. However, the process described in this tutorial may be applied to any product type. IMPORTANT NOTE: In the case of any product type, please remember not to mistakenly move any bones in the product's skeleton. For example, in the case of an avatar Head mesh, the Head bone must be in the default orientation (ie, the exact same position and rotation as the original, MASTER animation file) when the parent mesh is exported or your head will look broken when applied in the Previewer. Also note: If you want to learn more about weighting the Male avatar head, specifically, please read through this tutorial and then check out the Male Head Weighting Tutorial. Select the Mesh In the case of the female avatar head, the Female04 _Anime01 _WeightingPoseMASTER.max file that is found in FemaleWeighting.ZIP already contains Physique weighting information. However, we are going to pretend like we are building a new head and need to assign a new Physique modifier to that new head. Once you have finished building the geometry, assigning the material IDs, mapping the textures, and building the morph targets, its a good time to add Physique. The first thing to do is select your Parent Mesh.
Add Physique With your Parent Mesh selected, add a Physique modifier to it (if you don't have Physique in your set of buttons, you can add it by clicking the setup button in the stack).
Attach to node Once you have added a Physique Modifier to your mesh, its time to get it set up for editing. Click the 'Attach to node' button in the physique panel.
Select the Parent Object The next thing to do is pick the bone in the skeleton that will drive the weighting information. This implies that the skeleton you are working with has been set up to work with Physique. The IMVU avatar skeleton works great - so don't sweat making Heads or Clothing. However, if you must know ("I must. I must"), a skeleton for use with Physique needs an extra bone at the end of every chain in the hierarchy. For example, this is why the 'xTipBone33' bone lives just below the 'Head' bone in the IMVU skeleton hierarchy. Anywho, although you *can* just click on the bone in the scene, it is possible to mistakenly click on another bone or mesh by accident. So, I never take chances and, instead, just click the 'select by name' button
Pick Object Dialog Box In a properly teched skeleton, there will be a bone that lives between the Root bone all other bones. In the case of the IMVU avatar, this is the Pelvis bone. Pick the Pelvis bone in the list and then click the 'Pick' button.
Initialize When you click the Pick button, the 'Physique Initialization' dialog box will appear. This is the place where you set the overall properties of your Physique modifier. There are a few settings that ought to be considered when using Physique. Although playing with the settings is always a good idea, I recommend you do the following: 1. Under Vertex - Link Assignment, check 'Rigid' 2. For Blending Between Links, choose 'No Blending' 3. For Radial Falloff Envelopes, uncheck 'Create Envelopes'. 4. expand the Link Settings and uncheck 'Continuity'. Then, click 'Initialize'.
Vertex Edit mode With your Physique modifier initialized, enter Vertex edit mode in the modifier stack. Typically, simply editing this mode also puts you in 'Select' mode as well. This is good. You want to be in 'Select' mode as you are about to select vertices in the mesh.
Select Vertices In the case of the avatar head, it is always handy to select vertices from either the left or right hand view. The first vertices you are going to select are the ones you want to weight to the head bone. So, you select all of the vertices of the head *except* the ones that you want to move with, say, the neck. Said in a way that applies to all meshes, you want to select all of the vertices that will be weighted to a given bone...and no others. When you first enter Select mode, all of the vertices appear as white plus signs (using the default MAX weighting color set up). The plus sign means that the vertex is 'open' or that it doesn't yet have weighting information. When you select a vertex that has no weighting information, it turns blue.
Assign to Link Once you have all of the correct vertices selected, click the 'Assign to Link' button. Hover your mouse over the link you want to weight your vertices to. The link is the thin red or yellow line that travels througout the skeleton - from bone to bone. When you hover your mouse over, say, the Head bone, it will change to a cross hairs. This means that there is a link available to assign to. Click on the Head link.
Red = assigned
All of the vertices that you had selected should now have turned red. This means they have weighting assignments. However, they're not weighted yet.
Lock Assignments With a link assigned to your verts, its time to lock those assignments. So, click the 'Lock assignments' button and note how all of the red plus signs become red squares. Those vertices are now weighted. Now you know how to weight vertices to one link using the Physique modifier. Aw yeah.
Select Again Now click the 'Select' button and select all of the neck verts. Just like you did with the first set of verts, click 'Assign to Link'. However, this time, select the next link down from the Head bone, the Neck04 link, and then click 'Lock Assignments'.
Type-In Weights In contrast to the last batch of weighting you did on the Head vertices, the Neck vertices are going to be weighted to more than one bone. This means that they will be influenced by the movement of both bones you weight it to. Essentially, this is the power of Physique. Click the 'Type In Weights' button.
Type-In Weights Dialog Box In the dialog that follows, click to show All Links, click on the Head bone listing and then drag the Weight slider up to 1.0. Note: The 'Neck04' bone is already set to '1.0' because you just weighted the selected vertices to that link. You have just set the neck vertices to have the same weighting as all of the corresponding neck vertices in the female avatar tops: Head: 1.0 Neck04: 1.0 This means that your head will work seamlessly with all of those tops (ie, not tear. Yuck.) Of course, it is still possible that someone out there made their top wrong... When you're done setting the weights on the selected vertices, just close the Typ-In Weights dialog box.
Test, Iterate and Export Close the Type in Weights dialog and click on the top level Physique modifier in the stack to get out of vertex edit mode. Grab the head bone and rotate it around to see how your head moves. The head should feel like a solid mass moving with the Head bone - no part of it should be mis-shaped. The neck should move slightly with the Head bone. If you see any vertices that do not move with the head bone, then they were not weighted correctly or at all. Go back, select those verts and weight them using the process above. If all looks good, you have completed weighting the head and you can export. To learn more about exporting a mesh .xmf file, please go the Exporting the Mesh - .xmf Tutorial.
This tutorial is an extension of another tutorial that is required reading in order to understand what we're talking about. To learn more, please go to the Female Heads Tutorial. This tutorial deals with minutia associated with weighting the Male avatar head.
IMPORTANT NOTE: In the case of any product type, please remember not to mistakenly move any bones in the product's skeleton. For example, in the case of an avatar Head mesh, the Head bone must be in the default orientation (ie, the exact same position and rotation as the original, MASTER animation file) when the parent mesh is exported or your head will look broken when applied in the Previewer. Assumptions This tutorial assumes that you are using the Male03 _Anime01 _WeightingPoseMASTER.max that is found in MaleWeightingMaster.ZIP This tutorial also assumes that you have already selected the male head mesh, applied the Physique modifier and Initialized it.
Main Head Verts The Male head sits on the skeleton a bit differently than the Female and therefore requires somewhat different weighting. First, select the head verts just as you did in the Female Heads Tutorial/Physique Tutorial and assign them to the Head link. Remember to click the 'Lock Assignements' button to actually weight the selected vertices.
Mid Neck Verts Then, select the mid neck verts and assign them to the Head link. Then, click Lock Assignements to weight the selected vertices.
Type-In Weights Click the 'Type-In Weights' button to bring up the Type-In Weights dialog box. Choose to show 'All Links', click on the 'Neck04' and drag the Weight up to 1.0. This will weight the mid neck verts 100% to both the Head and Neck04 links. Essentially, this allows for a much more believable twist in the neck as the head looks around in IMVU.
Bottom Neck Verts Now, select the bottom verts along the neck line and assign them to the Neck03 link. Then, click Lock Assignements to weight the selected vertices.
Test, Iterate and Export Close the Type in Weights dialog and click on the top level Physique modifier in the stack to get out of vertex edit mode. Grab the head bone and rotate it around to see how your head moves. The head should feel like a solid mass moving with the Head bone - no part of it should be mis-shaped. The neck should move slightly with the Head bone. If you see any vertices that do not move with the head bone, then they were not weighted correctly or at all. Go back, select those verts and weight them using the process above. If all looks good, you have completed weighting the head and you can export. To learn more about exporting a mesh .xmf file, please go the Exporting the Mesh - .xmf Tutorial.
Talk about your simple tutorials! A lot of people want to know what the IMVU avatar skeleton hierarchy looks like. Really - its the word on the street! Knowing the hierarchy and, more specifically, the exact bone names that are included in the IMVU avatar skeleton can help a LOT if you're making an Accessory product. If you want to know more about Accessories, please go to the Accessories Introduction Tutorial. Here it is: Female03MasterRoot PelvisNode lfHip lfThigh lfCalf lfFoot lfToes xTipBone86 rtHip rtThigh rtCalf rtFoot rtToes xTipBone38 Spine01 Spine02 Spine03 Spine04 lfClavicle lfShoulder lfbicep lfElbow lfWrist lfHand lfmetaCarpal01 lfThumb01d lfThumb02 lfThumb03 xTipBone88 lfmetaCarpal02 lfFingerIndex01 lfFingerIndex02
lfFingerIndex03 xTipBone89 lfmetaCarpal03 lfFingerMiddle01 lfFingerMiddle02 lfFingerMiddle03 xTipBone87 lfmetaCarpal04 lfFingerRing01 lfFingerRing02 lfFingerRing03 xTipBone90 lfmetaCarpal05 lfFingerPinky01 lfFingerPinky02 lfFingerPinky03 xTiprtFingerne83 Neck01 Neck02 Neck03 Neck04 Head xTipBone33 rtClavicle rtShoulder rtbicep rtElbow rtWrist rtHand rtmetaCarpal01 rtThumb01 rtThumb02 rtThumb03 xTipBone66 rtmetaCarpal02 rtFingerIndex01 rtFingerIndex02 rtFingerIndex03 xTipBone70 rtmetaCarpal03 rtFingerMiddle01 rtFingerMiddle02 rtFingerMiddle03 xTipBone74 rtmetaCarpal04 rtFingerRing01 rtFingerRing02 rtFingerRing03 xTipBone78 rtmetaCarpal05 rtFingerPinky01 rtFingerPinky02 rtFingerPinky03 xTiprtFingerne82 zhead zhead & xTip? Not so much The zhead bone is only for use by the procedural gaze system IMVU uses to make the avatars come to life. So, there is no need to utilize this bone in any of your products.
The same goes for all of the xTip bones. These only exist to make sure that the Physique weighting modifier works properly when creating avatar body parts.
In IMVU, you can create Avatar Accessories. Accessories are products that can attach themselves to a bone in an avatar's skeleton. This means that you have the power to make watches, halos, wings, PETS. Anything! The power is in your hands. Just like Furniture products can be added to Room products, Accessories can be added to Avatars. Building an Accessory from scratch is not easy. However, it can be much easier than building avatar clothing from scratch. This is because you need to know how to model and map in 3D as well as weight meshes. Should that deter you? No! Of course not. Thousands of people have built their own accessory products and so can you. Before diving into building an accessory, please read the Introduction to Mesh Building Tutorial. In addition, some things to note up front: There is a run time Accessory limit per bone in IMVU. You may wear multiple Accessories at one time but may only wear three Accessories per attachment node at one time. This means that you could be wearing your sunglasses, halo and antennae on your head AND be wearing your shoulder pads, wings and sheathed sword on Spine4 at the same time. Pretty cool. Also, while it is true that Accessories can move with the one bone in the avatar skeleton to which they are attached, Accessories can not be made to move with more than one bone in the avatar body. So, although you can make incredible Accessories like Pets and morphy wobbly things, it is safe to assume that most Accessories will be rigid in IMVU.
Accessory Basics An Accessory product is just like any other base 3D product in IMVU in that it contains its own skeleton, its own geometry, its own materials and its own textures. Since Accessories contain their own skeleton, they can also contain their own animations. This comes in very handy when turning an accessory into....a pet!
Get the weighting files The avatar weighting MAX filess that IMVU, inc. has created contain an example Accessory set up exactly the way it needs to be in order to be exported. So, the first thing you need to do is download the weighting MAX files.
Female Weighting File Male Weighting File
For Position Only You will NOT actually use or export any piece of the original base avatar mesh or embedded avatar skeleton. You are building a separate Accessory product which means you are building a product that contains its own skeletons, meshes and materials. The reason you need the avatar mesh and embedded avatar skeleton is only for the placement/alignment of your Accessory product. The Embedded Accessory Skeleton An Accessory skeleton can be very simple. The most simple Accessory skeleton must contain two bones/nodes. These bones/nodes can be called anything you like. One will be your master bone (or, the top of the hierarchy) and one will be the bone you actually weight the mesh to. IMVU has called the master bone AttachmentRoot and called the second bone AttachmentNode. You will note that AttachmentRoot and AttachmentNode are both in the exact same location. You will also note that the AttachmentNode bone is parented to the AttachmentRoot bone. This is how these two bones should be set up regardless of how many other bones you may add in more complex products.
Skeleton Placement All you need do is align the AttachmentRoot bone to the avatar bone with which you want your attachment to move. For example, if you want to build a bracelet, you would not align your AttachmentRoot bone/node to the avatar's Head bone because then you would have a bracelet that moved when the head moved. Instead, you would align the AttachmentRoot to one of the wrist bones. In the image example to the right, the glasses accessory mesh found in the avatar weighting file has been scaled larger for legibility. The glasses mesh is weighted to the AccessoryNode bone. So, if the AccessoryRoot bone (the parent of AccessoryNode) is moved to the location of the rtWrist bone (using the align tool), the glasses move with it.
The orientation of all of the bones in the avatar skeleton is not the same. This means that a pair of glasses moved to, say, the ltCalf bone will not point forward the way they do on the Head or rtWrist bones. This is why it is important to align your skeleton to the intended bone location *before* building your mesh. That way, you will guarantee that the mesh will actually show up in IMVU the way you see it in your 3D program.
Can I Make My Own Skeleton? Of course you can. However, remember that you may always use the embedded AttachmentRoot/Node for your Accessory skeleton. Building a skeleton for an Accessory product works just the same as building a skeleton for any other IMVU product. You need a root bone (AttachmentRoot) and a secondary bone (AttachmentNode) as your basis. So, with those two bones created, link the AttachmentNode bone to the AttachmentRoot bone using the link tool. Now align AttachmentRoot to the avatar bone you wish your accessory to attach to. THEN, either align AttachmentNode to the same bone in the avatar skeleton OR align it to AttachmentRoot. Either way, AttachmentNode will end up in the same spot. Now you can weight the mesh to your heart's content. Or....if you have the need of more bones, you can add more bones as you see fit. To learn more about skeletons, please go to the Introduction to Skeletons Tutorial.
Pets Since an Accessory can be attached to any bone in the avatar skeleton, that means it can be attached to the avatar root node. This bone is called Female03MasterRoot. The benefit of attaching your Accessory to the avatar's master root is that the Accessory will not move with the avatar's idle animations. This has the wonderful side effect of allowing the Accessory to behave independantly of the avatar. In other words: you can make a Pet. Making a Pet is harder to do than, say, a pair of glasses as the overall set up requires more planning and the execution time is longer. The skeleton and the weighting are just more complex on a pet than your average Accessory. That said, the basic set up is the same. A Pet Accessory needs a skeleton, a mesh, materials with textures and, if you like, animations.
However, your Pet Accessory product can be quite complex and utilize most of the behavioral animations IMVU has embedded in the avatars. For example, you can build Idle animations for stance.Standing and stance.Sitting or any other stance you would like to employ. You can also build triggered animations for any trigger that effects the avatar. LoL, cry, flip - your pet can do them all when your avatar does. This obviously makes the Pet a more important piece to any avatar's outfit. To learn more about building a Pet, please go to the Pets Tutorial Build the mesh: Accessory skeleton location The first thing to realize about building an Accessory mesh is that the location of the Accessory skeleton master root matters *A LOT*. If you want your glasses to show up on the avatar's head in IMVU, you need to have your Accessory skeleton master root bone aligned to the avatar's head bone before you weight your glasses. So, to recap: 1. Align your Accessory master root bone to the bone in the avatar skeleton that you want to influence the Accessory. 2. THEN weight your mesh to the Accessory skeleton. Build the Mesh: Accessories for Avatar heads If you are building an Accessory for an avatar head (glasses, earrings, unicorn horns, etc.), there are a few things to keep in mind. The current IMVU head products are all built around the same basic head shape for Male or Female products. The only difference in all of the heads built by IMVU is only found in the shape of the face. Head size is dictated at run time in the IMVU messenger. (To learn more about head sizing, please go to the Previewer - Mesh Scale Tutorial.
Specifically, the cranium, the bridge of the nose and the position of the ears do not move position from head design to head design (built by IMVU). This allows each human head product IMVU has made to use all of the pre-existing Accessories without any glaring aesthetic bugs. However, this means that things like facial jewelry, beards, mustaches, fangs, etc. will not look right from head to head (because Accessory products do not animate when avatar facial animations are playing.) Build the Mesh: Z-fighting The mesh for your Accessory can end up being very close to the mesh for the avatar asin the case of earrings, glasses and watches. However, if they are too close you may get Z fighting (or shimmering) in IMVU. It is worth testing in the previewer. If you see Z fighting in the previewer, you will see it in IMVU. To correct that shimmering effect, you ought to pull your Accessory goemetry away from the avatar mesh. I typically do this in edit geometry: vertex mode so that I only need to adjust the vertices that are actually causing the problem.
Build the Mesh: Weight the Mesh To learn more about how to weight any mesh, please go to the Mesh Weighting Tutorial. There are some tips specific to Accessories that could help you. The first is that if you are building something that is meant to move with one bone only (Glasses, Earrings, etc.), weight
all of your vertices to that bone in the ACCESSORY SKELETON. Remember, if you are weighting all of your verts to one bone, then you can use the Skin weighting modifier (which is much easier to use than the Physique weighting modifier.) The second tip is that your Accessory mesh should never be weighted to any bones in the avatar skeleton. Your Accessory has its own skeleton (which you just created). If you weight your accessory to anything but the accessory skeleton, it will not work. Map the mesh To learn more about how to apply mapping coordinates to your mesh, please go to the Mapping Materials Tutorial. Although an Accessory can use as many Materials as necessary, remember to keep your textures as small as possible. Accessory Animations Since Accessories contain their own skeletons, they can have animations. Even more, since they also contain meshes, they can also contain morph animations. To learn more about how to animate any skeletal animation, please go to the Animating in 3D MAX Tutorial. Also, to learn more about how to make morph animations, please go to the Morph Targets Tutorial. It should be noted, though, that "under the hood" an Accessory product is really an "Avatar Attachment". This means that the Accessory is linked to Avatar in a few ways. The first is the most obvious: as your avatar moves around a 3D scene, any accessories worn will also move with that avatar. The second link has to do with animations. An accessory can utilize the same system that calls animations triggered by the IMVU avatar.
Avatar Animation System? An Accessory can "utilize the system that calls animations triggered by the IMVU avatar"?!! How does that work? Well, the IMVU avatar can play three classes of Actions: 1. Idle Actions 2. Stance Actions 3. Triggered Actions
The first two are very close in definition but #1 has the addition of having a hard coded instruction for blinking. A stance animation is dictated by a room or furniture seat node. For example, if a seat node is named seat01.FloatinInWater, then the IMVU code wants to play an animation called stance.FloatingInWater. If an Action with the same name exists in either the avatar product or within the Room or Furniture product, that animation will be applied to the avatar. The three main Idle/Stance Actions names are stance.Idle, stance.Standing and stance.Sitting. So, if your pet contains Actions with those names, the system will play those Actions whenever the avatar joins a Standing or Sitting seat. Even better, if the system can't find, say, stance.FloatingInWater in your Accessory, it will try to default to stance.Idle or stance.Standing. In this way, your Accessory could always be playing an Idle animation. Cool. A triggered action is an action that plays once (or loops infinitely until removed) and then goes away. When you type LOL in IMVU, you 'trigger' the LOL animation to play on your avatar. This means that your Accessory could have an animation that is triggered by the word 'LOL'. This means that if you type LOL in a chat in IMVU, both the avatar animation and the Accessory animation will be triggered. Budgets Download and runtime file size is an issue that should be kept in mind whenever designing for IMVU. If your Accessory’s file size is too big, it is unlikely that your potential customer will purchase and download it and, if they do, there is a very high chance that they will review your product poorly and your sales will go down. Therefore, it is good practice to try to keep the texture size, vertex/face count of your meshes and animation length down to the bare minimum. There really is no reason to have a 256x256 texture for a button on a shirt: it just won’t be seen in the IMVU messenger. In fact, we have found that the smaller the texture, the BETTER it looks in IMVU. Go figure. Also, please know that IMVU automatically resizes assets that are too large or teched incorrectly. To learn more, please go to the Mapping Materials Tutorial. Export Time Now you must export all of the assets in the Accessory. 1. Export the skeleton .XSF file. To learn more, please go to the Export the Skeleton - .xsf Tutorial. 2. Then, export the mesh .xmf file. To learn more, check out the Export the Mesh - .xmf Tutorial.) Then, when prompted for the skeleton, browse to the .xsf skeleton file you just exported in step 1. 3. Once you have the skeleton .xsf exported, you can export any animation .xaf files you may need. To learn more, please go to the Export Animations - .xaf Tutorial. 4. You may export your material .xrf files any time you like. To learn more, please go to the Export Materials Tutorial.
On to the Previewer With your Accessory assets built and exported, its time to put them all together in the Previewer. To learn more, please go to the Previewer Tutorial. There are some special parts of the Previewer, though, that are specific to Accessory products. Read on, oh Accessory maker...
Previewer: Avatar Compatibility At the top of the Special Tab in the Previewer, you will see a field titled "Compatible Body Pattern Product ID". Add the avatar product number that you wish your Accessory to work with and then apply changes. The IMVU Body Pattern Products are named as follows: Female: product80 Male: product191 It is recommended that you include both avatars for Accessories that do not involve the avatar head. To do so, you would type "80, 191".
Previewer: Attachment Node The second thing you will notice is the AttachmentNode box. Change this name to whatever avatar skeleton bone name you wish your accessory to attach to. For example, in the case of Glasses, type in "Head" or, in the case of a pet, type in "Female04MasterRoot". Remember to type in the EXACT name of the avatar skeleton bone you wish your Accessory to attach to. For the entire list of bones in the IMVU avatar skeleton, please go to the Avatar Skeleton Hierarchy Tutorial.
Avoid attaching to the Avatar's Pelvis node. In the Previewer, you will tell your accessory skeleton which bone on the avatar it should attach to. Although you are allowed to attach your Accessory skeleton to any bone on the avatar, it is recommended that you do not attach it to the Pelvis node. You may be unhappy with the result.
A Pet is a glorified Avatar Accessory product. An Avatar Accessory product, simply put, is a product that can be attached to an avatar but that does not override any avatar body parts (like shirts or shoes). An Accessory product can also be anything you can possibly think of: earrings, floaties, wings.....and Pets. Obviously, you can build a technically simple pet like, say, a parrot that sits on your shoulder but does not move at all. We'll call these kind of pets "pet rocks". On the other hand, you can also build a technically complex pet that feels alive and reactive. If you want to learn how to create a pet rock, you should just read the Introduction to Accessories Tutorial. If you want to learn how to add life to your pets, read on. This tutorial assumes you have already read the Introduction to Accessories Tutorial. Also, for the purposes of this tutorial, we will be using 3DS MAX.
Where's the Avatar? As you prepare to bring your idea to IMVU customers, remember to be cognisant of where your Pet is going to live in relation to the avatar. It can be attached to the avatar, like a parrot on a shoulder, or it can be detached from the avatar. You should also be cognisant of what other things an avatar might be wearing at the same time as your pet. For example, if building a parrot on a shoulder, you should probably put the parrot out towards the tip of the shoulder vs. close to the head. That way, there will be less potential for penetration with things like hair, hats, big earrings and shirt collars. A great way to help yourself be cognisant of these things is to spend a fair amount of time planning your Pet out on paper. This early 'concept phase' or 'design phase' will help you get through many issues not the lest of which is positioning your pet, the size of your pet and overall penetration with the avatar.
Build Skeleton Before embarking on building your Pet Accessory Journey, you should read the How to Build a Skeleton Tutorial. Have you read it? Don't lie to me. You have? Great. Let's move on. It all starts and ends with the skeleton. Let me say from experience that it is incredibly frustrating to learn you need one more bone after you have nearly completed the product - animations and all. The reason it is frustrating is because adding even one more bone to the skeleton requires the following changes: New skeleton .xsf export New mesh weighting New mesh .xmf export New animation .xaf exports (that's right - all of them) This is no small amount of work (it can take a full work day if your pet is complex enough) so please take the time in advance to figure out how many bones you will need. How do you figure out how many bones you need? Simple: What is it you want the Pet to be able to do? Answer that question and you will know what bones you need to add. For example: Does your Pet have wings? Will they flap? Will they flap like a Bird's wings? If so, you know you need three main bones in the wing and one end effector (so that Physique will work). Does your pet have a head? A neck? Will it nod yes and no? If so, you know you have at least two more bones (+ end effector): Head + neck (you can have more neck bones the longer your Pet's neck is.) Does your Pet have arms? Hands? Legs? Feet? a Tail? Are those extremities going to move? If so, how? As you can see, advance planning will help you realize your vision sooner and without having to start over repeatedly.
Align Root Nodes If you want a Pet that moves independantly of the avatar, the first thing should do is align the AttachmentRoot and AttachmentNode bones to the avatar's Root node: Female03MasterRoot. As detailed in the Introduction to Accessories Tutorial, every Accessory attaches to a bone in the Avatar. Just which bone it attaches to is set in the Previewer. Therefore, the root bones of the Accessory skeleton need to be aligned to the bone you intend to attach your Accessory to. Since you will eventually tell the Pet/Accessory product to attach itself to Female03MasterRoot in the Previewer, you need to have your Accessory skeleton root bones aligned to Female03MasterRoot in your 3D file. To align your root bones, you use the Align tool found in the upper left tool bar. First select both your Accessory bones. Then, with the Align tool selected, click on Female03MasterRoot. The Align Selection dialog box appears and is chock full o' settings. You want to align the XYZ position *and* the XYZ Orientation. Also, make sure Pivot Point is selected in both the 'Current Object' and 'Target Object' fields. Click 'OK' and your Accessory root bones should have moved to the exact same position as Female03MasterRoot.
Build Mesh, morphs, materials, textures Once you have your skeleton built and properly positioned, its time to build your mesh (or meshes), morph targets, materials and textures. To learn more about each of these, please visit the following tutorials: Introduction to Mesh Building Building Morph Targets Mapping Materials - Powers of Two NOTE: It should be noted that morph targets are optional. Your Pet does not need morph targets in order to be a successful product. Budgets Download and runtime file size is an issue that should be kept in mind whenever designing for IMVU. If your Head’s file size is too big, it is unlikely that your potential customer will purchase and download it and, if they do, there is a very high chance that they will review your product poorly and your sales will go down. Therefore, it is good practice to try to keep the texture size, vertex/face count of your meshes and animation length down to the bare minimum. There really is no reason to have a 256x256 texture for a button on a shirt: it just won’t be seen in the IMVU messenger. In fact, we have found that the smaller the texture, the BETTER it looks in IMVU. Go figure. Also, please know that IMVU automatically resizes assets that are too large or teched incorrectly. To learn more, please go to the Mapping Materials Tutorial.
Weight the Mesh With your Pet completely built, it is time to weight it. 'Weighting' means that each vertex in a mesh knows which bone it ought to move with. If a mesh isn't weighted, it won't show up in IMVU. Since this tutorial assumes you are building an organic shape that moves with multiple bones, you must use the Physique weighting modifier in MAX. However, if you wanted to make a "pet rock", you could use the Skin weighting modifier instead. To learn more, please go to the Weighting Using Skin Tutorial and the Weighting Using Physique Tutorial.
Test Weighting It is important to test whether your weighting works the way you want it and, more importantly, that every vertex in your Pet is actually weighted. To do this, you ought to make an animation that moves every bone in your Pet's skeleton. To learn more about skeletal animation, please go to the Animating in 3DMAX tutorial. I typically move one bone at a time over time so that I can see how the head moves without the rest of the bones moving. Once I get an animation built that moves all of the bones in the body, I make sure to also add a big movement to the Pelvis bone. This last animation moves the entire pet far away from its original position with the intent of seeing whether all of ther vertices are actually weighted. If they are not, they will remain in place while the rest of your Pet moves around. If I see any errant verts, I go right into Physique and weight them.
Test Morphs Once you are sure your weighting is complete, it is important to test your morph targets as well. Remember, you do not need to build morphs for your Pet. It is 100% optional. When testing your morphs, you are looking for a few things: 1. How do multiple morphs work when they are applied together? 2. Are there aesthetically unpleasing peaks or tears in the mesh when the morphs are applied? 3. Do the morphs affect vertices in parts of the mesh that are not meant to be effected? 4. Do the morphs work well with the skeletal test animation? If you find any issues, you can always go edit your morphs, reload the morph targets in the Morpher modifier and run your tests again.
Export All OK. Now you're ready to export the basics! As is the case with any 3D product, you must export the skeleton - .xsf file first. Then, you are free to export both the mesh - .xmf files and the animation - .xaf files (though, we'll get to animations in the next section). You can export the material - .xrf files at any time. To learn more, please go to the: Export Skeleton - .xsf tutorial Export Mesh - .xmf tutorial Export Materials - .xrf tutorial
Make Idle Actions To learn more about Idle Actions, please go to the Idle Actions Tutorial. As a recap, though, check this out: The most common Idle Actions in the IMVU avatar are the Standing and Sitting Actions. This means your Pet can have a different behavior whether the avatar is Sitting or Standing. What's more, a Pet can have its Idle Action named stance.Idle, then it will play the same no matter what stance is called on the avatar. Remember, as the Idle Actions Tutorial explains, you can build multiple Idle animations, export them all and then place them into the Previewer as separate pieces of separate Idle Actions. For example, I typically have one Action named stance.Idle that covers only the blinking animation. That way, the blink will play regardless of what else the Pet is doing. I also add another Action named stance.Idle that contains at least five Ensembles with animations for a Pet so that it has a feeling of life. Reminder: Each Idle animation should be saved into its own MAX file.
Blink Idle Tip If you want to build a pet that blinks, I have a good tip for you. Build the eyes as separate meshes from the body. Then, go back to your skeleton and add bones that live approximately where your eye meshes live. Then, you will be able to build an animation that pulls the eyes inside of the head for a frame or two. Plus, -iIf you make sure the texture on your Pet head contains closed eyes just underneath the location of the eye meshes, it will look like a real blink in IMVU. Cool
Sitting Idle Position Although an avatar moves the height of its body when it swtiches from a Standing node to a Sitting node, its root node does not change its height. This means that if you have a Pet that is attached to Female03MasterRoot, then it will not move lower in the scene just because an animation makes the avatar sit lower in the scene. This is most obvious in stance.Sitting seats. To address this, you can make another series of Idle animations that have the Pet positioned lower in 3D space. In the Previewer, you create an Action titled stance.Sitting that contains Ensembles with these new lower-positioned assets. Then, when an avatar sits down, its Pet acts the way you want it to.
Make Triggered Animations I always consider this the most fun part of building a Pet because the triggered actions make the Pet feel sentient. Making a triggered Action is pretty easy as you just need to name the Action anything you want. When someone types in that word, or words, then the Pet will play the animation associated with that Action. If you want to know what triggers are used by the IMVU avatar, you can always take a look at the .xml file that comes with IMVU. It is called 'menus.config.xml' and should be right in your IMVU directory. The section titled 'Personal Gestures' are ones that can be used by your Pet. If you can't open the .xml file, you can just try a few commands in IMVU to see if they work on your avatar. The fun part, though, is making your Pet react the same way your avatar does to triggered commands. That's why I typically include Actions for yes, no, what, lol and flip (I just like to flip a lot.) What's also cool is that your triggered animations can contain Ensembles as well. This means that you could have multiple reactions to the same command that were randomly chosen. This makes your Pet feel REALLY alive.
Export All Animations When you've built all of your animations, remember to export them. To learn more about exporting animations, please go to the Export Animation - .xaf Files Tutorial.
Previewer Alllllll righty. Now that you have all of your assets built and exported, it is time to put them all together in the Preveiwer. To learn more about the Previewer, please go to the Previewer Tutorial.
Previewer: Base Product While we recommend that you derive from either product 682 or product 669, product 434931 is a good example of how a Pet ought to be set up. You can derive from 434931 just to see how it is set up. As with any 3D product that you build from scratch, you should build your Accessory product with NO Actions or animations first. In the Special Tab, browse to your skeleton .xsf file, type in the name of the bone that you want the Accessory Pet to be attached to and then type in the avatar IDs with which you want your Pet to work with. If you want the Pet to work with both the female and male avatars, you would type in "80, 191" in the IDs field. The reason you should create your product without animations first is because it is MUCH easier to find errors with your skeleton, mesh, materials and textures without having to wade through potential animation errors too. Save your product once you have the skeleton, mesh, material and texture assets working.
Previewer: Turn Off 'Apply Changes to Preview' It is very helpful to have 'Apply Changes to Preview' turned off when building a 3D product from scratch. This is because both the skeleton and the mesh assets need to be in the product or errors will occur. Although those errors should not impair your ability to continue creating your product, they can so please turn 'Apply Changes to Preview' off by unchecking it in the Edit menu. Previewer: Set Up
As mentioned above, product 434931 is a great example of how your Actions ought to be set up for a Pet product. Each panel is set up very much how you will no doubt want your panels set up. Let's take it one by one. The 'Special' tab: You will notice that the Compatible Body Pattern Product IDs filed is already set to '80, 191', the Attachment Node is already set to Female03MasterRoot, and it contains its own .xsf file. You only need to add your own .xsf in this tab. To learn more about the Special tab, please go to the Previewer - Special Tab Tutorial. The 'Geometry' tab: Notice that this product has multiple body parts. Your Pet can have as many body parts as you like - as long as you remain within budget, of course. To learn more about the Geometry tab, please go to the Previewer - Geometry Tab Tutorial. The 'Materials' tab: The Materials set up is similar to every other 3D product. To learn more about the Materials tab, please go to the Previewer - Materials Tab Tutorial.
The 'Action' tab: And last but not least, the Actions tab. You will see that this Pet contains several Actions named stance.Idle with one handling the blinks, one handling the wings, one handling the core floating animations and the last handling the Bow Idle.
Previewer: Add Actions
To learn more about adding actions in the Previewer, please go to the Previewer - Actions Tab Tutorial. You can also download the Previewer directly by clicking here.
Idle Actions First Remember, at this stage, you should already have your skeleton, mesh and material assets in place. When setting up your Actions, I recommend you add your Idle Actions first. Essentially, this is so you can get through the hard part first and save the quicker, easier, more fun part (triggers) for last. haha. Every Action needs a name. The name of your main Idle Action depends on how you want it to behave. For example, if you want the Action to play forever, regardless of which seat an avatar joins, then you would name your Action 'stance.Idle' in the Trigger field. On the other hand, if you want your Pet to have different behaviors/positions when the avatar is standing vs. sitting, then you would name your main Idle Action 'stance.Standing' in the Trigger field. Remember, any Ensemble in any 3D product Action can contain both skeletal and morph animations.
Action Parameters We have already discussed what you ought to name your Idle Actions in the Trigger field but what are the other fields for? The other fields in the Action Paramters section are discussed in detail in the Previewer - Actions Tab Tutorial. However, there are some specifics as to how to set them up for a Pet Accessory.
First of all, neither the 'Type' or the 'Avatar IDs' fields matter to Pet Accessories so you don't have to add any information to them. Next is the '# of ensembles' field. If you are building an Action that is meant to loop forever, like an Idle Action, then you ought to type in the number '0'. If you are building an Action that is meant to play a limited number of times, you can type in any number *OTHER* than '0'. I typically just type in '1'. Then comes the 'After playing' field. This field tells the Action what it should do once it stops playing an Ensemble. If you have multiple Ensembles that you want to have play at random (even sometimes choosing the same Ensemble twice), then you choose 'Pick new Ensemble'. If you want to play the same Ensemble every time (like if you have only one Ensemble in the Action), then you choose 'Pick same Ensemble'. The third option, 'Cycle Through Ensembles' is only for testing purposes and may not give you reliable results in IMVU. Previewer: stance.Sitting If you want your Pet to have different behaviors/positions when the avatar is standing vs. sitting, not only do you need to make your main Idle Action called 'stance.Standing' but you must also make a secondary Idle Action called 'stance.Sitting'. Remember, you can have as many Actions of the same name as you like and as many Ensembles within each Action as you like.
Previewer: Test Idles Once you have added your Idle Actions, animation assets and Saved your Pet, it is a good time to test whether all of the Actions in your Idles work. To do this, you can set the 'After playing' field to 'Cycle through Ensembles' and then press the 'Play Action' button. This will play all of the Ensembles included in the Action in consecutive order. If an animation asset doesn't work properly, or if your Ensemble loops and/or blends are not working, then you can easily fix the individual assets, re-Save and test again. NOTE: Remember to set your 'After playing' field back to something other than 'Cycle through Ensembles' before submitting the product. Previewer: Triggers Once you have added and tested your Idle animations, you can add new Actions for your Trigger words. There are only two technical differences between these Actions and the ones you just set up.
1. The name you add to the 'Trigger' field can be anything you want. Then, when that word is typed in IMVU, your Pet will play that animation. 2. The '# of Ensembles Played' should be the number '1' or higher. Another cool feature of triggered Actions is that you can add comma separated lists to the Trigger field. This powerful feature allows your Accessory Pet to feel more alive. For example, in the image below, Action 5 is triggered by all of the following text commands: yes yeah yep yup yah
Previewer: Test Test Test I can't stress enough how important it is to test your Pet product repeatedly as you build it. In fact, I often save a new version of the Pet every time I add a new bath of assets. New Idle Action with multiple Ensembles? Save as. New series of Triggered Actions? Save As. This is important because it is possible to add corrupt or broken assets to a CFL that make it impossible to open later. It is...an emotional challenge...to lose all of the work you put into getting the skeleton, meshes, materials, and Idles perfect just to have some random Trigger asset ruin the whole product. Previewer: Save Save Save Save repeatedly. Be known as a furious saver. Save like your power could go out at any moment. Previewer: Jazz Jazz Jazz This is probably the most important thing to know about any Pet you build..... OK. Fine. It really isn't. However, you've got to admit that the title fits in nicely with the whole 'Test, Test, test' 'Save, Save, Save' thing... Submission Tutorial Submitting a Pet is like submitting any other product. To learn more, please go to the Product Submission Tutorial.
Anytime you create an avatar “seat”, we recommend that you also include Catcher & Pitcher Nodes as well. The Catcher & Pitcher Nodes indicate the locations two avatars stand when performing a cooperative animation, like a hug or handshake. The distance between the two nodes is extremely important and should never change, or else you risk these animations not working, or feeling “broken”. The best way to insure that you do not accidentally change this distance between C&P Nodes, is to Merge the nodes, along with the Seat Node and placeholder avatar model, into your model from a preexisting IMVU provided Max file.
You can easily merge these nodes from the Example 3D Room file here: Example3Droom.zip
Once you have built an animation in a 3D program like 3DS MAX, you must export it as a different file type. This exported file will be what you add to the Previewer so that you can create a product. IMVU uses Cal3D file formats. This means that you must use a 3D program that has Cal3d exporters written for it. The Cal3D file format that the IMVU Previewer recognizes for skeletal animations is ".xaf". The Cal3D file format that the IMVU Previewer recognizes for morph animations is ".xpf". Once you have your 3D program set up to export Cal3D assets, it is actually really easy to export. The first section of this tutorial will focus on skeletal animation export. The second section will focus on morph animation export. Skeletal - Select the Root Node In order to export any skeletal animation for IMVU, you must select the root node of the skeleton. This is the highest bone in the skeletal hierarchy. The root node for the IMVU avatar skeleton is called Female03MasterRoot.
Skeletal - Select Export With the root node selected, go to File/Export. Note: I have created a hotkey for the Export command: Shift+E. Considering how often you will be exporting assets, creating a hotkey for this command is highly recommended. However, MAX does not come standard with a hot key for this command.
Skeletal - Choose *.XAF Format When the export screen opens, choose the "Cal3D Animation File (*.CAF, *.XAF)" option.
Skeletal - Name File Name your file however you like. However, please remember to manually type in the .xaf suffix at the end of your asset name. If you do not manually add this, the file will be exported as an unusable .caf file. Then, click Save. Skeletal - Export Step 01: Choose Skeleton In the Cal3D window that appears, you will be prompted to supply a skeleton/.xsf file. Browse to the skeleton file you want your animation to work on. In the case of animations built on the IMVU-created avatar, that file is always the same regardless of whether you are creating a female or male animation.It is called Female04_Anime01_SkeletonMASTER.xsf and comes with avatar ZIP files found on the Avatar Animation Files Tutorial.
Skeletal - Export Step 02: Choose Bones If you want, you can export only portions of the skeleton. For example, if you want to have the avatar do a wave animation, you only have to export the bones affected in the wave. IE - the arm and clavicle. This approach frees the rest of the skeleton up to be driven by the avatar Idle animations (like changing posture while standing) and looks very natural. There are several ways to choose a subset of the bones in the skeleton when exporting: 1. You can simply check the boxes next to the bones you actually want to export. This means actually unchecking everything else in the list. To do so, you can click the uncheck all button and then go in and check the bones you want to export. 2. You can select the bones you want to export in MAX, then choose to export an .xaf file, and then click the Choose Selected button in the skeleton hierarchy section of the exporter.
Skeletal - Export Step 03: Verify Timing In the third step, you are asked to review that the basic timing inputs are correct. They almost always are so you will normally be able to simply hit Finish without a second thought. However, if you want to know how things are supposed to look, here are some tips: Start Frame - This is normally zero but you can make it any number you want. The frames before the number you type in are not exported. End Frame - This is normally the end frame of your animation file. You can make it any number you want. The frames after the number you in are not exported. Displacement - just leave this at zero. Frame Rate - IMVU animations should always be exported at 30 frames per second.
Skeletal - Click Finish Once you've clicked finish, you have created an .xaf file that can be used in the Previewer. Morph Animations Now let's move on to how to export a morph animation. As you may know, there is a big difference between skeletal and morph animation. Skeletal animation tells the bones of the skeleton how far to move/rotate over time. While I can make the avatar head bone nod yes or shake no I can not change her expression with a skeletal animation. Morph animations control the shape of a mesh over time. In the case of the IMVU avatars, morph animations are used for facial expression. To learn more about facial morph animation, please go to the Avatar Morph Animation Tutorial. Morph - Select the Mesh Once you have created your morph animation in a 3D program like 3DS MAX, select the mesh you wish to have morph. In the case of avatar facial morphs, this is typically the parent head mesh. This should be the only head mesh in the file that does not follow the morph naming convention. To learn more about the morph naming convention, please go to the Avatar Morph Animation Tutorial.
Morph - Select Export With the parent mesh selected, go to File/Export. Note: I have created a hotkey for the Export command: Shift+E. Considering how often you will be exporting assets, creating a hotkey for this command is highly recommended. However, MAX does not come standard with a hot key for this command. Morph - Choose *.XPF Format When the export screen opens, choose the "Cal3D MorphAnimation File (*.CPF, *.XPF)" option.
Morph - Name File Name your file however you like. However, please remember to manually type in the .xpf suffix at the end of your asset name. If you do not manually add this, the file will be exported as an unusable .cpf file. Then, click Save. Morph - Export: Verify Timing Exporting morph animations only contains one step. In this step, you are asked to review that the basic timing inputs are correct. They almost always are so you will normally be able to simply hit Finish without a second thought. However, if you want to know how things are supposed to look, here are some tips: Start Frame - This is normally zero but you can make it any number you want. The frames before the number you type in are not exported. End Frame - This is normally the end frame of your animation file. You can make it any number you want. The frames after the number you in are not exported. Displacement - just leave this at zero. Frame Rate - IMVU animations should always be exported at 30 frames per second.
Morph - Click Finish Once you've clicked finish, you have created an .xaf file that can be used in the Previewer.
RiggedAvatarMASTER.zip FemaleAction.ZIP MaleAction.ZIP CooperativeAnimation.ZIP
Avatar Animation Files There are several versions of Avatar animation files found on the left. All of them have been built for use in 3DS MAX. It is important to know that both Male and Female avatars use the same
Biped Animation Rig Biped example 01 Biped example 02 Biped example 03 Biped example 04 Biped example 05
skeleton. Therefore, animations will work for both products 80 (the female avatar) and 191 (the male avatar). This is why we only include one mesh version for some of our animation files - as it really doesn't matter to the final animation. It only helps to have the Male geometry when making Male specific animations (like Idles) but we offer the file anyway. To reiterate, though, any animation you build on the avatar skeleton can be used for both Male and Female avatars.
Rigged Avatar The first of the animation files, the Rigged Avatar is arguably the easiest to use as all of the inverse kinematics have been worked out. To get this file to work, follow the directions found in the read me file in the ZIP for installing the Joystick manipulator to MAX. IMPORTANT: The rigged avatar will only work in 3DS MAX 7. NOTE: To activate the Joystick controls in MAX, activate the 'Select and Manipulate' tool.
Rigged Avatar file details To learn more about the Rigged Avatar file, please go to the incredibly fantabulous Rigged Avatar tutorial.
Female Action.ZIP and MaleAction.ZIP While most animations are achievable with the Rigged Avatar file above, you might find yourself unable to get exactly the animation you want. If so, you can just use FemaleAction.ZIP or MaleAction.ZIP. These contain no IK linking and so are a little harder to animate with. That said, they are more flexible than the avatar rig. Applying motion capture to these files is not as easy as the Bipeds listed below but should be fairly straightforward.
Bipeds Last but not least are the Biped rigs. These files are useful for applying motion capture data. However, these have been handy only for a select few individuals. As IMVU does not use these files internally, we highly recommend using the other avatar files above for building your animations. New Actions If you're interested in learning how to get a new avatar Actions to show up in your product, please read the Avatar Actions Tutorial and the Previewer = Actions Tab Tutorial.
Before we begin, I should say that building any Avatar animation is not easy...but it gets easier the more you do it. In IMVU, you have the power to create your own actions as products. This includes both skeletal and morph animations. How cool is it that you can offer your own version of “lol” or make something entirely new out of “MonkeyDance”? IMVU offers you the tools to take your exported animation file and sell it to countless stunned and impressed IMVU users. Note: This tutorial is about building avatar MORPH animations. That means it is about making changes to the shape of a mesh over time. If you want to learn more about avatar skeletal animations, ie - how to make the bones move, please go to the Avatar Skeletal Animation tutorial. For the purposes of this tutorial, we will be using 3DS MAX. The process described in this document is based on the morph set used in the IMVU avatars. Also, for the purposes of this tutorial, we will be using the Female04_Anime01_IdleStandingPoseMASTER.max file. However, the basics apply to any avatar MAX file that contains morph targets. Retrieve the Idle Pose file The first thing you need to do is get the avatar MAX file. To learn more about which files you might want to download, please go to the Avatar Animation Files tutorial. IMVU strongly recommends you use the Female04_Anime01_IdleStandingPoseMASTER.max file found in the FemaleAction.ZIP to create your morph animations. This is because the Rigged Avatar does not contain a morpher modifier on the head. Start Max and open the Female04_Anime01_IdleStandingPoseMASTER.max file. The Idle Standing Pose MAX files are different from the Rigged avatar file so please verify that you are using the MAX file mentioned above.
FemaleAction.ZIP MaleAction.ZIP Idle Pose contents The Idle Pose MAX files give you an avatar in the base pose that all of IMVU's animations are built from. While the position of the avatar bones is important to skeletal animations, it doesn't make a difference to facial morph animations. Equally unimportant to facial morph animations is the inclusion of the glasses on the avatar head. The glasses exist only as an eample of how to an avatar accessory ought to be set up. To learn more, please go to the Avatar Accessory Introduction.
How to animate in MAX To learn how to animate anything in MAX, including morph targets, please go to the Animate In MAX Tutorial.
Action Types There are three types of avatar Actions: 1. Idle Actions - these Actions play animations continuously. They are meant to be interrupted by the other types of animations. 2. Stance Actions - these are animations triggered by the joining of a seat. They are closely related to Idles in that they play continuously once the seat has been joined. 3. Triggered animations - these animations are played when activated by a trigger word like 'wave'. They usually replace the morph channels being used in the Idle animation. Knowing how an animation is going to be used in IMVU *before* you build it helps you build the right kind of animation and helps reduce iteration time. Heads vs. Bodies While it is possible to make and we encourage you to play with morph targets for body parts, we understand that this may not be the easiest thing in the world. So, although the tech and export requirements are the same, we will focus on facial morphs for now.
One Size Fits All When you make a morph animation on the IMVU Female head, that same animation will apply to the IMVU Male head and vice versa. Although some of IMVU's animations have been built specifically for one gender, the vast majority were just built using the female head. The reason for this is that both heads contain the same morph target names.
How It All Works A Head is Built First, the head mesh is built. Then, all of the morph targets are [painstakingly] built. To learn more about how to build an Avatar Head, please go to the please go to the Avatar Head Tutorial. Next, all of the morph targets are linked to the head mesh and the head mesh is exported as an XMF file. At this stage, we have a head that has several embedded channels. Each channel is named and contains data about where the vertices of that morph target live.
How It All Works - Animate That Head File
With a fully teched head built, animating that head is now possible. Typically, this means opening up some sort of master file that contains a head that has a morpher modifier applied underneath its weighting modifier. All of the morphs target necessary to animate are loaded in that modifier. In IMVU's case, that is the Female04_Anime01_IdleStandingPoseMASTER.max file.
To get access to the morph targets embedded in the master head, click on the head mesh. You will see the stack on the right hand side open up with three modifiers applied. The middle modifier is named 'Morpher'. Click on the 'Morpher' modifier and you will see the Channel List box expand. The Channel List contains all of the individual morph targets found in the head. Use the scroll bar on the left to scroll through the list of 79 morphs. Each channel has a slider. The sliders go from 0 to 100 so, if your slider is set to 50, then 50% of that morph is applied.
How It All Works - Deep Dive Information When you create a morph animation, what you are really doing is exporting an .XPF file that contains a list of channel percentages over time. For example, an exported smile animation might essentially look like this: frame: 0 morph name: mouth.Smile.Exclusive percentage: 0% frame:2 morph name: mouth.Smile.Exclusive percentage: 100% So, you want to change the percentage of the morph target over time. To learn more about animating in MAX, please go to the Animate In MAX Tutorial. Note how at frame 0, the percentage of the smile was 0%. Then, at frame 2, the percentage of the smile was 100%. That is all your XPF file tells IMVU: what changes and when. If a head product did not contain a morph target named mouth.Smile.Exclusive, then no animation would be applied.
Use IMVU's Morphs IMVU has a centralized morph control system. This means that although you may be able to make your own emotion morphs in the 3D files we supply, those morphs will not show up in the live IMVU product. This is due to our having exported our heads with a given set of morphs. Although we do not currently support user created emotion morphs on the IMVU created heads, you CAN make your own heads with morphs that match the names on our heads. To learn more about making your own head, please go to the Avatar Head Tutorial In the meantime, it is important to know what the morph names actually mean as they impact how they are played in the IMVU client.
Morph Naming Convention The morph targets have a naming convention that dictates what kind of morph they are. This naming convention must be used or your morphs will not play back in IMVU. An example of a properly named morph target is leftBlink.Clamped where the .Clamped suffix is the morph type. The prefix of the name can be anything you like. Here is a breakdown of what the four morph types are and what they mean: .Clamped - allows multiple morph animations to affect the channel but clamps the sum of their effects to 100% .Averaged - allows mutlipe morph animations to affect the channel, averages the result. .Exclusive - allows only one morph animations (the most recent one applied) to affect the channel, no cap on value (i.e. allows values greater than 100%) .Additive - allows multiple animations to affect the channel, values are added together. Morph Names
Below is the full list of morph names IMVU uses in its base avatar heads. There are 79 of them. These are the morph names available to you if you want to make a morph animation using the IMVU base avatar heads. See them in all their RED glory: blink.Left.Lower.Clamped blink.Left.Upper.Clamped blink.Right.Lower.Clamped blink.Right.Upper.Clamped eyebrow.Left.Angry.Average eyebrow.Left.Down.Average eyebrows.Left.Center.Up.Average eyebrows.Left.In.Average eyebrows.Left.Mad.Average eyebrows.Left.OuterDown.Average eyebrows.Left.OuterUp.Average eyebrows.Left.Sad.Average eyebrows.Left.Up.Average eyebrow.Right.Angry.Average eyebrow.Right.Down.Average eyebrows.Right.Center.Up.Average eyebrows.Right.In.Average eyebrows.Right.Mad.Average eyebrows.Right.OuterDown.Average eyebrows.Right.OuterUp.Average eyebrows.Right.Sad.Average eyebrows.Right.Up.Average Eyes.Bugged.Left.Average Eyes.Bugged.Right.Average Eyes.POP.Left.Average Eyes.POP.Right.Average Eyes.Scale.Left.Average Eyes.Scale.Right.Average left.Eye.Down.Clamped left.Eye.Left.Clamped left.Eye.Right.Clamped left.Eye.Up.Clamped mouth.BigSmile.Exclusive mouth.BigSmileLEFT.Exclusive mouth.BigSmileRIGHT.Exclusive mouth.CheekLEFT.Exclusive mouth.CheekRIGHT.Exclusive mouth.Cheeks.Exclusive mouth.Down.Exclusive mouth.Frown.Exclusive mouth.FrownLEFT.Exclusive mouth.FrownRIGHT.Exclusive mouth.Grin.Exclusive mouth.GrinLeft.Exclusive mouth.GrinRight.Exclusive mouth.JawDown.Exclusive mouth.LeftSmirk.Exclusive mouth.RightSmirk.Exclusive mouth.MadLip.Exclusive mouth.MadLipLEFT.Exclusive
mouth.MadLipRIGHT.Exclusive mouth.Narrow.Exclusive mouth.NarrowLeft.Exclusive mouth.NarrowRight.Exclusive mouth.OH.Exclusive mouth.Open.Exclusive mouth.Pucker.Exclusive mouth.Scream.Exclusive mouth.Smile.Exclusive mouth.SmileLeft.Exclusive mouth.SmileRight.Exclusive mouth.TongueDown.Exclusive mouth.TongueLEFT.Exclusive mouth.TongueOut.Exclusive mouth.TongueRIGHT.Exclusive mouth.TongueTHIN.Exclusive mouth.TongueUp.Exclusive mouth.Up.Exclusive mouth.Wide.Exclusive mouth.WideLeft.Exclusive mouth.WideRight.Exclusive nose.Flare.Exclusive nose.FlareLeft.Exclusive nose.FlareRight.Exclusive nose.Long.Exclusive right.Eye.Down.Clamped right.Eye.Left.Clamped right.Eye.Right.Clamped right.Eye.Up.Clamped There is an 80th morph target, Face.Average, but that is not used for animation. To learn more about how to utilize this morph target, please go to the Avatar Heads Tutorial. Making Your Own Any animation morphs you make for the IMVU heads that do not follow the above naming will not show up in the live product. If you plan to make your own morphs as opposed to using the ones that are baked into the IdlePose Heads (ie - the list above), you need to build your own head file. To learn how to do this, please go to the the Avatar Heads Tutorial.
Blend In / Blend Out Although this section focuses on a feature found in the Previewer, it is important to keep in mind while building your animation.
As discussed below, the frame controls in the Previewer allow you to loop your animations. However, they also allow you to blend whatever animation is playing into your animation. This is very handy for morph animations as a non-blended jump from one morph animation to another can leave unpleasant artifacts for a few frames.
Vogue Animations Vogues are single frame or low frame animations that have very small file sizes. These animations rely on the blend in/out functionality of the Previewer to work properly in IMVU. Now, by no means are Vogues required to be simple expressions - but, regardless of the expression you are making, it is still just an expression. Think of it as a snapshot of an avatar statue's face....or an avatar stuck in an icy, frozen tundra surrounded by once fresh dreams that are only now beginning to thaw. By exporting this simple morph animation, you pretty much guarantee that your animation file size will be quite small. Small file size is really, really good. You should want your file sizes to be as small as possible. Once you've gotten your animation exported, simply play with the blend in/out and loop duration functionalities in the Previewer to get your Action product just right. You can loop a 2 frame animation for 30 frames and (at 30 frames per second) end up with a 2 second animation of your avatar's facial animation. Very cool and very cheap to download. Cheap download = wonderful customer experience. The only drawback to using Vogues is the aesthetically unappealing look of linear translation. However, this is more of a skeletal animation issue. Using Vogues for Morph animations is always OK. File Size Budget The win for doing vogues is keeping your overall animation size down. Please keep in mind that the more morph targets you animate and longer the duration of your animation, the larger your Action product is going to be. The larger your file, the longer it is going to take to load during a conversation. Please be as discerning as you can about where you spend your animation budget. We want you to be successful and it will be hard to be successful if your products take too long to download. Catalog Snapshot If you are creating an animation as a final product, please remember to take a 100x80 pixel Catalog snapshot. To learn more about catalog snapshots, please go to the catalog snapshot tutorial. Export Once you have built your animation, you must export it as an .XPF file. .XPF is a Cal3D file format that is installed in MAX when you install the Previewer. .XPF files are what the IMVU Previewer recognizes as morph animation files. In order to export your Morph Animation file, select the main head mesh. In the case of the Female04_Anime01_IdleStandingPoseMASTER.max, the head mesh is called 'female01.Anime01.Head'. In the case of Male03_Anime01_IdleStandingPoseMASTER.max, the head mesh is called 'AnimeHead.Male01'. With the head mesh selected, choose Export in the file menu. Scroll to the .xpf file format, name your file (remembering to manually type in the .xpf at the end of the name) and click Save. In the Cal3D window that appears, verify the actual time values of the animation. Although they are almost always exactly the numbers they need to be, you should still check that the start and end frame numbers match what you intended to export, and make sure the frames per second is set to 30. Click finish.
Animation file: EXPORTED!
What's Next? Now you're ready to bring your xpf into the Previewer to make an Action. To learn how, go to the Previewer - Actions Tab Tutorial.
Before we begin, I should say that building an Avatar animation is not easy...but it gets easier the more you do it. In IMVU, you have the power to create your own actions as products. This includes both skeletal and morph animations. How cool is it that you can offer your own version of “lol” or make something entirely new out of “MonkeyDance”? IMVU offers you the tools to take your exported animation file and sell it to countless stunned and impressed IMVU users. Note: This tutorial is about building avatar skeletal animations. That means it is about moving the avatar body. If you want to learn about avatar morph animations, ie - how to make the face move, please go to the Avatar Morph Animation tutorial.
For the purposes of this tutorial, we will be using 3DS MAX. The process described in this document is based on the skeletal hierarchy used in the IMVU avatars. Also, for the purposes of this tutorial, we will be using the rigged avatar MAX file. However, the basics apply to any avatar MAX file you use. Retrieve the Idle Pose files The first thing you need to do is get the avatar MAX files. To learn more about which files you might want to download, please go to the Avatar Animation Files tutorial. IMVU strongly recommends you use the Rigged Avatar file to create your skeletal animations. Start Max and open the Rigged Avatar file. The Idle Pose MAX files are different from the Master Mesh MAX files for each avatar so please verify that you are using an Idle Pose MAX file. RiggedAvatarMaster.ZIP FemaleAction.ZIP MaleAction.ZIP
Idle Pose contents The Idle Pose MAX files give you an avatar in the base pose that all of IMVU's animations are built from. Starting from this Idle Pose is very beneficial for playing your animation at runtime in IMVU. By starting with this pose, you avoid awkward and unsightly animation artifacts.
Rigged Avatar File To brush up on just how to use the Rigged Avatar file, please go to the RiggedAvatarFileTutorial.
How to animate in MAX To learn how to animate anything in MAX, including avatar skeleton bones, please go to the AnimateInMAX.
Root Node The same skeleton is used for both the Female and Male avatar. This allows you to rapidly create animations that apply to both avatars. Any avatar skeleton is made up of a series of 'bones' and 'nodes'. The bones and nodes are attached to one another in a hierarchical manner so that bones further down in the hierarchy are effected when bones higher up in the hierarchy are animated. For example, if you rotate the shoulder, you expect the hand to move with the rest of the arm instead of just sitting in the same spot in 3D space. The bone at the top of the hierarchy in any skeleton is called the 'Root'. The name of the Root node in the IMVU avatar skeleton is 'Female03MasterRoot'. The position of the root node relative to the avatar is very important.
Root Position The root node is the node that is attached to seats in IMVU. This means that your avatar's position in a scene relies on its offset from the root node. If your avatar has been positioned so that the root node is located near its chest, then the avatar will appear halfway through the floor in IMVU. Therefore, it is important that you do not animate the root node.
Animation Types There are three types of avatar animations: 1. Idle animations - these animations play continuously. They are meant to be interrupted by the other types of animations. 2. Stance animations - these are animations triggered by the joining of a seat. They are closely related to Idles in that they play continuously once the seat has been joined. 3. Triggered animations - these animations are played when activated by a trigger word like 'wave'. They usually replace the bones being used in the Idle animation.
Knowing how an animation is going to be used in IMVU *before* you build it helps you build the right kind of animation and helps reduce iteration time. Large Movements (insert joke here) When animating for IMVU, it is important to understand that your animation is more than likely going to be played within a window that is around 400x300 pixels large. This means that both your skeletal and morph animations ought to be larger than life. You should make them more exaggerated than you normally would. Seat offsets One of the multitude of cool things about animating for IMVU is that you can play with the actual position of the avatar. Ie. Make them float, stand on their head, spin in place. You can do this by animating the Pelvis Bone and Foot Controllers. Remember, though, that these floating/spinning/flipping animations are only possible if you do not animate the Root node.
Portional Animations You can animate parts of the avatar (as opposed to the whole body) if you like. This allows your animation to work on top of other animations. For example, our initial wave animation only animates the right arm while leaving the rest of the bones alone. This means that whether the avatar is Sitting or Standing or Dancing the Watusi, that 'wave' animation will play and not override the stance of the avatar. You will learn later how to export only the bones you want. For now, though, remember that if you don't need it, don't animate it. Blend In / Blend Out Although this section focuses on a feature found in the Previewer, it is important to keep in mind while building your animation.
In order to avoid popping from an Idle animation to your animation or from your animation to any animation, it wise to start and end your animation in the Idle Pose or close to it. You can play with Blend ins and outs later in the previewer. However, the effect of getting as close to the Idle Pose as possible during your fade out can not be ignored: its rather nice. Vogue Animations
Vogues are single frame or low frame animations that have very small file sizes. These animations rely on the blend in/out functionality of the Previewer to work properly in IMVU. Now, by no means are Vogues required to be simple poses - but, regardless of the pose you are making, it is still just a pose. Think of it as a snapshot of an avatar statue....or an avatar stuck in an icy, frozen tundra surrounded by once fresh dreams that are only now beginning to thaw. By exporting this simple pose, you pretty much guarantee that your animation file size will be quite small. Small file size is really, really good. You should want your file sizes to be as small as possible. Once you've gotten your animation exported, simply play with the blend in/out and loop duration functionalities in the Previewer to get your Action product just right. You can loop a 2 frame animation for 30 frames and (at 30 frames per second) end up with a 2 second animation of your avatar striking a pose. Very cool and very cheap to download. Cheap download = wonderful customer experience. The only drawback to using Vogues is the aesthetically unappealing look of linear translation. Linear translation means that since there are no interstitial frames between, say, the Idle Pose and your new “Eureka” animation, the bones will animate in a line from where they are in the Idle Pose to where they end up in the Eureka pose. Feet won't walk to position, they will slide. Arms sometimes slide right through the avatar body. However, IMVU has found that this simply doesn't matter to the end user. File Size Budget The win for doing portional animations and vogues is keeping your overall animation size down. Please keep in mind that the more bones you animate and longer the duration of your animation, the larger your Action product is going to be. The larger your file, the longer it is going to take to load during a conversation. Please be as discerning as you can about where you spend your animation budget. We want you to be successful and it will be hard to be successful if your products take too long to download. Pos/Ori locking To learn more about locking the position and orientation of a bone in MAX, go to the Position & Orientation Tutorial. Catalog Snapshot If you are creating an animation as a final product, please remember to take a 100x80 pixel Catalog snapshot. To learn more about catalog snapshots, please go to the catalog snapshot tutorial. Export Once you have built your animation, you must export it as an .XAF file. .XAF is a Cal3D file format that is installed in MAX when you install the Previewer. .XAF files are what the IMVU Previewer recognizes as animation files. In order to export your Animation file, select the master Root node ('Female03MasterRoot') and choose Export in the file menu. Scroll to the .xaf file format, name your file (remembering to manually type in the .xaf at the end of the name) and click Save. In the Cal3D window that appears, you will be prompted to supply a skeleton/.xsf file. Browse to the skeleton file you want your animation to work on. This must be the skeleton of the avatar you are animating in MAX. The IMVU avatar skeleton is called Female04_Anime01_SkeletonMASTER.xsf and comes with ZIP files.
Remember Portional Animations? If you want, you can export only portions of the skeleton. For example, if you want to have the avatar do a wave animation, you only have to export the bones affected in the wave. Ie -the clavicle, shoulder, arm and hand. This approach frees the rest of the skeleton up to be driven by the avatar Idle animations (like changing posture while standing) and looks very natural. There are two ways to choose a subset of the bones in the skeleton when exporting. 1. You can simply check the boxes next to the bones you actually want to export. This means actually unchecking everything else in the list. To do so, you can click the uncheck all button and then go in and check the bones you want to export. 2. You can select the bones you want to export in MAX, choose to export an .xaf file, and then click the Choose Selected button in the skeleton hierarchy section of the exporter. Step 3 of the Cal3D animation exporter is where you verify the actual time values of the animation. Although they are almost always exactly the numbers they need to be, you should still check that the start and end frame numbers match what you intended to export, and make sure the frames per second is set to 30. Click finish. Animation file: EXPORTED! What's Next? Now you're ready to bring your xaf into the Previewer to make an Action. To learn how, go to the Previewer - Actions Tab Tutorial. You are also ready to turn this animation into a statue and merge it into a Furniture or Room file. To learn how, go to the
Avatar Statue tutorial
The Rigged Avatar rules. You can get it by clicking here. This file is so easy to manipulate it makes creating beautiful animations a snap. Each of the controllers that make up this avatar rig have their own little tricks so we'll cover them each in detail. It is important to note up front, however, that the Rigged Avatar file does not contain facial morphs. Alas, our efforts to create a file that contains both the morphs and the joystick controller have all ended in failure so far. So, you will have to use a separate file in order to build morph animations for your avatar. The role of the Rigged Avatar file is to expedite skeletal animations. IK One of the best features about this rig is that all of the inverse kinematics have been worked out in advance. This means that when you move the foot controller around, the rest of the leg follows...and bends in much the same way a human leg would bend. This is true for the arms, spine and neck as well. When you first open the file, you will notice that only the controllers are visible. The bones in the avatar skeleton have been hidden on purpose so that it is easier to see what the controllers are doing to the avatar. The controllers essentially tell the avatar bones how to behave so you only need to see the controllers in this file to make a great animation. If you want to see the avatar skeleton bones, just choose to unhide all. The controllers themselves can be moved and rotated over time just like any other bone in MAX. This means that if you want to build an animation, you simply move the controllers over time. Note: The root bone, Female03MasterRoot, should never be animated. This is the bone that is applied to the seat node in IMVU. Therefore, an avatar's animation (ie - the rotation and position of bones over time) only makes sense to the IMVU system as a series of offsets from this root bone. So, just to say it again, leave this bone in one spot in every avatar animation you make.
Foot controllers There are two foot controllers - one for each foot. haha. These can be moved and rotated just like any bone in MAX. Think of the foot controllers as the source of gravity for the feet. If the body is close enough to the foot controllers, the feet will look like they are on solid ground.
Foot Controllers 2 However, if the Pelvis bone is lifted off the ground, the feet will raise off the ground also but, as you can see, they will point towards those foot controllers. In this manner, it is pretty easy to create a floating effect. Just raise the pelvis off the ground!
Foot Controllers Custom Attributes With any controller selected, you can click into the 'Modify' tab on the right and gain access to the 'Custom Attributes' on the bottom of the tab. Some controllers do not have custom attributes but, for those that do, you will always find them here.
Foot Controllers Custom Attributes The foot controllers have two custom attributes: Roll and ToeRotate. As you can see in the above images, by adjusting the ToeRotate slider, you can point the toes or roll them up. Also, by adjusting the Roll slider, you can raise the foot off of the controller either by pivoting on the heel or pivoting on the ball of the foot. This is handy for toe tapping and heel stomping, respectively.
Knees The Knee controllers effect the lateral movement of the knees. Need to squeeze that horse in the saddle a little more? Just move those knee controllers in a bit. While lateral movement of the knees is great and all, sometimes, it results in some wacky ankle rotation. This is because the foot bones want to move when you move the knee controller but they are locked to the foot controller. The fix for this ankle rotation is the attribute called rollFoot. Moving the rollFoot slider effects the yaw of the foot.
Pelvis The Pelvis is the only controller that is actually a bone in the avatar skeleton. It influences all of the other upper body controllers. ie - when you move the Pelvis, then the spine, shoulders, arms and head move too. As discussed in the Foot controller section, the Pelvis moves independant of the foot controllers. This is very handy for when you have your feet in the perfect position but you just want to lower the body a little bit.
CTRL_HIPS This controller effects the hip bones of the avatar. It can swivel the hips independat of the Pelvis. This means it can swivel the hips without affecting the upper body. This controller was also built in a handy arrow shape. So, you can see exactly which direction your pelvic area is pointing.
The Spine Controllers CTRL_SPINE01 is the base contoller for the avatar's spine. The spine controllers are unique in that they can not be moved and can only be individually rotated along the X and Z axis. This means they can not individually be rotated sideways. CTRL_SPINE02, CTRL_SPINE03, CTRL_SPINE04 effect the rest of the bones along the spine. The custom attribute for the CTRL_Spine01 bone is SpineTwist. This moves all of the spine bones in unison to create a more believable spine rotation.
The other spine controllers CTRL_SPINE02, CTRL_SPINE03, CTRL_SPINE04 effect spine bones 2, 3 and 4.
Shoulders CTRL_shoulderL and CTRL_shoulderR move the shoulder in the socket (like a clavicle/scapula movement). Attribute shoulderTwist rotates the shoulder bone in place without effecting the bicep or clavicle rotation. This is very handy when doing raised arm animations as it makes the mesh around the shoulders behave more like a real shoulder.
Wrists CTRL_LWrist and CTRL_RWrist control the overall position of the arms as well as the rotation of the wrists. Attributes include both cupHand and WristTwist. cupHand is useful for opening up the hand to show emergency or to fold the hand in for making a tight fist. cupHand's default is set to 3.0. WristTwist is really useful as you will undoubtedly warp the forearm mesh when moving the wrist controllers around. Just slide WristTwist up or down to rotate the forearm bone and get the forearm mesh to retain its mass. We have found that when the forearm does not collapse, the believability of the animation is retained and the customer has a positive experience.
Elbows S_LElbow and S_ElbowR control the direction of the elbows. Its fun to just move these around and see how it influences your animation.
D_Head D_Head's only function is its custom attribute. By sliding localToWorld up, D_Head has more and more control over the head bone of the avatar. This allows you to move the body around in all kinds of crazy ways but keep the head looking forward. Kind of like the movements of an expert skiier. Note: The localToWorld attribute trumps the joystick controls so remember to check the use of both in your animation.
Joystick Controllers Remember to turn on the 'Select and Manipulate' tool in order to activate all joystick controls. The joystick controls have no custom attributes but are very powerful tools. The groups of five controllers found on the bottom left and bottom right of the screen control the fingers of the avatar. The amount of control is impressive as is the emotional impact to your animations.
NeckTwist and NeckBend These joystick controls effect the rotation of the head bone. NeckTwist allows the neck to influence the direction of the head. NeckBend effects the pivot of the head in every direction. These two controllers are great for having an avatar look around or shake their head no or nod yes or....anything.
IMVU uses a program called 3D Studio MAX to build all of its 3D assets. MAX is a great tool not only for building 3D meshes and skeletons but also for animation. This tutorial is going to run through the basics of animating in MAX and its information applies to both skeletal and morph animations. There are no doubt details of animating in MAX that this tutorial will not cover. Repeated play with the tool is recommended. FPS Animation = change over time. This implies that you, as an animator, can control what happens to an object over a given number of frames. 3D animation is usually measured in frames per second. Most 3D games and softwar run at 30 frames per second (or 30 fps). IMVU tries to run at 30 fps also. This means that for every second that goes by in real time, 30 frames of IMVU are drawn on your screen. If you want an animation that lasts four (4) seconds, you would multiply 4 x 30 and make your timeline 120 frames long. Change Timeline When you first open MAX, you will notice that the number of frames shown in your animation slider bar may not be 120. To change the number of frames, click on the 'Time Configuration' button in the lower right.
Time Configuration TThis will open the 'Time and Configuration' dialog box. To change the time to 120 frames, type '120' into the End Frame text field and then click OK. You will see that the number of frames listed in your animation slidar bar has changed to '120'.
Enter Animate Mode At the bottom of the screen, toward the right, there is a button called 'AutoKey'. The AutoKey button allows you to enter and exit animate mode in MAX. While the AutoKey button is selected, both it and the frame around your active viewport will turn red. So, when you see red, that means you're in animate mode. When you're in animate mode, you can adjust objects over time and those adjustments will be recorded within MAX.
Move an Object Over Time Once in Animation mode, move the animation slider to 30 frames. Now, select the object in the scene you want to animate and move it to a new location. What you have just done is create a 'key frame'. When you adjust the object in any way at any point in the timeline other than zero, a new key frame will be created. You will also notice that when you made that first key frame, another key frame was automatically added to frame zero of your timeline. This will come in handy if you want to loop your animation. More on that in a bit. If you grab the animation slider and move it between frame 0 and frame 30, you will see that the object moves in space. As it moves, it is estimating the difference in values at any given frame between the first value and the second value. This is called 'interpolation'. Now, Make new keyframes at 60 and 90 frames - moving the object to new locations at each key frame.
Looping When your animation begins and ends with the exact same adjustments, then that animation may be 'looped'. This means that you can play the animation over and over and it will look like one continuous motion. If your animation begins at one place and ends at another, then it will pop when played over and over. An easy way to make an animation loop is to make a copy of the key frame at frame 0 and place it at frame 120. You can do this by shift+clicking the key frame in the animation timeline and then dragging it over to the right. Let go at frame 120 and you will have a looping animation. Curve Editor Using the Curve Editor is optional. The Curve Editor is a really handy tool for when you want to adjust how long on object waits between keyframes. To open the Curve editor, Just click on the 'Curve Editor' button at the top right of MAX. This will launch a new dialog window that should show all kinds of colored lines with dots on them. These are the XYZ curves of both the position and rotation of your object's animation. You can adjust the details of your animation using the tools provided in the Curve Editor. You can also make changes to individual channels of a key frame by moving the dots along the lines. This is one of MAX's most powerful features as it lets you build an animation in keyframes and then adjust just when individual objects begin and end their animations. Also, you can use the Curve Editor whether you are in Animation mode or not.
Curve Editor Filters If no colored lines appear in your Curve Editor, then you need to change the settings. To change the settings, you must click the 'Filters' button on the upper left of the Curve Editor. This will launch the Filters window. We typically use the settings provided in the image below.
Filters If no colored lines appear in your Curve Editor, then you need to change the settings. To change the settings, you must click the 'Filters' button on the upper left of the Curve Editor. This will launch the Filters window.
Exit Animate Mode When you are finished creating your animation, make sure to Click the Auto Key button again and get out of Animation mode. One of the tricks of animating using MAX is remembering when you are in Animation mode. However, with some practice, you'll get the hang of it.
Play Animation Once you are out of animation mode, click the play button on the bottom right side of the screen. You will see that your object interpolates from spot to spot in a fluid motion. Press play on the example image below to see how simple interpolation looks.
Make Adjustments Remember, you can iterate on your animation as much as you like to get it perfect. Have fun!
Sometimes, an animation calls for a bit more control than what you normally find in the base MAX files that IMVU supplies you. In these instances, it makes sense to lock the position and orientation of a bone or set of bones in the avatar skeleton. This makes it really easy to do things like push-ups or anything where the avatar body moves but the hands stay fixed. Although we will focus on hands in this tutorial, you can apply the same idea to any bone(s) in any skeleton. Make your Pose Even if I know in advance that an animation is giong to require a pos/ori lock, I often build the basic pose first. This allows me to figure out some of the nuances of the pose before deciding on where to lock the bones. In the pose on the left, I want to have the avatar pushing against a solid wall. You will note that, without the hands locked in place, the animation looks more like some kind of defensive tai chi than pushing against something of substance.
Create Dummy Node Once the basic pose is made, create a dummy node for every bone or controller to be locked. Open the 'Create' tab on the right side of MAX and click the 'Helpers' icon (tape measure). Then choose the 'Dummy' button and click/drag inside the viewport. When I let go, I have created a new dummy node. You can name the Dummies whatever you want if you find that helpful.
Align Dummy Node Dummy nodes can be snapped to the exact location and rotation as any other object in the scene. First, select the object that you want to align. In this case, it is your new Dummy node. Then, click on the Align tool on the top right of MAX. You will see your cursor change. Next, click on the object that you want to align to. In this case, I choose the left wrist controller.
Align Dialog Box When I click on the left wrist controller, the Align Selection dialog box appears. I then make sure that these three options are selected: 1. X, Y and Z Position - this moves the dummy node to the exact location of the wrist. 2. Pivot Point- I know that the Pivot point for both objects is dead center on both of them. 3. X, Y and Z Orientation - This rotates the dummy to the exact same rotation as the wrist.
Node Aligned After I click OK on the Align Selection dialog box, I can see that my dummy node is now in the exact same place and rotation as the wrist bone.
Assign Pos/Ori Select the wrist bone and assign a Position Constraint and an Orientation Constraint. Go to Animation/Constraints and choose Position. Then select the dummy node. The dummy node blinks to indicate the constraint has been applied.
Next I choose the Orientation Constraint option, and then click on the dummy node agian. It blinks again to let me know the constraint has been applied. Bask in the glory With Pos/Ori locks on the wrists, you can check out the animation. As you can see on the right, the hands now stay in one place. The illusion that the avatar is pushing up against something solid is achieved. Oh, and....Only the Pelvis is being animated in this shot. This means that your final animation looks compelling and is a very small file size.
If necessary: Delete Pos/Ori But what if you want to delete those Position and Orientation constraints? Have no fear. You can easily delete constraints by going into the 'motion' tab. With the 'Parameters' button selected, you can choose to see what constraints have been applied to Position and Rotation. If you want to delete the Position Constraint, just click on its name in the Position list. This will activate the Delete option below it. Click Delete and the constraint is gone. You can follow the same process for the Orientation Constraint.
This tutorial applies to both room and furniture products and assumes you are using 3DS MAX. In more complex products, you may have multiple avatar animations. To more easily keep tabs on all of the poses in your product, you need to be able to see posed avatars in the exact right location. However, keeping multiple versions
of the animatable avatar in one MAX file makes your file unworkable - the file size becomes just too large. In these situations, you ought to turn your avatar into a more easily managed 'statue' that you will add to your furniture or room MAX file. For the purposes of this tutorial, we assume your intent is to embed a statue into a furniture product. However, the same process is used for embedding a statue into a room product. Since you are building an animation for use in a furniture file, we assume that you have already imported the furniture items and root node into the avatar animation file. This avatar statue is not at all necessary for your final furniture item to work properly. However, it is one of the best ways to verify placement of the seat node and, to be perfectly honest, I find it very useful to know which animation is supposed to show up where. In order to make an avatar statue that is useful, you need to have already built an avatar animation and a room or furniture file. To learn how to do these things, please go to the Avatar Skeletal Animation Tutorial, the Room Introduction tutorial and the Furniture Introduction tutorial. Start with Avatar Animation With your final avatar animation open, the first thing to do is Save As another file. You need to save a new file so you don't override all your wonderful animation by mistake. I typically save these avatar statue files as something I know to throw away like "AAA.max"
Collapse the Meshes Select all of the avatar meshes Right click and collapse all of the meshes into an 'Editable Mesh' Note: I rarely include the hands in my avatar statue as they tend to make the final furniture file needlessly take up more space on my computer. I only include them if hand registration is important to the final seat location.
Select and Unhide With the avatar meshes still selected, select the avatar root node, the furniture mesh and the furniture root node. Then, right-click and choose to Unhide all. This will show all of the hidden skeletal structure for the avatar. This extraneous stuff is what you are about to delete.
Hide Selected With the avatar meshes, avatar root node, furniture mesh and furniture root node still selected, right click and choose to Hide the selection. You will be left with only the extraneous stuff like the bones and controllers that drive skeletal animation. Note: You want to make sure that all of the avatar meshes, avatar root node, furniture mesh and root node are hidden.
Delete What's Left Select All (usually ctrl+A) so that all of those bones and controllers are selected. Then, delete all of the extraneous stuff. At this stage, you should see nothing in the active viewport.
Unhide All After you have deleted all of the bones and controllers, choose to Unhide All (I typically right click and choose 'Unhide All'.) Now you see only your avatar meshes, avatar root node, furniture mesh and furniture root node.
Rename and Attach Select the avatar head and rename it. I usually use a naming convention that allows me to easily find my collapsed avatars in the furniture file. For example, "Av_Bounce" or "Av_SteamEngine" or, in this case, "Av_ChickenDance". With the renamed head still selected, go to the Modify panel on the right and click the 'Attach' button. Now, click on all of the other avatr meshes until they are all selected. You have just turned your avatar into a statue. IMPORTANT: Make sure you un-check the 'Attach' button so you don't mistakenly attach the root nodes or the furniture mesh to your avatar.
Rename the Avatar Root Node I always use the avatar root node as the seat node. This ensures that my avatar is in the *exact* right location in relation to the seat node. To do this, I rename the root node using the seat naming convention. To learn more about seat naming, please go to the Seat Naming Convention tutorial. In this case, I will rename the root node seat01.ChickenDance
Create a New Dummy Root Create a new, large Dummy node and align it to the furniture root node. This new dummy node is going to allow you to position your avatar animation perfectly. Name the new node DummyRootNode.
Select and Link Now you want your statue to be linked to the seat node and the seat node to be linked to the dummy root node. Link tha avatar statue to the seat node. To do this, select your avatar statue and click on the 'Select and Link' tool. Then drag from your avatar to the seat node. The seat node should blink to let you know the parenting has taken place. Follow the same process to link the seat node to the dummy root node. Now, uncheck the link tool. To verify that your parenting has taken place, click the 'Select by Name' button and make sure that you see your avatar statue indented underneath the seat node. Also verify that you see the seat node indented underneath the root node. Remember to SAVE this file.
Merge into Room/Furniture File Now you have a correctly parented avatar statue. The next set of steps define how to get that seat node to be in perfect position in your room/furniture file. Open your room/furniture file and choose to merge in the contents of your avatar statue file. You should only merge in the dummy root node, the seat node and the avatar statue. If you hit material errors, just choose to use the scene material and hit OK.
Align Dummy Root Select the dummy root node and then click on the 'Align' tool. With the Align tool active, click on the furniture root node. This will launch the Align Settings dialog box. Choose to align the X,Y,Z for both the position and rotation and click OK. The dummy root node should now be in *exactly* the same position as the furniture root node.
Select and Link to Furniture Root Now that the dummy root node is in place, the avatar seat and statue are in the *exact* location they need to be. Thus, the dummy root node has served its purpose. Delete it. Then, select the seat node and click on the 'Select and Link' tool again. This time, link the seat node to the furniture root node. You should see the furniture root node blink to let you know the linking has taken place. To verify this, click on the 'Select by Name' tool to view the hierarchy. You should see the seat node indented underneath the furniture root node. WOOHOO! You just created an Avatar statue and merged it into your furniture max file! Select the Avatar statue and click the 'Unlink Selection' button. The Statue is now in place simply to let you know what animation is meant to go with the seat node. It also helps you see exactly how that animation interacts with other avatars and pieces of the furniture item.
The following tutorial teaches you how to add an avatar Action to your furniture or room product. An Action is the delivery system for animations in IMVU. Furniture and Room products can include Actions. Avatars can also include actions. However, did you know that Furniture and Room products can contain Avatar actions?! What craziness! Plus, they can both be triggered at the same time to make wonderful effects. There are some tutorials you may want to read in advance of reading this one. Specifically, you may want to read the Furniture Introduction, the Room Introduction and the Nodes for Furniture Tutorial. Plus, you will no doubt want to know how to make an Avatar Skeletal or Morph animation. If you have already read those tutorials, let's dive on in. Using 3DS MAX, adding Avatar animations to furniture can be easy or complex. We'll cover both of those options in this tutorial. Seperate Files You must think of your furniture animation and avatar animation as two totally separate entities that will be pieced together later in the Previewer. Just because your avatar animates along with your furniture item in MAX does not mean that it will automatically just show up in the Previewer. You will have to export that avatar animation separately. In most cases, before you can add an Avatar pose to furniture, you have to build the furniture item first. Assuming you have already built that furniture item, the next step would be to open up the Rigged Avatar file in 3DS MAX. To Learn more about that file, please go to the Rigged Avatar tutorial.
The EASY Section What makes this the easy section is the focus on adding the IMVU-made Sitting animation to the couch. This means that, in MAX, you are only positioning the avatar to *roughly* the same place as the sitting avatar animation. Then, by naming your seat node correctly, you will be able to automatically call the Sitting animation without having to create the avatar animation file itself. Easy! Easy - Default Animations There are two Actions that come standard in the IMVU avatars: Standing and Sitting. Positioning these Standing and Sitting seat nodes should be pretty easy because IMVU supplies those positions for you in the example chair, example couch and example room files. To learn more about how to create an avatar animation, click here.
Easy - Merge Furniture into Av File With the rigged avatar animation file open, merge in your already built Furniture item along with its root node (and all bones you feel could help). For the purposes of the easy portion of this tutorial, we will be adding a sitting animation to a couch. It is very important that you import the root node as well as the furniture mesh. Having the furniture root node in the avatar file will be of great help later when you want to merge the avatar pose back into the furniture file.
Easy - Position Avatar With the couch in place, position your avatar so that it is sitting exactly where you would want it to sit on the couch.
Easy - New Seat Bone Now that you know where the avatar ought to be positioned in order for it to sit on your couch, you need to create a new seat bone and add it to the couch's skeleton. To do this is easy. Just click on the 'Dummy' button under the Create tab/Helpers section. Click and Drag on the screen to create your new bone.
Easy - Align to Av Root Node Now Align that bone to the avatar's root node. The root node is the bone at the top of the avatar hierarchy. It is called: Female03MasterRoot
Easy - Link Seat Node to Furniture Root With your new seat bone merged into your furniture file, delete the BLERGEN bone. Now, you can link (or parent) the seat node to the Furniture Root node found in your furniture file. To learn more about bone parenting, go to the Bone Parenting Tutorial.
Easy - Rename Dummy Node Now that the dummy node has been put in the correct place, it is time to rename it as a seat node. Name it seat01.Sitting. To learn more about seat node naming, go to the Seat Naming Convention Tutorial.
Easy - Merge Seat and Root back into Furniture file Your seat01>Sitting node is now in the right spot in your avatar animation file. However, your furniture file does not contain this information yet. It needs to contain a properly parented and named seat bone when it is exported or the seat will simply not show up in IMVU. To get the seat node to show up in the exact right place in your furniture file, rename the furniture root node found in your avatar animation file to some nonsense word like BLERGEN. This node will be trashed after the merge so the name doesn't matter. Next, merge both the BLERGEN node and the seat01.Sitting node into your furniture file.
The Complex Section This section covers some edge cases and tips that will help you create great avatar/furniture animations. You have just learned how to utilize the Actions embedded in the IMVU avatars inside your room or furniture product. Ah, but what if you want to use a brand new animation? You can't know exactly where to place your seat node if you haven't created the animation yet. So, you must first create the avatar animation. Complex - Lock Position & Orientation Sometimes, you will want to make the location of the avatar's hands move with a piece of furniture. For example, if you wanted the avatar to lift weights on a bench press. To do this, you need to have two seperate animations: one for the avatar and one for the furniture item. To learn more about the Avatar portion of Pos/Ori, please go to the Position & Orientation tutorial. If you want the avatar and the furniture to move in unison, you would apply the same theory. Complex - Lock PosOri Node Creation In the case of the bench press, you will need to create three new dummy nodes that will become part of the Furniture skeleton. Two bones will be for each of the avatar wrists that you want to move with the bar. We'll call these LeftBar and RightBar. One more bone will be to drive the movement of the bar itself. We'll call that bone BarBONE.
Complex - Lock PosOri - Linking Link LeftBar and RightBar to BarBONE. To learn how to link bones to other bones, please go to the Bone Parenting tutorial. Now, you can move BarBONE and the other two will move with it.
Complex - Lock Wrists Its time to lock the Pos/Ori of the avatar wrists to the LeftBar and RightBar bones. Move the avatar hands into the exact position you want and then align the LeftBar and RightBar bones to their respective avatar wrist bones. Then, follow the instructions found in the Position & Orientation tutorial to lock the wrists to those bones. Now, when you move BarBONE, the avatar hands will move as well. In this manner, you can create one animation in MAX and use that same animation to export the Furniture xaf (selecting the Furniture Root node) and the Avatar xaf (selecting the Avatar Root node).
Complex Prop Action In the case of the bench press animation described above, you ought to utilize a feature in IMVU called Prop Action. A Prop Action is a room or furniture Action that is triggered when an avatar joins a seat. This allows you to begin both the room/furniture animation and the avatar animation at the same instant. If Prop Action did not exist, then your avatar might be pushing up while the bench press is coming down. To learn more, go to the Prop Action Tutorial.
Complex - Export Avatar Animation Once you have your avatar animation complete, export it as usual. To learn how to export an avatar animation, go to the Avatar Animation Export Tutorial.
Complex - Avatar Statue Now that your avatar animation exists, it is time to get your furniture file in order. In more complex products, you may have multiple avatar animations. To more easily keep tabs on all of the poses in your product, you need to be able to see posed avatars in the exact right location. However, keeping multiple versions of the animatable avatar in one file makes your file unworkable - the file size becomes just too large. In these situations, you ought to turn your avatar into a more easily managed 'statue' that you will add to your furniture file. To learn more about making a statue avatar, please go to the Avatar Statue Tutorial.
to the Previewer
h a furniture skeleton and mesh built, PosOri enhancements resolved, an avatar animation exported, *and* and tar statue merged into your furniture file...you are now ready to export your furniture skeleton as usual.
avatar animation you exported earlier will not just show up in the furniture item, though. You have to add it to Furniture product while using the Previewer. However, since you now have a seat node just waiting to accept avatar action, adding yours will be a cinch.
viewer - to add your exported avatar animation to your furniture product, you will need to open the Previewer. It ecommended that you create your furniture product without Actions so that you don't lose any work. To learn re about adding avatar animations to furniture products in the Previewer, go to the Avatar Actions Tutorial and Previewer - Actions Tab Tutorial.
Now that you have created your Mesh, textured, weighted, and exported it, you are ready to use the IMVU Previewer! If you haven't already, be sure to download the IMVU Previewer from the Content Creator main page, and install it on your computer. The IMVU Previewer is the last stop before Submitting your product to the IMVU Catalog. The Previewer allows you to bring all those pieces you have just Exported together into a CFL file, the format that is read by the IMVU Client.
The Previewer consists of three windows, the Preview window that allows you to see your product as you reconstruct it. If you are creating a Furniture product, you will see the default room where all new furniture items appear. This room is purely a stage for you to build on and will not export with your finished item. If you are creating a Room product you will load in your own derived room, in most cases Product 10860, which you will replace with your own mesh and textures. If you are creating an Avatar Accessory, or Avatar Action, then this window will be
white, with only your avatar in its center.
The second window includes various import categories, each with their own TAB. This is the place where you will import and adjust the settings for your product before you Submit it to the IMVU Catalog. The last window is a typical Command Prompt that quietly runs in the background as you work. If you have any problems along the way, this area may give a hint as to what might be going wrong. Understanding Derivation At its core IMVU works on the idea of Derivation. No product is created without it having been based on a preexisting product first. This means that you need to first load in a product to replace it with your own. In the case of Furniture, you would first load in product ID number 12908, then change or completely replace the product with your own. This means when you sell your product, the creator of the original product (#12908) gets a small cut of that purchase price. The great news is that in the future, when anyone derives from YOUR product, you make a few credits yourself, each time one of their items is sold. SO... if you were to create a mesh for a t-shirt that was very popular and allowed it to be derived by other Developers, you would get a small percentage of the sale of every single t-shirt based on your original Mesh! See how it works! When you first open up the Previewer, you will be asked to “Create a Derived Product” from any existing product that is in the same category as the one you are creating. We at IMVU encourage you to start with something basic, a product that is at the very beginning of the derivation chain. Although you could theoretically derive from any product that is set to derivable in the catalog, you don't want your selling price to be dictated by the dozen or so previous products that were derived from it earlier. With millions of products in our Catalog, this can happen fairly quickly, so we suggest you derive from the following? For Furniture products, derive from product 12908 For Locked Room products, derive from product 10860 For Furniture Room products, derive from product 12901 For Avatar Accessory products, derive from: for Female: product 683 or Male: product 669 For Avatar Action products, derive from: product 10838 For Modicon products, derive from product 745 For Avatar Heads you will need to derive from: for Female: product 61995 or Male: product 59086
These are all handy to know, because if you make a lot of any one type of product you will deriving from one or more of these product IDs quite often!
Previewer Login Each time you open the Previewer it will ask for your IMVU Avatar name and password. When someone attempts to edit a product, the Previewer will determine if the product's author is one of the Developer accounts associated with it. You will not be allowed to edit a product which is not your own. Consequently, no one else will be able to 'edit' your products - they will only be able to 'derive' from them, this is called “Asset Signing”. Asset signing gives IMVU a theft free Developing environment where you should feel safe placing your hard work into the IMVU catalog. What if I have multiple Developer accounts? If you have multiple Developer accounts, have no fear. You can add Developer accounts to one Preview install. Just click Help/Manage Developer Accounts to be brought to the 'Manage Developer Accounts' dialog. Within this dialog, you can add and remove Developers. You can also set which Developer is the default or active Developer.
Previewer Product Info Panel At the very top of your Previewer Import window you will find the Product Info Panel. This is where all the ownership information will be automatically listed. This includes your personal Developer ID, the unique Product ID for your product, the Parent Product ID (the product you are Deriving from), and the Product Type, or the type of product you are creating. The Product Info Panel also includes a big button with the words Apply Changes on it. For any changes to take place in the Preview window, you will need to click on the Apply Changes button first. In many cases you may wait until you have made multiple changes before clicking this button, purely to speed up the process. This panel also includes a Submit to IMVU Catalog, and Re-Submit Modified Product CFL buttons. These are use to submit your finished product, or to re-submit products that you have altered to the preexisting Catalog page. Advanced Mode If you will be producing a product more complicated than just a texture swap, you will need access to more of the Previewer's features. You can turn on Advanced Mode via the Edit menu in the Previewer Import
window.
To purge your CFL file of all extraneous assets, click on the CFL TAB. This tab shows you an itemized list of all of the assets currently contained in your CFL file. Among these assets you will notice a file called index.xml. Never delete this file. It is necessary. Otherwise, if you see a file you did not create personally (other than index.xml), then it is garbage and ought to be deleted. Once you have finished deleting files from the CFL tab, SAVE your product. When you save, you essentially make the asset deletions stick. Do not hit Apply Changes as this will only bring all of your deletions back and you will have to do the whole thing over again.
Add or Delete When Deriving from a product that contains more Material slots then your own product you may end up with unnecessary files saved in your final exported CFL file. Thus, we have supplied you with Add and Delete buttons. Clicking the add button adds a new material to the bottom of the list. While clicking the delete button deletes the Material that contains the button you are pressing. As you add or delete materials, please make sure that the Material/.xrf file you are using contains a sub-material whose name matches the Material ID number in the window. If the CFL file you started with contains more materials than you need, it is wise to delete them. Otherwise, the size of your CFL file will be unnecessarily large. There are two steps to deleting those extra files: delete the material reference in the Materials TAB and deleting the actual files from the CFL tab. You can also add Body Parts under the Geometry TAB. When you do this in a Furniture product, a new material panel is added in the Materials TAB. As you add Body Parts and materials to those Body Parts, the name of the material panel will procedurally change. P0M0 translates to Part Zero Material Zero. So, as you add parts, the P# increases and as you add Materials the M# increases. Save and apply changes Now that you have successfully loaded your skeleton, mesh(es), animation(s) and texture(s), it is time to Save and Apply Changes. It is always prudent to Save often.
The IMVU Catalog is filled with 3D generated products, and the success of any good 3D product is the quality of the textures applied to it. A Texture is the two dimensional artwork that is applied to a three dimensional “Mesh”. Adding a texture to a 3D mesh is much like wrapping a package, or covering a piece of furniture with patterned paper. Applying a texture to a 3D surface is called “Mapping” and can be the most time consuming aspect of creating a 3D product, and can be the difference between a professional or amateurish model.
IMVU is founded on the idea that many products in our catalog can be Derived from. This means that if a product is set as derivable, other creators can alter that item and sell it as their own. One of the most popular methods for deriving a product is to swap the textures applied to that product. One of the most successful examples of this are in the creation of new clothing items generated from a basic derivable Mesh. Developer KittenKat offers a large line of drivable Meshes that fellow developers can use to easily create their own products from. Below are just a few examples of products made from one of KittenKat's many derivable offerings.
Creating & Mapping Textures Textures are primarily created using a 2D application like Photoshop, although there are many software options out there to choose from. You will also run into a variety of ways in which textures are applied to a 3D Mesh. Here are a few examples of how a texture, or group of textures, might be use on a 3D Product.
UnWrapped Texture When creating a texture map for a 3D Mesh, some developers will UnWrap their mesh so that all of its many surfaces are laid out like a paper cutout. Each part is then painted individually, making it easier for a developer deriving from the model to swap the original texture and have a fairly good idea where the changes will be appearing on the pre-existing surface.
Individual Textures Other products may include a collection of individual textures that are applied separately. This is handy if a pattern, like wood grain, is repeated over multiple surfaces, or if a texture is going to be Tiled over an area larger than the single texture size (note the puple wood texture). This examples shows eight individual textures that were used to create this one product.
All in One Some Meshes, like those used in Avatars or Pets, are often comprised of one texture that includes all aspects of the finished model. This means that every surface is represented, and might also include shading that suggests turning form and highlights. This is very like the UnWrapped texture, but takes into account the organic nature of the finished model. Opacity Maps Another texture type you may run into are Opacity Maps, or often called Alpha Maps. Theses are additional textures that are added to a texture to indicate what areas are opaque and what are transparent. An Opacity Map is a black and white image with white representing the solid areas and black the see-through areas. Shades of gray are used to create levels of transparency, like might be seen through a shower curtain or the surface of water.
In this example you can see the leaves texture on the left and the Opacity Map on the right. The final result seen below shows what happens when both are applied to a variety of surfaces to create the illusion of tree leaves.
Particle Textures Only recently introduced to IMVU is the use of Particles in our 3D products and environments. Particles are points within your 3D model that can be animated to simulate natural or magical properties. Each particle can have a texture applied to it, so you can simulate water droplets, fire, falling snow, smoke, or anything else you can imagine. Like Opacity Maps, particle textures can be transparent, but they use a different file format that allows for transparencies to be built right into the texture itself. These textures are saved as a .PNG file and should be no larger than 32x32 pixels square. In this video example you can see particle textures at work. In the fountain you will see splashing on the surface of the water, and on the lava throne, sparks jump up out of the lava in the surrounding pools. There is so much more that can be done with particles,
but it can take a lot of work to get them to look just right. It is also important to note that a ton of particles in your scene will slow down the frame rate of the 3D environment. When in doubt, be sparing with the quantity of particles you apply to your 3D products. When you create textures for your IMVU products it is important to remember this rule... Make sure your textures have dimensions that are Powers of Two! This means the width and the height of your textures have to be a combination of 32, 64, 128, 256, 512. So, you can have a texture that is 128 x 128 pixels, or 128 x 256, or 256 x 512, and so on. The reason for this is that IMVU optimizes textures before they ever make it to the 3D window of your customers. This means that if you submit a non-standard texture size, the submissions process will squash and stretch your texture to make it conform to these dimensions, and undoubted reduce the quality of your design.
Although it is conceivably possible to submit non-standard texture sizes, the process used to make them conform will potentially ruin the very effect you are trying to achieve. When in doubt, presize all your textures to these dimensions and feel confident that your work will look as good in the IMVU Client as it did in the 3D application you created it in.
The Material files in the IMVU process are not textures themselves. They are the link between the texture and the Mesh that live in your final CFL product. Basically, the Material file tells the Mesh that a specific texture (or textures) is meant to be applied to the material ID number embedded in the mesh. This material ID number should be included in the sub-material name in MAX. The Material files can be exported at any time. In order to Export the Material files, make sure you have nothing selected, choose export from the file menu, name the file (remembering to manually type in the .xrf at the end of the name) and click Save. The Cal3D window that appears shows you a list of the materials and sub-materials in the scene - including the sub-materials you had named back when you were building. Choose your sub-material name from this list and then click next. The following Cal3D window is your opportunity to verify that this Material does indeed contain the texture(s) you wish to export. Once verified, click Finish.
Cal3D Export window allows you to confirm which materials your Export corresponds to, You need to repeat this process for every multi-sub in your MAX material. This means that for every material you want to actually have show up in IMVU, you need a corresponding .xrf, or Material, file.
The Materials TAB is where you will reassemble the textures you have created in your 3D application and ready them for the IMVU Catalog. Luckily, all of the Material slots are automatically filled when you import your Meshes under the Geometry TAB. All you will need to do is browse and locate your textures and Opacity Maps, and edit their parameters. The Materials TAB allows you to toggled Vertex Colors, designate blending, self-illumination, and even animate the textures applied to your Mesh. You will notice that the window on the left includes a list of numbers. The last two digits on these numbers should correspond to the numbering system you used to create your original textures. P00-M00 indicates the texture "0" applied to the first Mesh loaded under the Geometry TAB. P01-M02 indicates texture "2" applied the the second Mesh loaded in your Geometry TAB... and so on.
Material Asset - Import This is the area where you will Browse for your .xrf, textures, and Opacity Maps. An Opacity Map is a grayscale image that determines what areas of your texture are opaque, transparent, or translucent. To load a Opacity Map you will need to click on the name below the Diffuse Color map and load it separately.
Material Parameters This area allows you to toggle on or off various settings for each individual texture. These include the ability to determine whether this texture is influenced by Vertex Colors applied to the model, is Self-Illuminated (like a the moon or a light bulb), overrides the Fog setting, or adjust the effects of the Opacity Map. The first check box, Two Sided, tells the material to render no matter what side of a polygon you are looking at. Handy for draping hair and the like. The second checkbox, Self Illuminated, makes the material unaffected by the Scene's lighting. This is handy for things like fire or anything that you want to stay bright. The third checkbox, Fog Override, makes the material unaffected by fog. This is VERY handy for sky textures. The fourth checkbox is Vertex Colors*. If you have exported a mesh that contains vertex colors, you can view them on a per-material basis by checking this box in each material.
The fifth check box is the Mode drop down menu. If you checked the Use Blending checkbox, the Mode drop down tells the full opacity map whether it can be an Additive blend or just stay a composite blend. Additive blending literally takes the texture and "adds" light values to it based on values in your opacity map. The more additive textures you have in front of one another, the brighter and brighter they get. This is handy for things like shafts of light.
Texture Animation Parameters Just below the Material Parameters are the Texture Animation controls. A texture can Scroll over a surface at various speeds and directions (like the lava texture above), or Cycle through frames of animation that exist on a single texture (as seen in the flame texture below). Cycling allows you to sample frames within a given texture.
Cell width and Cell height are used for Cycling animations. The number here is in pixels and tells the animator what size you want your animation cell size to be. For example, if I had a texture that was 128x64 and I happened to have four separate frames drawn across it from left to right, my Cell width would be (128/4=) 32 and my Cell height would be 64. Offset X and Y allow you to offset where your first frame of a Cycling animation begins. This is very handy if you have one large texture that contains several Cycling animations on it. Set your X and Y to 0, 0 to use the full texture, or different values to use a subset of the texture. The cell rectangle does not have to divide the dimensions of the texture evenly, and it doesn't have to have the same proportions as the texture. Start Cell is used for Cycling animations and tells the animator which frame to start on. This is handy for things like flickering candles where you may want to use the same texture on a bunch of candles but don't want them to animate the exact same way (meaning looking EXACTLY the same in IMVU). With this feature, you could use the same texture on multiple candles but have them all appear different in IMVU. Of course, you COULD just make new textures per each flickering candle but that would needlessly increase the file size of your product. Direction X and Y are used for Scrolling animations. These deltas specify the amount (direction and speed) to scroll, positive numbers going down and right. The delta is in Fixels (fractional pixels) # of Cells (I know, it says 0 of cells - we're working on it) allows you to define how many Cells the animator should include in a given animation. By calling setting Offset X/Y or Start Cell, and then setting the number of cells with this function, you can use a single texture sheet for multiple sets of cells. Frames per Cell allows you to slow down the animation. You can specify that it takes
multiples of 1/30 sec to advance a frame of animation. For an example of both texture Scrolling and Cycling, check out the Super Furniture Product Tutorial *NOTE: If your textures are appearing completely black, this means that the Vertex Color check box is selected, but there is actually no Vertex Paint on that part of the Mesh. To remove the black, un-check the Vertex Color box.
Like any medium, there are limitations that an artist needs to work within to turn their ideas into reality. Creating objects, clothing, and environments in low poly 3D is no different. Depending on the capabilities of the engine you are building for, you may find yourself having to think of some very creative workarounds to reach the final effect you are after.
Currently IMVU does not support "spot lighting", this is the ability to shine a light on an object, which highlights some areas (nearest the light source) and allows other areas to fall back into shadow. To achieve this effect without the light source we need to come up with a way to "paint" these highlights and shadows on the surface of our models. In the world of theater, where the light isn't, is frequently more important than where the light is. Shadows act as the framework around those areas the designer wishes his/her audience to focus. Shadows also help define the surface of a material, and can even enhance the sense of the solidity of an object. Best of all, shadows can trick the eye into believing there is more detail in an object or environments then there actually is. This is especially handy when all you have to work with are a few polys and a handful of textures. The world of the computer is a mathematically perfect one. A place without the organic asymmetry that we are accustom to in the natural world. This is why 3D environments can sometimes feel sterile and cold. With everything at right angles, and every texture applied like wallpaper, it can be an uphill battle to create places and objects that feel "real" or natural.
Before & After examples of Scene without, and with Vertex Paint applied In this example, you can see what this interior model looks like with just the textures applied to it, but no further detail. The image on the right is the same room with Vertex Paint applied to it. Although there is no true light source, the shading applied to the surface using the vertex paint suggests that light is coming through the window, casting shadows on the far wall and illuminating the sidewalls.
Vertex Painting in 3D Studio Max Many 3D software applications include some method for shading, tinting, or painting the polygons beyond just the textures applied to their surfaces. 3D Studio Max includes the ability to Vertex Paint geometry, but it is a little misleading to call this "painting" since your control of how the final painted object will appear depends a lot on the way the 3D engine interprets the vertex paint information applied to it. This being so, I prefer to think of this as more "vertex tinting" since your actual color results may vary from model to model, 3D engine to 3D engine. I also consider this a "wide brush" approach, rather then a fine precise tool, since how the tinting appears on your model depends on how the geometry is constructed beneath it.
When you are painting (or tinting) the surface of your model, you are not actually applying color to the surface of your polygons; you are applying information to the vertex points and suggesting how the color will project from that point onto the surrounding polys. The effect can be very convincing if done correctly, but if applied incorrectly, can expose the unflattering limits of your geometry.
In the example to the left, a bright red color has been applied to the uppermost vertex and it radiates onto the poly surface nearest to it
. In some cases, adding a little more geometry in strategic places will give you a much better effect then leaving it out, and can actually allow you to use less texture detail since the vertex tinting will be doing a lot more of the aesthetic work for you.
Above is a screenshot of the Vertex Paint window within Max. These are the tools you will be using most while painting your models.
A good rule of thumb is that a "grid" construction in your mesh is better for vertex lighting then stretching your polys to the extreme. The grid allows you more control over how the vertex tinting will appear on the surface, while the stretched polys will give you less desirable results.
< In this example the application of the vertex paint is more effective on the grid mesh on the left, than on the more "fractured" mesh to the right.
Vertex Paint Tips & Tricks Painting in Shadows If your model lacks depth, the easiest method is to just paint them in! Create a color that is darker then your model and suggest lighting applying it to those areas you wish to suggest are furthest from that light source. Example: Shadows painted in the corners of the leather seat and under the arm rests. >
Erasing in Highlights One of my favorite tricks is to use the Paint Bucket tool to completely cover a model with a darker "shadow" color, then use the Eraser tool to remove the paint from just those areas I would like to suggest highlights. This is very effective if you wish suggest drama and mood.
< Example: Paintbucket used to fill entire model with dark color, eraser then used to pull out highlights on bed cover and on post details.
Blurring to Blend Color Because you are limited to the paint results only looking as good as the geometry it is applied to, you are going to inevitably have the edges of some polys appear on the surface of your model. To minimize this you can use the Blur tool to soften the edges. I also like to apply the Blur to the entire model, then come back with the eraser to pull out the highlight once again before I am finished. Example: My heavy handed application of vertex paint is softened by the Blur Tool. >
Painting Generic Textures to Create Variety Inexpensively Another handy trick is to create a base texture without color, then paint that color in later with vertex paint. For these party lanterns, I created a simple black and white texture then applied it to each mesh and colored them separately within the model.
< Example: These paper lanterns share the same white base texture and have been colored using Vertex Paint.
Colored Shadows Many 3D computer games use vertex painting heavily to suggest mood and age in their environments. As suggested earlier, they will choose a shadow color and paint that lighting and aging in manually rather then depend on their 3D renderer to do all the work. One of the potential pitfalls comes when these game lean too heavily on gray as their primary shadow color. In the real world light sources come in different colors, and any first year art student knows that this means that the shadows cast by that light will appear as the complimentary color of that source. Although subtle, yellow sunlight casts a purple shadow, orange a blue shadow, red will cast green, etc. Where this is most noticeable is in flesh colors. Although next generation games have stunning graphic capabilities, if the environmental ambient colors, or vertex painted colors, applied to their characters is gray their virtual human actors can look dead, or bruised. Without closer attention paid to how shadow colors affect the surface of objects you can end up with models that are dramatic, but unrealistic.
In this example, the two left-hand faces have been lit using an unflattering gray ambient color, while the right-hand character has been illuminated with a warmer color, creating more appealing shadows.
Too Much of a Good Thing I can fall into the trap of leaning too heavily on vertex paint on my own creations, so be careful. Adding drama is nice but it isn't appropriate for all situations. When in doubt, err to going lighter with your vertex paint then heavier. Example: Proof that powerful tools in the wrong hands can be deadly... yuck! >
Most importantly, have fun and play around with what vertex paint can do for your scenes and objects. Think of it as just another tool in your arsenal of tricks to make your creations look great. For more helpful information on the use of Vertex Paint in your models, I highly recommend the book, "Creating the Art of the Game" by Matthew Omernick.
The Geometry TAB allows you to import your Mesh .xmf files to build your IMVU product. To add multiple Meshes click the Add button in the Specified Body Parts window and import your .xmf file as each BodyPart window opens. As added information you can view your triangle and vertices count in the Submesh Information window below. Be sure to hit the Apply Changes button when you are done to insure all of your Meshes, and their accompanying Material files are loaded.
Mesh Scale - Specific to Avatar Heads Remember when you built your avatar head big in MAX? Well, this is where you shrink it down again. In the Geometry TAB, you will notice a checkbox named 'Mesh Scale ON'. When this checkbox is checked, the code reduces all vertices weighted to the Node Name bone by the amounts typed into the X, Y and Z input fields. Play around in the XYZ fields until you get the size you want. Hint - the head doesn't have to be symmetrical. This helps in making the head longer than the potentially squat version built in MAX. Also, you will notice another checkbox entitled 'Apply to Attachments'. This means that whenever you have Mesh Scale ON, the code will automatically scale all attachments attached to the same bone listed in the Node Name input field. Hint - always leave this checked.
The Mesh file needs to be exported AFTER the Skeleton file as the Skeleton is referenced in the Mesh export process. It is possible to have multiple Mesh files in one Furniture product. If your Scene uses multiple skeletal animations, you will no doubt be exporting multiple .xmf files. Just how many you can use has not been tested so play away.
In order to export your Mesh file, select the specific Mesh you wish to export, and choose Export in the file menu. Scroll to the .XMF file format, name your file (remembering to manually type in the .xmf at the end of the name), and click save. In the Cal3D window that appears (see above), you will be prompted to supply a skeleton/.xsf file with which this mesh is weighted. If the .xsf file does not appear automatically, browse to the skeleton file you just created and then click next/finish until there are no Cal3D windows visible. You just exported a Mesh file! NOTE: If your Furniture has a morph animation, you must have the morph targets named properly and parented to the mesh file that is going to morph. Also, the morpher modifier needs to be underneath the weighting modifier. See the tutorials on exporting Morph Animations for proper
morph target naming and export.
In the Previewer, you have no doubt noticed a section in the Geometry tab labeled 'Mesh Scale'. Although it is possible to use this feature for other body parts, it was built specifically for use with avatar head products. A little history: IMVU began with only one head size per gender that fit an anime aesthetic style. As you know if you've read the Avatar Heads Tutorial, most heads built for IMVU avatars are meant to work seamlessly with thousands of existing hair and head-accessory products. Considering that the original head really does not have human proportions, the ability to make a human-looking head (or even a different, anime head) can be really, really hard. Enter: Mesh Scale. With the Mesh Scale feature, you can tell IMVU to scale any vertices weighted to a particular bone in the avatar skeleton. What's more, you can tell the mesh scale to apply to accessories whose skeletons happen to be attached to the avatar bone. This all means that you can scale your head without worrying about whether accessories and hair products will be broken. It all just works! For the purposes of this tutorial, we assume that you have read the Previewer Introduction.
Open a Head Product in The Previewer Open up the Previewer and choose to derive from a head product. For the purposes of this tutorial, choose to derive from product 59412. However, please know that the steps in this tutorial can be applied to any head product. Click the Geometry Tab
Make sure you have the Previewer set to Advanced Mode so that the Geometry tab is visible. To learn more about how to do this, please go to the Previewer Introduction. Click on the Goemetry tab and you will bare witness to the glory that is the Mesh Scale section.
Mesh Scale - Turn It On If you have derived from 59412, then you will see that the Mesh Scale paramters have already been turned on and tweaked. However, let's pretend that nothing was on and nothing was set. The first thing you need to do in the Mesh Scale process is actually turn the feature on. You do this by checking the box next to Mesh Scale ON and hitting Apply Changes.
Mesh Scale - Apply to Attachments You *can* have your Mesh Scale not effect attachments that go on the head (like earrings, eyeglasses, antennae, etc.) If that is what you want, then you can move on to the next section. However, if you *do* want attachments to scale with the head, then you should click the check box next to Apply to Attachments.
Mesh Scale - Which Bone? Since the Mesh Scale feature was built to work specifically with avatar heads, you are meant to type 'Head' into the Node Name text field.
Mesh Scale - Scale XYZ This is the fun part. You can type different integers into the Scale X, Y and Z text fields. Then, hit Apply Changes and see how your inputs effect the head. X scales the head's width. Y scales the head's depth. Z scales the head's height.
Mesh Scale - Play! You don't have to use the same numbers in all three input fields. For example, you can have both X and Y be .85 and then push Z up to 2.0. Then, you'll have a really tall head. WOAH! It is in this way that you can adjust the dimensions of a head to fit your aesthetic tastes.
Apply Changes Make sure you hit the Apply Changes button when editing the Mesh Scale fields. Otherwise, you won't be able to see what effect your changes have on the mesh. Save & Submit Now you know how to scale an avatar head using Mesh Scale in the Previewer. Pretty cool, huh? Just Save your file, create a screenshot and submit to show your creation to the world. To learn more about submitting, please go to the Previewer Introduction. To learn more about creating a great catalog image, please go to the Catalog Image Tutorial.
The Special TAB is a collection of tools that are not specific to any one function in the IMVU Client. In this area you can import your Skeleton .xsf file, change the Ambient Light and Fog Density, alter the size of the Client window, and in the case of Avatar Clothing & Accessories, assign an Attachment Node.
Skeleton Here is where you browse and import Skeleton .XSF file for your Furniture, Room, Clothing, or Accessory model.
Room Parameters For Rooms, you can alter the Ambient Light color of your environment, and the size the IMVU Client window appears when your Room is loaded. Be sure to be vigulant while altering the Ambient Light settings. Although there are some nice effects that can be created with this feature, it can also create harsh shadows on the skin of the Avatar. It is often a fine balance between moody and ugly, so it pays to double check what the light is doing to the avatar as well as the environment. Fog Settings Fog can also be added to a Room to help add mood and mystery. Be sure to play around with these settings, and also trying checking the Fog Override in the window of those textures you wish to not be effected by the Fog settings. For best results, check both the Fog ON and Fog Really, Really ON boxes .
Compatible Body Pattern Product ID This indicates which Avatar the product will be applied to. Male Avatar: 191 Female Avatar: 80 Attachment Node For Clothing and Accessories, the Attachment Node field is for typing in the Avatar bone the product will be attached to.
Idle Actions are one of the key tools to making a 3D product come to life in IMVU. An Idle Action is the default action for a 3D product. It is the type of Action that plays without any input from a person. This functionality allows waves to always move in a Room product, a magic pillow seat to float up and down forever, a Pet cupid to always flap its wings and an Avatar to shift position on its own. That's right, Avatars, Pets, Furniture and Rooms can all use Idle animations. This tutorial covers how to use the IMVU Previewer to assemble pre-exported assets into Idle Actions. However, it does not cover how to build those assets. If you want to learn how to build animations, please go to the Skeletal Animations Tutorial, the Morph Animations Tutorial, the Rooms Introduction, the Accessories Introduction and the Furniture Introduction.
This tutorial assumes you have already read the Previewer Introduction and have already downloaded the Previewer.
What Products Can Contain Idles? Any 3D product can contain Idle Actions. However, they are most common in Avatars, Pets, Rooms and Furniture. The most common Idle animations in Pets, Rooms and Furniture are all named stance.Idle. If an Action has this name, then the IMVU code knows to play it without any input from a user. The most common Idle animations in the IMVU avatar are the Standing and Sitting animations. These animations play when the avatar is in a seat node that calls them by name *or*, as is the case with the Standing Idle, when the avatar can not find an animation to match what the seat node wants to play. For example, if a seat node is named seat01.FrogDance and neither the room, furniture, or avatar actually contain an Action named stance.FrogDance, then the avatar will play its default Idle animation: Standing.
The IMVU Action System The following description of how the IMVU Action system works should be printed out and placed in an easy to read place or...tattooed on your forehead***: - An Action can include a single sound. - An Action can also be a collection of one or more Ensembles and a few rules that the Ensembles follow. - The trigger name supplied in an Action dictates whether the action is an Idle or a triggered action. - An Ensemble contains the actual animation assets and the rules that those assets follow - There can be multiple Actions of the same name. For example, there can be multiple Actions named stance.Idle
- There can be multiple Ensembles in each Action. With the above system in place, you can build multiple Idle animations, export them all and then place them into the Previewer. For example, I typically have one Action named stance.Idle that covers only the blinking animation. That way, the blink will play regardless of what else the Pet is doing. I also add another Action named stance.Idle that contains at least five Ensembles with animations to a Pet so that it has a feeling of life. Each Idle animation should be saved into its own MAX file. *** That is, it should be tattooed on your forehead *IF* you have been both diagnosed as clinically insane *and* visited the planet XWH#@{*Y during Hoishel's reign. Patsy's reign doesn't count.
Previewer: The Action Tab
All Actions are found in the Action tab in the Previewer. To learn more about the various tabs in the Previewer, please go to the Previewer Tutorial and to learn more about the details of the Action tab, please go to the Previewer - Actions Tab Tutorial. Random Acts The really cool thing about an Idle animation is that it utilizes some of the best features of the IMVU Previewer (which you'll get to later in this tutorial.) This feature? Randomness. You will notice that your avatar doesn't do the same thing in the same order all the time. This is because its Idle Action contains multiple animations and plays them at random. You can create this random behavior yourself by understanding some of the basic rules of the IMVU Action system: - You can have multiple Ensembles in an Action - You can tell the Action to choose those Ensembles randomly
Idle Names There three names to keep in mind when building an Idle Action: stance.Idle - this name is often applied to Pets, Rooms and Furniture products. However, Pets also sometimes use the following two names instead of stance.Idle. stance.Idle tells the IMVU code to play this Action with no input from a user. stance.Standing - this name is included in both IMVU avatars as seat##.Standing is the most commonly used seat node name in Rooms and Furniture. stance.Standing is also the default Action name that the IMVU code looks for if no matching Actions are available within the IMVU avatar. stance.Sitting - this name is included in both IMVU avatrs as seat##.Sitting is the *second* most commonly used seat node name in Rooms and Furniture. Same Name As mentioned above, you can have multiple Actions in one product. Sure. Got it. However, you can also have multiple Actions in one product with the same name! This means, for example, you can have multiple Actions named stance.Idle which, in turn, means that you can drive multiple, independant animations at the same time. IMVU uses this feature ALL THE TIME in many of its products as the addition of even a little random behavior goes a long way.
Blink The avatar has a special Idle that is controlled by the IMVU code rather by an Action you have full control of. This special code triggers an Action randomly if it is called 'blink'. The blink animations IMVU has made are very, very short animations. No longer than a few frames. This makes the blinks feel real when played in IMVU (and at random framerates on random computers.) This means that the blink code has been tweaked to perform rapidly which, in turn, means that your blink animations ought to also be very, very short or they will look rather silly in IMVU Feelin Loopy As a reminder, any animation asset included in an Action can have loop effects applied to it regardless whether it is a skeletal animation - .xaf file or a morph animation .xpf file.
The loop settings in the Ensemble tell an animation which portion it ought to play over and over and for how many times. While you can set a number of loops right there in the loop settings, you can also tell the Ensemble to randomly play more loops using the 'Extra # of loops (up to)' field. Just type in any number and the Ensemble will randomly play up to that many loops whenever it plays. The goal with utilizing this feature is to get your Idle Action to feel as random/alive as possible. Blending One of the most important features of Idle Actions (and Actions in general) is Blending. This allows the currently playing animation to blend into the next animation. Without using blending, those two animations would just pop as Action A stopped and Action B
began. I usually use a 'Blend in:' and 'out:' weight of 5 frames. This allows the two animations to blend fairly quickly. Blending doesn't work if the Ensembles that are meant to blend together do not have their 'Composition' set up correctly. Composition Idle Actions should always have their 'Composition' set to 'Average'. This allows triggered animations to replace the bone positions and rotation (if those triggered animations are set to 'Replace', of course.) If your Idle Action is set to 'Replace', then any other Actions you have set to 'Replace' will not actually replace anything.