Difference between revisions of "MakeHuman Workflows"

From MakeHuman Community Wiki
Jump to: navigation, search
(Background and Export Example)
Line 10: Line 10:
  
  
'''Format Considerations.'''
+
'''Format Considerations'''
  
 
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 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.
 
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 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.
  
'''MakeHuman Shader and Asset Rendering.'''
+
'''MakeHuman Shader and Asset Rendering'''
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.  The MakeHuman viewport uses, by default, a so-called “light-sphere shader” to display the human and assets during the on-screen modeling processIn doing so, it 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.  In MakeHuman, the  viewport the lighting is handled by the built-in lightsphere shader.  Most downstream programs use other shader strategies, the most simple of which are 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 adjustments in the downstream program to get the final desired effect.  Some MakeHumanassets also include Normal maps which the user will want to integrate into the downstream applications rendering.
+
 
 +
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 shaderThe 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.
  
 
==Moving Assets into Autodesk Maya==
 
==Moving Assets into Autodesk Maya==

Revision as of 06:31, 25 July 2015

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 Export Example 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 Export Example

Introduction

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. 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.


Format Considerations

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 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.

MakeHuman Shader and Asset Rendering

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.

Moving Assets into Autodesk Maya

Moving Assets into Autodesk 3DSMax

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