Difference between revisions of "MakeHuman Workflows"

From MakeHuman Community Wiki
Jump to: navigation, search
m (Moving Assets into Unreal Engine 4)
 
(47 intermediate revisions by 5 users not shown)
Line 4: Line 4:
 
More often than not MakeHuman users will want to move their creation into another program to continue the creation process.  This section provides information on how to achieve this for common target programs.  The ''Background and Technical Consideratins'' section provides some background that are common to all workflows.  It is not essential to read the introduction before going straight to the program of interest, but doing so might help you understand ''why'' certain steps work or are necessary. In many cases there can be more than one way to accomplish the same thing.  The method described here may not be optimal for your situation, but it should help get you started.
 
More often than not MakeHuman users will want to move their creation into another program to continue the creation process.  This section provides information on how to achieve this for common target programs.  The ''Background and Technical Consideratins'' section provides some background that are common to all workflows.  It is not essential to read the introduction before going straight to the program of interest, but doing so might help you understand ''why'' certain steps work or are necessary. In many cases there can be more than one way to accomplish the same thing.  The method described here may not be optimal for your situation, but it should help get you started.
  
==Background and Technical Considerations==
+
==[[Background and Technical Considerations]]==
'''Introduction'''
+
[[Background and Technical Considerations]]
  
Many MakeHuman users will use the work they create in MakeHuman as a component of a project completed in an external, downstream application.  The most common target applications are 3D graphics applications like Blender, Autodesk 3DSMax, and Autodesk Maya or gaming engines like Unity Engine or Unreal Engine 4 or Virtual Worlds like Second Life.  In some cases, the MakeHuman user will be interested in moving just the mesh.  In other cases, the user will be interested in moving a complete, posed, skeletonized character to the downstream application.  The purpose of this document is to discuss the basic process of moving a finished MakeHuman asset to a downstream program and producing a reasonable facsimile of its MakeHuman appearance in the downstream application.  It is important to recognize that because each application has its own way of representing 3D assets, and because each export format has its own set of idiosyncrasies, there will be adjustments and approximations in the asset transfer process.
+
This subsection will provide some general information on "trouble spots" when trying to take your MakeHuman work and use it in a downstream application.  Many of the problems discussed are topics that always arise when moving assets between 3D programs.
  
 
+
*Introduction [http://www.makehumancommunity.org/wiki/Background_and_Technical_Considerations#Introduction]
'''Format Considerations'''
+
*Format Considerations [http://www.makehumancommunity.org/wiki/Background_and_Technical_Considerations#Format_Considerations]
 
+
*MakeHuman Shader and Asset Rendering [http://www.makehumancommunity.org/wiki/Background_and_Technical_Considerations#MakeHuman_Shader_and_Asset_Rendering]
In an effort to provide the broadest latitude for user workflows, the MakeHuman development team is directing it major export support toward Autodesk FBX format and Khronos Collada format.  In addition, Blender users have the option to install the [https://bitbucket.org/ThomasMakeHuman/mhx2-makehuman-exchange independently developed .mhx2 tools], which are developed and maintained by Thomas Larson, independent of MakeHuman itself.  Collada is a text-based format and is an open standard, but implementation of the standard is not as consistent as might be hoped.  FBX is a proprietary standard developed by Autodesk and supported through a software development kit (FBX SDK) written in C++ and a Python FBX scripting template.  The FBX standard is periodically updated by Autodesk and can be saved as either an ASCII or a binary format.  Downstream programs may make assumptions about the FBX version being imported, and may limit users to either binary or ASCII importing.  Surprisingly, CG assets exported from various programs as collada and FBX do not make it back into the same program as a round-trip without changes to some components of the scene.  For example, this is true of FBX format in both 3DSMax and Maya for MakeHumanassets.  It is also true for Blender with both FBX and collada format for MakeHumanassets.  In this document, we will attempt to provide some support for dealing with this type of surprise.
+
*Spatial transformation: MakeHuman Coordinate System, MakeHuman Skeletons, and MakeHuman Scales [http://www.makehumancommunity.org/wiki/Background_and_Technical_Considerations#Spatial_transformation:_MakeHuman_Coordinate_System.2C_MakeHuman_Skeletons.2C_and_MakeHuman_Scales]
 
+
*Working with Rigs and Skeletons [http://www.makehumancommunity.org/wiki/Background_and_Technical_Considerations#Working_with_Rigs_and_Skeletons]
'''MakeHuman Shader and Asset Rendering'''
+
*MakeHuman Assets with transparency [http://www.makehumancommunity.org/wiki/Background_and_Technical_Considerations#MakeHuman_Assets_with_transparency]
 
+
A “shader” is computer code that translates digital information into a properly rendered image on the computer screen. Different algorithms use different methods of constructing such a display. By default in MakeHuman, the  viewport lighting is handled by the built-in light-sphere shader.  The light-sphere shader takes advantage of support for the openGL standard provided by today’s graphics cards.  What the viewer sees on the screen depends not only on the color of assets, like skin and clothing, but also on the nature of the lights illuminating the scene and causing reflections and shadows.  Most downstream programs use other shader strategies, the most common of which include Phong shaders, Blinn shaders, or Lambert shaders.  Because the code and conceptual design of these shaders differs from that of the MakeHuman light-sphere shader, the user should be prepared to make some adjustments in the downstream program to get the final desired effect.  Some MakeHuman assets also include Normal maps which the user will want to integrate into the downstream applications rendering.
+
 
+
When a MakeHuman material (for example, skin or clothing or eyelashes) is exported, it carries with it a limited amount of fundamental information for by the downstream program’s shaders.  In an ideal world, the downstream program would import this raw information, correctly populate the variables in its shaders, and yield the same view of the human that was exported from MakeHuman.  At present this does not typically happen, and the user must make some adjustments. This Wiki section is designed to help you negotiate through that process.
+
 
+
'''Spatial transformation: MakeHuman Coordinate System, MakeHuman Skeletons, and MakeHuman Scales'''
+
 
+
The MakeHuman viewport is oriented so that the positive end of the x-axis is to the right, the positive end of the y-axis it up, and the positive end of the z-axis is out through the front to the screen. Other CG programs can use other schemes, so it is essential to know the coordinate system used by the downstream target at export time, if you wish to minimize the adjustments you make after importing. The settings tab allows users to work in metric units of decimeters or imperial units of inches. Downstream programs vary in their de facto units, and again, it is generally a good idea to anticipate your needs at export time rather than trying to make adjustments during or after import. It is sometimes said that these programs have no default unit.  To a degree this is true.  However, the default grid pattern, assumptions of other humanoid producing programs, and assumptions of the “physics systems” will often work best with the export units specified in the table below:
+
 
+
TABLE HERE
+
 
+
'''Working with Rigs and Skeletons'''
+
 
+
Internally, MakeHuman uses its default skeleton as the basis of mesh vertex weighting for creating the poses available on the pose tab. This rig includes a special set of bones that can be used for driving facial expressions, but as of the current release (MakeHuman 1.1.x), there is not extensive support for inverse kinematics, and animation must be done downstream in the production pipeline.  Historically, MakeHuman has had close ties to Blender, but the ultimate development goal is to provide strong generic support for all the major tools used in the industry, and with MakeHuman 1.1.x, substantial progress has been made by providing weighted skeletons suited for standard use in various downstream applications.  For the most part, the name of the most appropriate rig will be clearly associated with the target downstream application, but the tag filters on the Pose/Animate | skeleton tab are intended to help choose a rig suited more generally to a specific purpose like motion capture integration, facial animation, or gaming applications.  MakeHuman is designed to provide the user with maximum flexibility at creation time. To provide skeletons that work perfectly with every conceivable variation of the sliders is a laudable but elusive goal.  That said, the user should get excellent results with the current approach, but the user should be prepared to make some minor tweaks to skeletons and weights downstream, particularly with extreme character dimensions or extreme poses.
+
 
+
 
+
'''MakeHuman Assets with transparency'''
+
 
+
In CG art, materials for mesh objects are frequently created by shaders that use various types of image maps to provide some of the information for determining the color, transparency, and light behavior on the surface of mesh objects.  These image maps are referred to as textures.  MakeHuman has textured materials available for the body (including proxy topologies), eyes, eyebrows, eyelashes, tongue, teeth, and hair.  During export, these textures need to made available to the program that will be importing the MakeHuman output.  Two aspects of this process need to be understood by the MakeHuman user: 1) how textures are saved; and 2) how transparency is handled.
+
 
+
There are two possible standards for storing texture assets upon export.  They can either be embedded in an exported file, or they can be saved to a folder as named images with reference to the location of those files in the exported file.  At present, MakeHuman uses the latter approach when exporting material textures.  Following the export process, MakeHuman exports will be located in ~/makehuman/v1/exports/, and the texture images will be located in a corresponding subfolder ~/makehuman/v1/exports/textures. The tilde symbol indicates your user drive and home document directory. [For example, on Windows Vista and later, this typically would be: C:/Users/%USERNAME%/Documents/makehuman/v1/exports and a textures subfolder, where %USERNAME% is replaced by your username.]
+
 
+
Transparency is used in 3D art to let a viewer see through a mesh object to experience the color, reflections and lighting behind that object.  MakeHuman uses transparency with textures for the eyes, eyebrows, eyelashes, and hair. This allows complex real world geometry to be represented by much simpler quasi-planar objects.  For example, the hairs of the eyebrows are painted onto a flat surface with transparent spaces in between the painted hairs rather than creating tiny mesh objects for each of the 250-1000 individual hairs.  CG programs can indicate which regions of the eyebrow should be transparent either by using a separate image where blackness indicates transparent and whiteness indicates opacity.  Grayness is used to represent partial transparency. An alternative approach to representing transparency is to use an image format like .tga or .png which has a one byte channel, called an alpha channel, for just this purpose.  Again, values near zero (black) typically represent “completely transparent” and values near 255 (white) typically represent “completely opaque”.  MakeHuman represents the transparent regions of its assets using the alpha channel method and the .png format for textures.  Unfortunately, importers for filmbox (FBX) and collada formats (DAE) do not automatically extract the transparency information provided by MakeHuman, or more specifically, they do not provide it to their shaders as anticipated.  This is not just a MakeHuman problem but reflects multiple ways of handling transparency and alpha channels within the industry.  Notably, exporting and reimporting assets with alpha channel transparency into the very same program fails with Blender, 3DSMax, and Maya for FBX, and where available, DAE formats.  This forces the MakeHuman user to understand how to overcome this limitation in his favorite downstream application.  Some introductory help will be provided for common applications later in this document.
+
 
+
There is one additional aspect of using transparency to make a single, simple mesh represent multiple small objects like eyebrows, and that is the issue of shadows.  Lighting systems in 3D worlds creates a simulation of reality by making shadows appear on mesh objects in places you would expect to see them in the real world and with the soft edges you would expect to see in the real world.  Shadows are a function of both the light source, the object blocking that light, and the objects receiving the reflected and refracted light from other objects.  For objects that have transparency, like MakeHuman’s eyes, eyelashes, eyebrows, and hair, shadows should only be cast by the opaque portion of the texture and not by the transparent portions of the texture.  The handling of shadows differs considerably from program to program, and objects with alpha channel transparency can need some special handling to accommodate these differences. This handling is not just about the assets with alpha map transparency, themselves.  Sometimes it is necessary to set parameters to explicitly tell other objects like the MakeHuman body to not display shadows from the transparent regions of the eyebrows but to show shadows from the opaque hairs of the eyebrows.  Shadows of transparently mapped assets will be addressed further in subsequent sections (where information is available).
+
  
 
==Illustrating the Export Process for Subsequent Import==
 
==Illustrating the Export Process for Subsequent Import==
  
 
For the purposes of illustration we will take a straight forward MakeHuman character that has been given a skeleton, a pose, a skin material, clothing, eyes, eyelashes, eyebrows, hair, tongue and teeth.  We will then export it for import into a number of popular downstream applications.  For each application, our goal will be to get the character to look similar to its original look in MakeHuman.  We will pay particular attention to the head and face because this is the area of greatest difficulty for dealing with transparency and shadows. The character has the default skeleton and has been set in the T-pose which is a common starting pose for animation-based work. The image we will be exporting looks like this in MakeHuman:
 
For the purposes of illustration we will take a straight forward MakeHuman character that has been given a skeleton, a pose, a skin material, clothing, eyes, eyelashes, eyebrows, hair, tongue and teeth.  We will then export it for import into a number of popular downstream applications.  For each application, our goal will be to get the character to look similar to its original look in MakeHuman.  We will pay particular attention to the head and face because this is the area of greatest difficulty for dealing with transparency and shadows. The character has the default skeleton and has been set in the T-pose which is a common starting pose for animation-based work. The image we will be exporting looks like this in MakeHuman:
 +
 
[[File:ImpExp-001.png]]
 
[[File:ImpExp-001.png]]
  
 
'''Figure 1.'''  MakeHuman character as viewed from within MakeHuman prior to export.
 
'''Figure 1.'''  MakeHuman character as viewed from within MakeHuman prior to export.
  
In subsequent sections, we will discuss the steps needed to reproduce this look after importing into a downstream program.
+
In subsequent sections, we will discuss the steps needed to reproduce this look after importing into specific downstream programs.
  
 
+
==[[Moving Assets into Autodesk Maya]]==
==Moving Assets into Autodesk Maya==
+
 
[[Moving Assets into Autodesk Maya]]
 
[[Moving Assets into Autodesk Maya]]
  
We will use the file created in the “Illustrating the Export Process for Subsequent Import” section.
+
This subsection describes the restoration and use of MakeHuman's transparency and skeletal assets after importing in Autodesk Maya.
The FBX export settings used for Maya import should include setting the scale units to centimeters on export. Maya can import either ASCII or binary FBX files, so either type of export can be used for MakeHuman  export. <nowiki>[RWB Note: as of this writing there are still some issues with direct FBX binary export, but those are expected to be repaired going forward]</nowiki>. By default the exported file will be found in ~/makehuman/v1/exports/ (where ~ is the user home directory).
+
*Introduction [http://www.makehumancommunity.org/wiki/Moving_Assets_into_Autodesk_Maya#Introduction]
 +
*Importing and Initial Setup [http://www.makehumancommunity.org/wiki/Moving_Assets_into_Autodesk_Maya#Importing_and_Initial_Setup]
 +
*Basic Repair of Eye Transparency [http://www.makehumancommunity.org/wiki/Moving_Assets_into_Autodesk_Maya#Basic_Repair_of_Eye_Transparency]
 +
*Repeat for other Transparent Assets [http://www.makehumancommunity.org/wiki/Moving_Assets_into_Autodesk_Maya#Repeat_for_other_Transparent_Assets]
 +
*Raytrace Shadows [http://www.makehumancommunity.org/wiki/Moving_Assets_into_Autodesk_Maya#Raytrace_Shadows]
 +
*Re-importing "Fixed MakeHuman Assets" from Maya after saving in FBX format [http://www.makehumancommunity.org/wiki/Moving_Assets_into_Autodesk_Maya#Re-importing_Intermediate_FBX_files_from_Maya]
 +
*Adopting MakeHuman Skeletons to Maya [http://www.makehumancommunity.org/wiki/Moving_Assets_into_Autodesk_Maya#Adopting_MakeHuman_Skeletons_to_Maya]
  
[[Moving Assets into Autodesk Maya]Importing and Initial Setup]
+
<font color = 'red'>--------Skeleton subsection still to be written--------</font>
  
When the file is initially imported into Maya it looks like this:
+
==[[Moving Assets into Autodesk 3DSMax]]==
[[File:ImpExp03.png]]
+
  
<CENTER>'''Figure 1'''</CENTER>
+
[[Moving Assets into Autodesk 3DSMax]]
  
The only color in the viewport is the shoes which had a simple diffuse material which was not associated a texture. By clicking the textured icon at the top of the viewport, the viewport shows a preview of how the rendered, textured image would appear:
+
This subsection describes the restoration and use of MakeHuman's transparency and skeletal assets after importing in Autodesk 3DSMax.
  
[[File:ImpExp04.png]]
+
*Units Considerations [http://www.makehumancommunity.org/wiki/Moving_Assets_into_Autodesk_3DSMax#Units_Considerations]
  
<CENTER>'''Figure 2'''</CENTER>
+
*Importing FBX into 3DSMax [http://www.makehumancommunity.org/wiki/Moving_Assets_into_Autodesk_3DSMax#Importing_FBX_into_3DSMax]
  
Holding down Alt and scrolling with the middle mouse wheel allows us to zoom in and see the problems with the imported eyes, eyelashes, eyebrows, and possibly the hair:
+
*Restoring Transparency for the Eyes [http://www.makehumancommunity.org/wiki/Moving_Assets_into_Autodesk_3DSMax#Restoring_Transparency_for_the_Eyes]
  
[[File:ImpExp06.png]]
+
*Fixing Transparency on the Other Assets [http://www.makehumancommunity.org/wiki/Moving_Assets_into_Autodesk_3DSMax#Fixing_Transparency_on_the_Other_Assets]
  
<CENTER>'''Figure 3'''</CENTER>
+
*Repairing an Imported MakeHuman FBX file that was previously Exported after Fixing [http://www.makehumancommunity.org/wiki/Moving_Assets_into_Autodesk_3DSMax#Repairing_an_Imported_MakeHuman_FBX_file_that_was_previously_Exported_after_Fixing]
  
The thin lines on the face are an artifact of having included the facial rig by choosing the default skeleton.  The process of fixing the '''eyes, eyelashes, eyebrows, and hair''' is the same in each case.  We must tell Maya to use transparency from the corresponding alpha channel when rendering the corresponding mesh.  It can be hard to select the facial mesh objects in perspective view so it is advisable to go into orthographic front view. One way to do this is with the panel menu just above the viewport.
+
*Importing MakeHuman Skeletons into 3DSMAX [http://www.makehumancommunity.org/wiki/Moving_Assets_into_Autodesk_3DSMax#Importing_MakeHuman_Skeletons_into_3DSMAX]
  
[[File:ImpExp07.png]]
+
==[[Moving Assets into Blender]]==
  
<CENTER>'''Figure 4'''</CENTER>
+
[[Moving Assets into Blender]]
  
 +
This subsection describes the import of transparent assets after importing in Blender.  The initial focus will be on using the Blender Internal Render engine.  The use of Cycles render engine will be handled separately.  The Blender tools (MakeClothes, MakeWalk, MakeTarget) for designing and working with MakeHuman internal assets are described elsewhere.
  
'''Basic Repair of Eye Transparency'''
+
==Moving Assets into Unreal Engine 4==
 +
The documentation for how to work with Unreal Engine is available in [[Documentation:Saving_models_for_Unreal_Engine_and_how_to_import_them_there|"Saving models for Unreal_Engine and how to import them there"]].
  
Once in front view, left click to select the eye meshes, and perform the following steps:
+
==Moving Assets into Unity Game Engine==
  
[[File:ImpExp08.png]]
+
The documentation for how to work with unity is available in [[Documentation:Saving_models_for_Unity_and_how_to_import_them_there|"Saving models for Unity and how to import them there"]].
<CENTER>'''Figure 5'''</CENTER>
+
  
1. In the attribute editor on the right side of the screen, use the right arrow key to make sure the right-most tab is visible and click it to show the corresponding attributes.
+
==Moving Assets into Sketchup Pro==
  
[[File:ImpExp09.png]]
+
==Preparing assets for use with Second Life==
  
<CENTER>'''Figure 6'''</CENTER>
+
==User contributed assets. Sharing your creations with the community==
  
2. In the phong shader section, open the Common Material Attributes section and click on the checkered button to the right of transparency.
+
You finally managed to model a cool piece of clothing or something else? You would like to share it with others? Great! A few words before you start loading up:
  
[[File:ImpExp10.png]]
+
MakeHuman is available for more than one OS. Users live in different countries using different language settings. This has some consequences to think about before you upload your asset.
  
<CENTER>'''Figure 7'''</CENTER>
+
*Avoid non-ascii characters in your filenames. Depending on language settings some characters might lead to trouble. Stick to English in your file names and you're safe.
 
+
*Don't use spaces in file names. Today, on most platforms you can use file names like "My Asset.mhclo", but a lot of scripts won't be able to handle it. They consider the space after "My" as a delimiter and fail. Instead of "My Asset.mhclo" "My_Asset.mhclo" would be better.  
3. In the Create Render Node dialog box that pops up, click on file.  
+
*"My_Asset.mhclo" is still a bad filename. On Windows file names aren't case sensitive. On Linux they are. On Windows "My_Asset.mhclo", "my_asset.mhclo" and "My_Asset.MHCLO    " all refer to the same file. On Linux they are three completely different files. You want your stuff to work on all platforms. Avoid uppercase letters. "my_asset.mhclo" is a good filename.
 
+
*These rules are true for all files that belong to your asset.  
[[File:ImpExp11.png]]
+
*Consider using the same base name for files belonging to your asset. For example, if you have a "my_asset.mhclo", it'd make sense to give a material belonging to it the name "my_asset.mhmat" rather than "some_other_random_name.mhmat".  
 
+
*Use self-explanatory file names for your graphic files. For this example "my_asset_diffuse.png" would be a good idea for the diffuse texture. Don't use just "diffuse.png". If there's more than one asset using this lazy naming convention files will be overwritten on export.
<CENTER>'''Figure 8'''</CENTER>
+
*This one's obvious, but often forgotten: After renaming your files, open the .mhclo and .mhmat files and change the referenced file names to your new file names.
 
+
4. The checkered button next to transparency (see Figure 7) turns into an arrow, [[File:ImpExp12.png]] which you can click to allow the attribute editor to locate the texture map for your eyes. In our example, this texture is called blue_eyes.png.  You navigate to this file by left clicking on the yellow folder file attributes section as shown in the image below:
+
 
+
[[File:ImpExp13.png]]
+
 
+
<CENTER>'''Figure 9'''</CENTER>
+
 
+
5. This step for transparency will probably will NOT be needed if you import straight from MakeHuman, but it may be needed if you do intermediate work in another program like 3DSMax. Open the color balance section on the same file1 tab of the attribute editor and verify that “Alpha is Luminance” is unchecked (Figure 10 below). Uncheck it if it is checked.
+
 
+
[[File:ImpExp14.png]]
+
 
+
<CENTER>'''Figure 10'''</CENTER>
+
 
+
The eyes in our image now look like this:
+
 
+
[[File:ImpExp15.png]]
+
 
+
<CENTER>'''Figure 11'''</CENTER>
+
 
+
----
+
 
+
 
+
 
+
'''Repeat for other Transparent Assets'''
+
 
+
You need to '''repeat steps 1-5''' after selecting the '''''eyebrows''''' in the viewport, after selecting the '''''eyelashes''''' in the viewport, and after selecting the '''''hair''''' in the viewport. When we finished these steps on each of the assets of our test model, the face is a nice approximation of what we started with in MakeHuman and looks like this:
+
 
+
[[File:ImpExp16.png]]
+
 
+
<CENTER>'''Figure 12'''</CENTER>
+
 
+
----
+
 
+
 
+
 
+
'''Raytrace Shadows'''
+
 
+
Depending on the lighting you are using in Maya, you might have one additional adjustment to make. To avoid transparency shadows, it is necessary to return to the phong section of the attribute editor by left clicking on the eyes in the viewport. In the phong shader section, open the raytrace options panel and move the shadow attenuation slider from its default of 0.5 to zero.
+
 
+
[[File:ImpExp18.png]]
+
 
+
<CENTER>'''Figure 13'''</CENTER>
+
 
+
At this point the MakeHuman model can be saved in standard Maya .mb binary file and easily brought back into Maya.  
+
 
+
 
+
 
+
'''Re-importing "Fixed MakeHuman Assets" from Maya after saving in FBX format'''
+
 
+
If the file is exported from Maya as an FBX file and read back into Maya, it imports with partially transparent assets and will look like this:
+
 
+
[[File:ImpExp20.png]]
+
 
+
<CENTER>'''Figure 14'''</CENTER>
+
 
+
You may also see partially transparent assets if your asset pipeline involves an intermediate program between MakeHuman and Maya and you use FBX to import the workflow into Maya. To once again restore it to its intended look, '''take the eyes, eyelashes, eyebrows, and hair, and fix each as follows:'''
+
 
+
1. Select the asset by left clicking on it, then click the right most tab in the asset editor panel on the right side of the screen. Click the small arrow to the right of the transparency slider.
+
 
+
2. On the file tab that appears, open the Color Balance section and uncheck alpha Is Luminance.
+
 
+
3. It may also be necessary to click each of the four assets and under the Raytrace Options section of the Phong shader in the Attributes editor, change the shadow attenuation slide back to zero (refer to figure 13).
+
 
+
[[File:ImpExp22.png]]
+
 
+
<CENTER>'''Figure 15'''</CENTER>
+
 
+
When you have re-done these steps for each of the four transparent MakeHuman assets the character should once again look like it did in MakeHuman.
+
 
+
'''Adopting MakeHuman Skeletons to Maya'''
+
 
+
TO BE WRITTEN
+
 
+
==Moving Assets into Autodesk 3DSMax==
+
 
+
This subsection describes the restoration and use of MakeHuman's skeletal transparency and skeletal assets after importing in Autodesk 3DSMax.  
+
>
+
<LI>Import process</LI>
+
<LI>Handling or Transparency after import</LI>
+
<LI>Handling of Skelton and Rigging after import</LI>
+
 
+
==Moving Assets into Blender==
+
 
+
==Moving Assets into Unreal Engine 4==
+
 
+
==Moving Assets into Unity Game Engine==
+
 
+
==Moving Assets into Google Sketchup==
+
 
+
==Preparing assets for use with Second Life==
+

Latest revision as of 09:29, 19 January 2021

Summary

More often than not MakeHuman users will want to move their creation into another program to continue the creation process. This section provides information on how to achieve this for common target programs. The Background and Technical Consideratins section provides some background that are common to all workflows. It is not essential to read the introduction before going straight to the program of interest, but doing so might help you understand why certain steps work or are necessary. In many cases there can be more than one way to accomplish the same thing. The method described here may not be optimal for your situation, but it should help get you started.

Background and Technical Considerations

Background and Technical Considerations

This subsection will provide some general information on "trouble spots" when trying to take your MakeHuman work and use it in a downstream application. Many of the problems discussed are topics that always arise when moving assets between 3D programs.

  • Introduction [1]
  • Format Considerations [2]
  • MakeHuman Shader and Asset Rendering [3]
  • Spatial transformation: MakeHuman Coordinate System, MakeHuman Skeletons, and MakeHuman Scales [4]
  • Working with Rigs and Skeletons [5]
  • MakeHuman Assets with transparency [6]

Illustrating the Export Process for Subsequent Import

For the purposes of illustration we will take a straight forward MakeHuman character that has been given a skeleton, a pose, a skin material, clothing, eyes, eyelashes, eyebrows, hair, tongue and teeth. We will then export it for import into a number of popular downstream applications. For each application, our goal will be to get the character to look similar to its original look in MakeHuman. We will pay particular attention to the head and face because this is the area of greatest difficulty for dealing with transparency and shadows. The character has the default skeleton and has been set in the T-pose which is a common starting pose for animation-based work. The image we will be exporting looks like this in MakeHuman:

ImpExp-001.png

Figure 1. MakeHuman character as viewed from within MakeHuman prior to export.

In subsequent sections, we will discuss the steps needed to reproduce this look after importing into specific downstream programs.

Moving Assets into Autodesk Maya

Moving Assets into Autodesk Maya

This subsection describes the restoration and use of MakeHuman's transparency and skeletal assets after importing in Autodesk Maya.

  • Introduction [7]
  • Importing and Initial Setup [8]
  • Basic Repair of Eye Transparency [9]
  • Repeat for other Transparent Assets [10]
  • Raytrace Shadows [11]
  • Re-importing "Fixed MakeHuman Assets" from Maya after saving in FBX format [12]
  • Adopting MakeHuman Skeletons to Maya [13]

--------Skeleton subsection still to be written--------

Moving Assets into Autodesk 3DSMax

Moving Assets into Autodesk 3DSMax

This subsection describes the restoration and use of MakeHuman's transparency and skeletal assets after importing in Autodesk 3DSMax.

  • Units Considerations [14]
  • Importing FBX into 3DSMax [15]
  • Restoring Transparency for the Eyes [16]
  • Fixing Transparency on the Other Assets [17]
  • Repairing an Imported MakeHuman FBX file that was previously Exported after Fixing [18]
  • Importing MakeHuman Skeletons into 3DSMAX [19]

Moving Assets into Blender

Moving Assets into Blender

This subsection describes the import of transparent assets after importing in Blender. The initial focus will be on using the Blender Internal Render engine. The use of Cycles render engine will be handled separately. The Blender tools (MakeClothes, MakeWalk, MakeTarget) for designing and working with MakeHuman internal assets are described elsewhere.

Moving Assets into Unreal Engine 4

The documentation for how to work with Unreal Engine is available in "Saving models for Unreal_Engine and how to import them there".

Moving Assets into Unity Game Engine

The documentation for how to work with unity is available in "Saving models for Unity and how to import them there".

Moving Assets into Sketchup Pro

Preparing assets for use with Second Life

User contributed assets. Sharing your creations with the community

You finally managed to model a cool piece of clothing or something else? You would like to share it with others? Great! A few words before you start loading up:

MakeHuman is available for more than one OS. Users live in different countries using different language settings. This has some consequences to think about before you upload your asset.

  • Avoid non-ascii characters in your filenames. Depending on language settings some characters might lead to trouble. Stick to English in your file names and you're safe.
  • Don't use spaces in file names. Today, on most platforms you can use file names like "My Asset.mhclo", but a lot of scripts won't be able to handle it. They consider the space after "My" as a delimiter and fail. Instead of "My Asset.mhclo" "My_Asset.mhclo" would be better.
  • "My_Asset.mhclo" is still a bad filename. On Windows file names aren't case sensitive. On Linux they are. On Windows "My_Asset.mhclo", "my_asset.mhclo" and "My_Asset.MHCLO " all refer to the same file. On Linux they are three completely different files. You want your stuff to work on all platforms. Avoid uppercase letters. "my_asset.mhclo" is a good filename.
  • These rules are true for all files that belong to your asset.
  • Consider using the same base name for files belonging to your asset. For example, if you have a "my_asset.mhclo", it'd make sense to give a material belonging to it the name "my_asset.mhmat" rather than "some_other_random_name.mhmat".
  • Use self-explanatory file names for your graphic files. For this example "my_asset_diffuse.png" would be a good idea for the diffuse texture. Don't use just "diffuse.png". If there's more than one asset using this lazy naming convention files will be overwritten on export.
  • This one's obvious, but often forgotten: After renaming your files, open the .mhclo and .mhmat files and change the referenced file names to your new file names.