Return to site

3d Studio Max Bip Files Motion

broken image


More easy-to-use motion capture formats! Bruce Hahn has released both 3D Studio Max and MotionBuilder bvh's, hosted at cgspeed. The site includes links to our data in other formats, too. See the 'Resources' tab above. The Quality of Life Grand Challenge: Kitchen Capture dataset is now up. May 17, 2011 Now it's time to load some Motion Capture (or Mocap) Data. Select Bip01 (easiest by pressing the H key and selecting it from the list of scene objects) and then under the motion panel, press the Load icon and find a.bip file from your harddrive. If you don't have any.bip files, here's one from the Max Tutorials. Apr 14, 2019 Autodesk gives a direct download of a ZIP file loaded with.BIP files for 3ds Max. If your unfamilar with them, it allows you to simply select a biped rig in Max, open a.bip file and it applies an animation directly onto the biped rig. It's VERY handy for getting animations going quickly in Max. Character animations using 3d Studio Max. Using.bip files I pasted a lot of this stuff together with the Motion Mixer.

Model and Material

This session describes supported model and material format you can create in 3ds Max then export for iClone3.

Mesh Model

The exporter can process all kind of mesh models including primitives, polygon meshes, quad meshes and triangle meshes. However, they will be all converted into triangle faces in iClone model format. It's always a good practice to convert the model into Editable Mesh or Editable Poly before exporting.

Material

iClone3 support the following material parameters and map types:
Material Type Basic Parameters Maps
Standard Material
Multi/Sub-Object
Blend Material (4 maximum)
Ambient Color
Diffuse Color
Specular Color
Self Illumination
Opacity
Specular Level
Glossiness
2-sided
Diffuse Color
NEW
Specular Level
Glossiness (for Glow effect)
Opacity
Bump/Normal
Reflection
Multiple Map Channel (4 maximum)

In the image below, the corresponding settings in 3ds Max Material Editor are highlighted.

Max

Animation

In addition to transform and UV animations supported by iClone2, the new exporter can export material animations edited in 3ds Max.
The following table shows the supported animation types.

Type

Parameter

Transform Animation

Rotation

Translate

Scale

NEW Material Animation
(Props & Accessory only)

Ambient color

Diffuse color

Specular color

Shininess

Best apple programs. Shininess strength

Self Illumination

Opacity

Opacity falloff

Template undangan pernikahan tema surat pos 2016. Map Amount

UVW Map Animation
(Props & Accessory only)

UVW Data

Press the 'Windows' and 'R' keys simultaneously on your keyboard. This opens a 'Run' box on the. As mentioned, it is possible to delete DLL files. This can be done manually. However, the user runs the risk of disabling the system. For this reason, today we will use a tool that allows you to select the files that are no longer needed. How to delete dll files. How to Delete a Dll File. Click the 'Start' button in Window,s and select 'Search' from the Start Menu. Video of the Day. Inside PE there is a magnifying glass icon that search for DLLs. Research about process (Google) associated and if it's ok kill the process inside PE. Then you can delete the desired DLL. Press the 'Windows' and 'R' keys simultaneously on your keyboard. This opens a 'Run' box on the bottom part of your screen. Type 'CMD' and click the 'OK' button. This launches the Windows Command Prompt utility. Type 'Regsvr32 /u /s C:Path to filefile.dll' and press the 'Enter' key.

The material animation sample shown below can be found in the Sample File folder.

Note:
The length of the material animation is the same as animation keys set in 3ds Max. To make it longer, copy and paste material keys along the timeline as long as you need. 'Character Animation', 'Non-Human Character', 'Accessory' and 'Props' are content types which may contain animation data.
When one of them is selected, the animation export option panel is expanded. There are two option groups

Export Option


All:
Export both the Model & Animation data, disabled in this Beta version.
Geometry Only: Export the model data only.
Animation Only: Export only the animation files by the clip list definition.

Animation Clip:

