< PREVIOUS: Armatures | NEXT: Appendix >
 

Blender Integration

Exporting from Blender

Blender is a free and open-source tool for creating 3D models and animations. The Ascend Blender Exporter is a Blender plug-in that can be used to export models to the Ascend model format (.ASC extension), allowing them to be easily inserted into Ascend applications. The exporter has the capability to export the following attributes of a model or collection of models: To install the plug-in, follow the steps outlined in the Setup section of this manual. Once the plug-in is installed and opened via Blender's Export menu, the following user interface will appear.

exporter.png

Exporting Normals

When exporting normals, the following options are available:
  • Auto: Normals are selected automatically
  • Vertex: Vertex normals will be exported, giving the model a smooth appearance
  • Face: Face normals will be exported, giving the model a faceted appearance
  • None: Normals will not be exported
The default option is Auto. It will automatically detect whether faces in the Blender models are set to smooth or flat and export normals appropriately. This option even supports exporting a mixture of smooth and flat faces on the same model.

Exporting Texture Coordinates

Exporting texture coordinates is a simple as ensuring that your model is UV-mapped and that the Textures option is enabled in the exporter panel (it is enabled by default). Texture paths generated for the exported ASC file are assumed to be relative to the ASC file itself. Hence, the texture file and ASC file should be stored in the same directory.

It is possible to open the ASC file in a text editor and modify the Texture attribute on any ModelSceneNode or AnimatedSceneNode tag in order to use a texture that is in a different directory (such as a parent directory or subdirectory). It is important to note that the Ascend loader will still interpret this path as being relative to the ASC file (i.e. usage of "../" is required for parent directories).

Exporting Armatures

If one or more of your Blender models contains an armature, the armature can be exported by ensuring the Armatures option is enabled in the exporter panel (it is enabled by default). Below are tips and notes for designing and exporting rigged models:
  • The armature and the mesh it affects must be co-aligned (i.e. they should share the same origin, rotation, and scale)
  • The armature must be defined as a modifier of the mesh
  • Multiple root bones are supported
  • It is not necessary to attach the mesh and armature in a parent-child relationship before exporting
  • It is not necessary to have animations defined in order to export armatures, as the armatures can be manipulated procedurally in Ascend

Exporting Hierarchy

By enabling the Hierarchy option in the export panel (it is enabled by default), a complete hierarchical ASC file is generated. When exporting, the entire hierarchy (including any parents and children of the selected mesh) will be exported, with the top-level mesh corresponding to the root SceneNode in the output ASC file.

Objects parented under bones will be included in the export and will correspond to SceneNodes in a Bone's RigidAttachments collection. It is important to note that only meshes, armatures, and bones are supported, and any invalid objects such as cameras or lights will be excluded from the export along with any objects parented under them.

When the Hierarchy option is disabled, only the selected mesh will be exported (along with its armature if it has one and the Armatures option is enabled in the export panel).

Exporting Animations

When the Animations button is enabled in the export panel (it is enabled by default), the user has the ability to define animations for one or more animated meshes. Clicking the (+) button next to the Animations option will add a new animation definition entry. The user can then select an object on which to define the animation, name the animation, and enter the start and end frames that describe the animation.

Animation frames will be automatically imported into an AnimatedSceneNode's AnimationFrames collection when loading an animated ASC file in Ascend. Likewise, animation definitions will also be automatically imported (to the same effect as using the AnimatedSceneNode.DefineAnimation API). Any animation defined when exporting can therefore be played by using the AnimatedSceneNode.Play method and providing the name for the animation (see the Animation section of this manual).

AscendViewer

ascendviewer.png

Ascend comes bundled with a developer utility called AscendViewer. AscendViewer allows the developer to preview an exported model, including textures, bones, and animations, before writing a line of code. The Content Explorer pane in the AscendViewer interface gives the developer a visualization of the hierarchy defined in an ASC file and also displays local transform information for the currently-selected node.

For more information on using AscendViewer, click the (?) button in the upper-right corner of the interface.
< PREVIOUS: Armatures | NEXT: Appendix >
 

Last edited May 1, 2014 at 5:53 PM by menehune23, version 33

Comments

No comments yet.