Synchronized D bindings with the latest C header.

git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@489 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
pull/1/head
klickverbot 2009-10-04 15:09:55 +00:00
parent cc1ff304df
commit fe1c9ec3d0
3 changed files with 59 additions and 13 deletions

View File

@ -131,11 +131,11 @@ extern ( C ) {
/** /**
* Configures the <code>PretransformVertices</code> step to keep the scene * Configures the <code>PretransformVertices</code> step to keep the scene
* hierarchy. Meshes are moved to worldspace, but no optimization is * hierarchy. Meshes are moved to worldspace, but no optimization is
* performed (means: meshes are not joined. The total number of meshes won't * performed (meshes with equal materials are not joined, the total number
* change). * of meshes will not change).
* *
* This option could be of use for you if the scene hierarchy contains * This option could be of use for you if the scene hierarchy contains
* important additional information which you want to interpret. * important additional information which you intend to parse.
* For rendering, you can still render all meshes in the scene without * For rendering, you can still render all meshes in the scene without
* any transformations. * any transformations.
* *
@ -145,6 +145,17 @@ extern ( C ) {
*/ */
const char* AI_CONFIG_PP_PTV_KEEP_HIERARCHY = "PP_PTV_KEEP_HIERARCHY"; const char* AI_CONFIG_PP_PTV_KEEP_HIERARCHY = "PP_PTV_KEEP_HIERARCHY";
/**
* Configures the <code>PretransformVertices</code> step to normalize all
* vertex components into the -1...1 range. That is, a bounding box for the
* whole scene is computed, the maximum component is taken and all meshes
* are scaled appropriately (uniformly of course!).
*
* This might be useful if you don't know the spatial dimension of the input
* data.
*/
const char* AI_CONFIG_PP_PTV_NORMALIZE = "PP_PTV_NORMALIZE";
/** /**
* Configures the <code>FindDegenerates</code> step to remove degenerated * Configures the <code>FindDegenerates</code> step to remove degenerated
* primitives from the import immediately. * primitives from the import immediately.
@ -380,6 +391,21 @@ extern ( C ) {
*/ */
const char* AI_CONFIG_PP_SBP_REMOVE = "PP_SBP_REMOVE"; const char* AI_CONFIG_PP_SBP_REMOVE = "PP_SBP_REMOVE";
/**
* Input parameter to the <code>FindInvalidData</code> step:
* Specifies the floating-point accuracy for animation values.
*
* The step checks for animation tracks where all frame values are
* absolutely equal and removes them. This tweakable controls the epsilon
* for floating-point comparisons two keys are considered equal if the
* invariant abs(n0-n1) > epsilon holds true for all vector respectively
* quaternion components.
*
* Default value: 0 (exact comparison).
*
* Property type: float.
*/
const char* AI_CONFIG_PP_FID_ANIM_ACCURACY = "PP_FID_ANIM_ACCURACY";
/** /**
* The <code>TransformUVCoords</code> step evaluates UV scalings. * The <code>TransformUVCoords</code> step evaluates UV scalings.
@ -623,4 +649,15 @@ extern ( C ) {
* Property type: integer. * Property type: integer.
*/ */
const char* AI_CONFIG_IMPORT_IRR_ANIM_FPS = "IMPORT_IRR_ANIM_FPS"; const char* AI_CONFIG_IMPORT_IRR_ANIM_FPS = "IMPORT_IRR_ANIM_FPS";
/**
* Ogre Importer will try to load this material file.
*
* Ogre Mehs contain only the material name, not the material file. If there
* is no material file with the same name as the material, Ogre Importer
* will try to load this file and search the material in it.
*
* Property type: string. Default value: "Scene.material".
*/
const char* AI_CONFIG_IMPORT_OGRE_MATERIAL_FILE = "IMPORT_OGRE_MATERIAL_FILE";
} }

View File

@ -64,12 +64,12 @@ extern ( C ) {
alias char* aiUserData; alias char* aiUserData;
/** /**
* Defines Assimp's way of accessing files. * File system callbacks.
* *
* Provided are functions to open and close files. Supply a custom structure * Provided are functions to open and close files. Supply a custom structure
* to the import function. If you don't, a default implementation is used. * to the import function. If you don't, a default implementation is used.
* Use this to enable reading from other sources, such as ZIPs or memory * Use custom file systems to enable reading from other sources, such as
* locations. * ZIPs or memory locations.
*/ */
struct aiFileIO { struct aiFileIO {
/** /**
@ -89,7 +89,7 @@ extern ( C ) {
} }
/** /**
* Represents a read/write file. * File callbacks.
* *
* Actually, it's a data structure to wrap a set of <code>fXXXX</code> * Actually, it's a data structure to wrap a set of <code>fXXXX</code>
* (e.g <code>fopen()</code>) replacement functions. * (e.g <code>fopen()</code>) replacement functions.

View File

@ -199,10 +199,15 @@ extern ( C ) {
* this step. * this step.
* *
* This step is intended for applications that have no scenegraph. * This step is intended for applications that have no scenegraph.
*
* The step <em>can</em> cause some problems: if e.g. a mesh of the asset * The step <em>can</em> cause some problems: if e.g. a mesh of the asset
* contains normals and another, using the same material index, does not, * contains normals and another, using the same material index, does not,
* they will be brought together, but the first meshes's part of the * they will be brought together, but the first meshes's part of the
* normal list will be zeroed. * normal list is zeroed. However, these artifacts are rare.
*
* Note: The <code>AI_CONFIG_PP_PTV_NORMALIZE</code> configuration
* property can be set to normalize the scene's spatial dimension
* to the -1...1 range.
*/ */
PreTransformVertices = 0x100, PreTransformVertices = 0x100,
@ -358,13 +363,17 @@ extern ( C ) {
/** /**
* This step searches all meshes for invalid data, such as zeroed normal * This step searches all meshes for invalid data, such as zeroed normal
* vectors or invalid UV coords and removes them. * vectors or invalid UV coords and removes/fixes them. This is intended
* to get rid of some common exporter errors.
* *
* This is especially useful for normals. If they are invalid, and the * This is especially useful for normals. If they are invalid, and the
* step recognizes this, they will be removed and can later be computed * step recognizes this, they will be removed and can later be
* by one of the other steps. * recomputed, e.g. by the <code>GenSmoothNormals</code> step.
* *
* The step will also remove meshes that are infinitely small. * The step will also remove meshes that are infinitely small and reduce
* animation tracks consisting of hundreds if redundant keys to a single
* key. The <code>AI_CONFIG_PP_FID_ANIM_ACCURACY</code> config property
* decides the accuracy of the check for duplicate animation tracks.
*/ */
FindInvalidData = 0x20000, FindInvalidData = 0x20000,