This is where you define the animation clips to be exported.
Name: The name typed here will be the file name of the exported prop/accessory animation file (*.iAnimn) or character motion file (*.iMotion).
Range: The 'From' and 'To' field defines the frame range of the specific clip.
Clip List: List all the clips will be exported.
Add: When finished defining the clip name, range and type, click this button to add the clip into Clip List.
Update: If you want to edit the definition of a clip, double click the clip in Clip List, the settings will bring back to the options above. Reedit the settings and click 'Update' button, the new settings will be updated in Clip List.
Remove: Remove the selected clip from Clip List.
Save: Save the Clip List definition as an ASCII file.
Load: Load an external Clip List definition file.

Import Animation

To Import Character & Non-Human Character motions, go to Motion Modify panel, press Import button to import the motion file.
Or go to timeline, expand Character Perform track, right-click on the track, select Import from the pop-up menu to locate and load the motion file.
To Import Prop or Accessory animations, go to timeline, expand Perform track, right-click on the track, select Import from the pop-up menu to locate and load the animation file.

NEW Animation Key Optimization

The exporter will sample the animation frame by frame without key optimization. This keeps the animation intact to the original but the price is generating oversized animation data, especially when the animation curves are mostly linear. Animation key optimization can remove the unnecessary keys and also keep the result as close to the original as possible. To optimize the exported animation data, check the Optimize option to activate Animation Key Optimization while exporting.
To modify the optimization parameters, click the Optimize button to open the Optimization Options dialog box.
Sample Rate: Set the sample interval for sampling animation keys. The more the interval frames, the less key will be sampled for difference analysis. Threshold: Set threshold value for R (Rotation), T (Translation), S (Scale) and P (other Parameters, like material animation keys) difference analysis. The larger the threshold value, the less key will be reserved. Setting the threshold 0 will remove only the keys along linear animation curves and preserve the animation result.

NEWNon-Human Character

None-Human Characters are characters that skinned to any skeletons or bones other than iClone standard RL Bones. You may Rig the character with any bone structure constructed with 3DS Max bone system, hierarchical mesh object, even helpers like dummies. Notice: Never use mirror to make the opposite bones of a Non-Human Character. It will scramble iClone3's IK & Mirror mechanism. Once the character model is ready and exported as an iClone3 Character file (*.iAvatar), you still need an ini file to provide more character information for iClon3 to make it a None-Human Character. Here is the content of the ini file:
[Bone]
RootName=RootBone // The name of the character root bone
LengthBone = 0 // Define the bone axis, 0 = X, 1 = Y, 2 = Z
[IKTypeMap] // Define Types of IK control
RootBone=1,0 // For the root bone and fixed bones, give the value 1,0
Pelvis=1,0
Spine01=1,7 // For the other animatable bones, give the value 1,7
..
[IKConstraint] // Set rotation constrain for the bones. This setting takes effect when the 'Constrain' option in iClone3 Edit Motion Layer panel is on.
Bip01=(0,0)(0,0)(0,0) // The format is: Bone Name = (X min. angle, X max. angle)(Y min. angle, Y max. angle)(Z min. angle, Z max. angle)
Pelvis=(-5,5)(0,0)(-5,5) // The initial angles of the constrains are the bone angles of the skin pose of the character
Spine01=(-10,10)(-60,60)(-40,40)
..
[MirrorBone] // Define the opposite bones so the 'Mirror' option can take effect while editing motion layer.
L Clavicle=R Clavicle
L UpperArm=R UpperArm
L Forearm=R Forearm
L Hand=R Hand

Only the [Bone] part is must. The IK & Mirror function will be just disabled if [IKTypeMap], [IKConstraint], or [MirrorBone] definitions are not given. Name the ini file the same name as your character (e.g. if the character file is Dragon.iAvatar, the ini file shall be Dragon.ini ), and put it in the same folder of the character file. When the None-Human Character is loaded in iClone3, the ini will be parsed and embedded with the character. You can find a sample ini file (CS_Character.ini) for None-Human Character in the Sample File folder.

Convert Character Studio BIP skeleton into iClone3 None-Human Character

