|
static void | ColladaToPMD (const char *input, OutputCB &output, std::string &xmlErrors) |
| Converts a COLLADA XML document into the PMD mesh format. More...
|
|
static void | AddDefaultPropPoints (std::vector< PropPoint > &propPoints) |
| Adds the default "root" prop-point. More...
|
|
static void | WritePMD (OutputCB &output, const uint32 *indices, size_t indexCount, const float *position, const float *normal, const std::vector< float * > &texcoords, size_t vertexCount, const std::vector< VertexBlend > &boneWeights, const std::vector< BoneTransform > &boneTransforms, const std::vector< PropPoint > &propPoints) |
| Writes the model data in the PMD format. More...
|
|
static FCDGeometryPolygons * | GetPolysFromGeometry (FCDGeometry *geom) |
|
static void | TransformStaticModel (float *position, float *normal, size_t vertexCount, const FMMatrix44 &transform, bool yUp) |
| Applies world-space transform to vertex data and transforms Collada's right-handed Y-up / Z-up coordinates to the game's left-handed Y-up coordinate system. More...
|
|
static void | TransformSkinnedModel (float *position, float *normal, size_t vertexCount, std::vector< BoneTransform > &bones, std::vector< PropPoint > &propPoints, const FMMatrix44 &transform, const FMMatrix44 &bindTransform, bool yUp, bool isXSI) |
| Applies world-space transform to vertex data and transforms Collada's right-handed Y-up / Z-up coordinates to the game's left-handed Y-up coordinate system. More...
|
|
◆ AddDefaultPropPoints()
static void PMDConvert::AddDefaultPropPoints |
( |
std::vector< PropPoint > & |
propPoints | ) |
|
|
inlinestatic |
Adds the default "root" prop-point.
◆ ColladaToPMD()
static void PMDConvert::ColladaToPMD |
( |
const char * |
input, |
|
|
OutputCB & |
output, |
|
|
std::string & |
xmlErrors |
|
) |
| |
|
inlinestatic |
Converts a COLLADA XML document into the PMD mesh format.
- Parameters
-
input | XML document to parse |
output | callback for writing the PMD data; called lots of times with small strings |
xmlErrors | output - errors reported by the XML parser |
- Exceptions
-
◆ GetPolysFromGeometry()
static FCDGeometryPolygons * PMDConvert::GetPolysFromGeometry |
( |
FCDGeometry * |
geom | ) |
|
|
inlinestatic |
◆ TransformSkinnedModel()
static void PMDConvert::TransformSkinnedModel |
( |
float * |
position, |
|
|
float * |
normal, |
|
|
size_t |
vertexCount, |
|
|
std::vector< BoneTransform > & |
bones, |
|
|
std::vector< PropPoint > & |
propPoints, |
|
|
const FMMatrix44 & |
transform, |
|
|
const FMMatrix44 & |
bindTransform, |
|
|
bool |
yUp, |
|
|
bool |
isXSI |
|
) |
| |
|
inlinestatic |
Applies world-space transform to vertex data and transforms Collada's right-handed Y-up / Z-up coordinates to the game's left-handed Y-up coordinate system.
TODO: Maybe we should use FCDocumentTools::StandardizeUpAxisAndLength in addition to this, so we'd only have one up-axis case to worry about, but it doesn't seem to correctly adjust the prop points in Y_UP models.
◆ TransformStaticModel()
static void PMDConvert::TransformStaticModel |
( |
float * |
position, |
|
|
float * |
normal, |
|
|
size_t |
vertexCount, |
|
|
const FMMatrix44 & |
transform, |
|
|
bool |
yUp |
|
) |
| |
|
inlinestatic |
Applies world-space transform to vertex data and transforms Collada's right-handed Y-up / Z-up coordinates to the game's left-handed Y-up coordinate system.
TODO: Maybe we should use FCDocumentTools::StandardizeUpAxisAndLength in addition to this, so we'd only have one up-axis case to worry about, but it doesn't seem to correctly adjust the prop points in Y_UP models.
◆ WritePMD()
static void PMDConvert::WritePMD |
( |
OutputCB & |
output, |
|
|
const uint32 * |
indices, |
|
|
size_t |
indexCount, |
|
|
const float * |
position, |
|
|
const float * |
normal, |
|
|
const std::vector< float * > & |
texcoords, |
|
|
size_t |
vertexCount, |
|
|
const std::vector< VertexBlend > & |
boneWeights, |
|
|
const std::vector< BoneTransform > & |
boneTransforms, |
|
|
const std::vector< PropPoint > & |
propPoints |
|
) |
| |
|
inlinestatic |
Writes the model data in the PMD format.
The documentation for this class was generated from the following file:
- /home/docker/jenkins/workspace/technical-docs/source/collada/PMDConvert.cpp