Since iClone3 doesn't support Character Studio Skeleton directly, to make a None-Human Character from a BIP rigged character, you have to convert the BIP skeleton into a max bones first. Before you start, please go to Autodesk FBX page to get the latest version of FBX exporter and install it. Note: Please use the version 2006.11.2 which you can find in FBX 'Plug-in and Converter Archives' pages. Here are the conversion steps: 1. Load the BIP rigged character in 3ds Max.
This monster model is downloaded from 3DRT free download Page. 2. Choose 'Export' from File menu. 3. Select Autodesk FBX file type, press 'Save' button.
4. Use the following setting. Export the FBX file containing the model and all animations.
5. Reset 3ds Max, Choose 'Import' from File menu, and select Autodesk FBX file type. 6. Use the following setting for importing the FBX file.
7. Now the BIP bones are converted into Dummy bones.
8. To export it as a Non-Human character, choose 'Export' from File menu, select Non-Human character file type. 9. Select Geometry Only in Export Option and press OK button to export the rigged model. 10. Execute Export again, this time select Animation Only edit Clip List as describe above, then press OK button to export the motion clip files. These motion flies can be imported and applied to this specific character in iClone3 with Motion Modify panel. 11. Prepare the ini file for this Non-Human character. The sample ini file (CS_Character.ini) is ready for any Character Studio BIP character with skeleton root BIP01. Just rename it the same name as the Non-Human character file and put them in the same folder. 12. Run iClone3, go to Avatar Modify, import the Non-Human character.
13. Go to Motion Modify, press Import button to import the motion clip files, or press Edit Motion Layer button to start motion editing.

NEW Bounding Mesh

Bounding meshes are mesh surfaces which define the boundary of a model for alignment and collision detection. They are usually a simpler version to the target model, e.g. a box bounding mesh for a car model. In iClone3, bounding meshes of Props are for collision detection, and those of Terrains are for both collision detection and terrain following. To assign a bounding to a prop or a terrain model, follow the name convention below
Object Name_Boundingmesh
For example, the bounding mesh model of an object name 'Terrain' should be name 'Terrain_Boundingmesh'
Terrain bounding mesh is always invisible in iClone3.
To examine Prop bounding mesh, switch the Display into Bounding mesh mode.
In this example, the bounding mesh is a simple sphere enclosing the Teapot.

Note:
If you don't provide bounding meshes while creating Terrains, iClone3 will use the mesh of Terrain itself for alignment and collision detection. In the case of Prop, iClone3 will generate a bounding box for the Prop without bounding meshes assigned.

NEW Sky

Create an iClone3 Sky is simple. Here is one of the procedures: 1. Run 3ds Max. Create a GeoSphere at the origin (0,0,0), set Radius 5000, Segments 4.

2. Add Normal Modifier to flip normals.
3. Apply a panorama sky map to diffuse map slot, set Self-illumination 100.
4. Choose 'Export' from File menu, select Sky file type and export it to the Custom Sky folder.
C:Documents and SettingsAll UsersDocumentsReallusionCustomiClone 3 CustomSky 5. Run iClone3, go to Sky Content Manager Custom tab, apply and check the Sky.
You can find a sample sky model in the Sample File folder.

NEW Head Morph

To Create a custom Head Morph, do the following: 1. Load the head base max file Head_Base.max from the Sample File folder. The head base is a Editable Poly model.
2. Switch to Sub-Object editing mode. You may use any polygon modeling tool to modify the head shape. But keep the following things in mind:
(1) Don't modify the pivot of the head.
(1) Don't add or delete any vertex, just edit the shape.
(2) Keep the shape and position neck section loop as close as the base model.
3. Choose 'Export' from File menu, select Head Morph file type and export the model. 4. Run iClone3, go to Face Modify, select Head category then import the Custom morph model you just exported. Drag the Weight slider to check how it works.

After seeing David Lenaerts excellent Broomstick example, I've been eager to find a workflow to bring motion capture data into Flash. It took a while to work out, not being familiar with the MD5 format at all, but it turned out those nice guys at Away3D had already done all the hard work. I was thinking I'd have to map the bones of MAX's Biped to some other custom 'MD5 scheme', but to my delight I discovered the parser is extremely generic and works with any bone structure I throw at it. I'd like to share my findings, not least in case I forget them before I need to do it again :O)
First a quick demo to show where we're headed…

(Click image to open, Flash 11 or incubator is required.)

WARNING: The page loads around 14Mb of Motion Capture data, so be patient. When it's finished the 'player' should start moving on his own. Click to put the flash window in focus, then use arrow keys to run, and the top row of keys (Q to I) to trigger different mocap files.
You'll notice the motion is quite faithfully replicated, though there are some problems with the figure/bone structure around the shoulders. That could be fixed given the time, but I was satisfied with this as a proof of concept.
  • Rigged model, downloaded free from TurboSquid
  • Copy of 3D Studio Max (My copy is Max 9, others should work just as well)
  • MD5 Export Script http://www.doom3world.org/phpbb2/viewtopic.php?t=1914
If you use that particular model you will see that it comes already rigged using Biped.
Biped is one of the Bone systems that ships with Max. Some love it, some hate it. The good thing is there's alot of free motion capture data recorded in the '.bip' format, to get you started.

>Normally you use Max's Physique modifier together with Biped. This is a quite advanced system using muscles and tendons. The MD5 format doesn't support that system directly, so we need to use a Skin modifier instead.

(Click for larger image)

After you open the soccer player, select the model, right click on the modifier and select 'Collapse All'.
Now you should have an Editable Mesh. This is the only format the MD5 exporter can work with so it's worth remembering.
Now we have an Editable Mesh and a Biped lined up with each other, but not attached in any way.
With the player still selected, choose the 'Skin' modifier.

Where it says Bones, press the 'Add' button and assign all the bones of the Biped to the Skin modifier (this will be all the objects in the scene). Then you modifier stack should look like this:


Now it's time to load some Motion Capture (or Mocap) Data. Select Bip01 (easiest by pressing the H key and selecting it from the list of scene objects) and then under the motion panel, press the Load icon and find a .bip file from your harddrive. If you don't have any .bip files, here's one from the Max Tutorials.

You will find a folder full of .bip files on your Max DVD under Tutorials, as well as loads of free downloads on the net.

So now we should have an animation when you press play. The Soccer player should move in perfect synch with your Biped. You might notice a few odd bulges, especially round the legs and feet.

This is caused by the legs 'pulling' on each other, and it's now we need to understand a little bit about how Skin and Bones (in this case Biped) work.
Each bone acts upon a group of vertices in the Skin. A vertex may have more than one bone acting upon it. So for each bone there is an array of indices for the vertices in the model that it effects, and not only that, but each of those vertices has a 'weight', i.e. the amount the bone pulls on that vertex.

3d Studio Max Bip Files Motion Download

To make it easier in 3D Studio, and other 3D programs, the bones are assigned an Envelope. This simply means a sausage shape around the bone's core that encapsulates the vertices. If in 3D studio, we select the soccer player again and 'Edit Envelopes', when we select a bone from the list, the envelope of that bone is shown in the viewport.


Note, your own viewport may not look exactly the same, depending on the settings under 'Display'.

In the illustration you can see the envelope of the Left Foot. There are highlighted in colour, the vertices it effects. Red means they're effected a lot, blue means they're effected a little. Notice that some vertices on the other foot are highlighted in blue. This has happened because in the models start position, the feet were close together, and therefore the vertices on one foot were within the envelope of the other. This is the cause of many issues when setting up Bone systems, also referred to as Rigging.

3d Studio Max

Max offers many ways of editing envelopes, but I'm only going to talk about one quick and dirty method for now. The darker red circles around the foot represent the limits of the effect area for that bone. By clicking on the small grey boxes where they intersect you can select that outer limit, and then adjust it's radius, either by dragging on it, or more precisely with the number spinner in the menu. By making it smaller, at some stage the vertices of the other foot are no longer effected. You need to adjust both feet before the model starts to look right. Then continue with the carves and thighs.
This subject is covered better in other tutorials on the net, but that should get you started.
NOTE: Make sure you have no zero weights in your model. If a vertex is connected to a bone with a weight of 0.000, it has the effect of attaching that vertex to the root of the model when imported into Away3D.
To avoid this, when you have finished rigging, set the 'Remove Zero Limit' in the skin modifier palette to 0.01 and hit 'Remove Zero Weights'. You are then ready to export.
Finally it's time to export to MD5. Under Max Script, choose Run Script and find the MD5 exporter script you downloaded earlier. I tend to put my scripts in the script folder of Max, just because it's the default directory opened by Max.
Choose export and you'll be prompted to choose a name for your file. Then you will be asked for another name for the animation file. These two files (.md5mesh and .md5anim) are needed for the mocap animation, and generally speaking need to come from the same model. However, when you have exported one mesh, you can then apply another bip file and tick 'export md5anim only' so you use the same model with different motion files, as in the example.
NOTE: When you press 'Export', your computer will most likely freeze. Max Script, much like other scripting languages, can paralyse your processor when running through big loops, and believe me there's a lot of number crunching and writing going on here. My advice, go make a cup of coffee. On my machine the exporter hasn't actually crashed yet, though I have sometimes lost patience with it and restarted Max. You can improve performance, by going into Max's preferences and increasing the allocated memory for script. (Customize>Preferences>Max Script> Initial Heap Allocation). I set mine to 50Mb.
Now all that's left is to look at the source for David Lenaerts example from the Away3D repository and start swapping his files out with your own. I have included the entire source of my effort here, though admittedly it's not commented very well. The material has been made into a mipmap, i.e. resized to a square in Photoshop.
For some reason the texture coordinates get reversed between md5 and Broomstick. I guess this may change in future builds, but for now the work around was simply to reverse the number on the players shirt in Photoshop.
Disclaimer: The Broomstick branch of Away3D is in constant development, as is the Flash player, and there is no guarantee these files will work with your installed library, without a little tweeking :O)
(They are compiled against the github version, 24th may.)NOTE: A difference in the coordinate space between MD5 format and Flash results in all models and animations being mirrored on the x-axis when viewed in Away3D 4.0
To see animations and models as they appear in MAX, simply apply a scaleX = -1; after import to Away3D.

Enjoy! And please comment with your successes, failures, comments and tips!

3d Studio Max Bip Files Motion Sensor

UPDATE: In response to the high demand, (from MatOfLink at least) here's a method for putting guns in hands, shoes on feet, hats on head, etc.
When your MD5 mesh has loaded, add a Loader3D to it. This is where your prop will appear.


gunholder = new Loader3D();
gunholder.addEventListener(LoaderEvent.RESOURCE_COMPLETE, adjustGun);
_mesh.addChild(gunholder);


So far so good. When the gun loads it will likely be twisted in relation to the rest of the model, depending on which format it is and which software it was exported from. For obj files coming from Max I've found this simple routine aligns the object the same way as in Max. At the same time you can apply materials.


private function adjustGun(evt:LoaderEvent):void {

3d Studio Max Bip Files Motion Activated

var i:int;
var gunMat:BitmapFileMaterial = new BitmapFileMaterial('assets/images/gun.jpg');
for (i = 0; i < gunholder.numChildren; i++) {
var m:Mesh = gunholder.getChildAt(i) as Mesh;
m.rotationX = 90;
m.rotationY = 90;
m.material = gunMat;
}

}


Now your gun should be in the viewport. You need to know the index of the particular bone you want to follow. This you can either read in the debugger, by trial and error, or via the jointIndexFromName from name function on the skeleton class (later…)

Once you know the index of the bone (called 'joint' in Away3d) you want to follow add this to your rendering loop:

gunHolder.transform = (_mesh.animationState as SkeletonAnimationState).globalPose.jointPoses[26].toMatrix3D();

And that's it! You basketball player is now armed and dangerous.
If I get round to it I'll post an updated source. Otherwise shout out below for help!


Now let's see some games…





broken image