#include <CharacterMesh.h>
Inheritance diagram for Lamp::CharacterMesh:

Public Member Functions | |
| virtual bool | isCharacterMesh () const |
| キャラクタメッシュかどうか | |
| virtual Mesh * | copy (u_int copyMask=0) const |
| コピー | |
| virtual CharacterMesh * | copyCharacterMesh (u_int copyMask=0) const |
| キャラクタメッシュのコピー | |
| virtual bool | requireNormalize () const |
| 法線の正規化を必要とするか | |
| virtual void | invalidateGraphicsDeviceObjects () |
| デバイスオブジェクトの無効化 | |
Static Public Attributes | |
| const int | maxWeightPerVertex = 4 |
| 最大頂点あたりウェイト数 | |
Protected Member Functions | |
| CharacterMesh (const String &name, Scene *scene) | |
| コンストラクタ | |
| virtual | ~CharacterMesh () |
| デストラクタ | |
| virtual void | traverse (const Matrix34 &parentMatrix, bool parentEnabled, bool parentScaled, bool parentChanged) |
| 走査 | |
| virtual bool | characterDeform () |
| キャラクタ変形 | |
| virtual void | deform () |
| 変形 | |
| virtual void | skinningDeformP (const Matrix34 *positionDeformMatrixArray) |
| スキニング変形 | |
| virtual void | skinningDeformPN (const Matrix34 *positionDeformMatrixArray) |
| スキニング変形 | |
| virtual void | skinningDeformPN (const Matrix34 *positionDeformMatrixArray, const Matrix33 *normalDeformMatrixArray) |
| スキニング変形 | |
| virtual void | stitchingDeformP (const Matrix34 *positionDeformMatrixArray) |
| スティッチング変形 | |
| virtual void | stitchingDeformPN (const Matrix34 *positionDeformMatrixArray) |
| スティッチング変形 | |
| virtual void | stitchingDeformPN (const Matrix34 *positionDeformMatrixArray, const Matrix33 *normalDeformMatrixArray) |
| スティッチング変形 | |
| virtual bool | setupVertexBuffer () |
| 頂点バッファセットアップ | |
| virtual bool | createVertexDeclaration () |
| 頂点記述の構築 | |
| virtual bool | createVertexBuffer () |
| 頂点バッファの構築 | |
| virtual Direct3DVertexDeclaration * | getDeformedVertexDeclaration () |
| 変形頂点記述の取得 | |
| virtual int | getDeformedVertexSize () |
| 変形頂点サイズの取得 | |
| virtual Direct3DVertexBuffer * | getDeformedVertexBuffer () |
| 変形頂点バッファの構築 | |
Protected Attributes | |
| Direct3DVertexDeclaration * | vertexDeclaration_ |
| 頂点記述 | |
| Direct3DVertexBuffer * | vertexBuffer_ |
| 頂点バッファ | |
| int | vertexSize_ |
| 頂点サイズ | |
| int | deformedVertexCount_ |
| 変形済み頂点数 | |
| Vector3 * | deformedPosition_ |
| 変形済み位置 | |
| Vector3 * | deformedNormal_ |
| 変形済み法線 | |
Friends | |
| class | MeshManager |
デフォームはソフトウェアで行う。理由は以下に。 MaxVertexBlendMatrixIndexのハードウェア対応数が少ない。 この点はVS3とかで行列テクスチャにアクセスできれば解決するかも。 マルチパスレンダリング(影等)を行う際に複数回デフォームを行うことになる。
Definition at line 41 of file CharacterMesh.h.
|
||||||||||||
|
コンストラクタ
Definition at line 37 of file CharacterMesh.cpp. References NULL. |
|
|
キャラクタ変形
Reimplemented from Lamp::Mesh. Definition at line 71 of file CharacterMesh.cpp. References createVertexBuffer(), createVertexDeclaration(), deform(), NULL, setupVertexBuffer(), vertexBuffer_, and vertexDeclaration_. |
|
|
コピー
Implements Lamp::Mesh. Definition at line 61 of file CharacterMesh.h. References copyCharacterMesh(). |
|
|
キャラクタメッシュのコピー
Definition at line 52 of file CharacterMesh.cpp. References Lamp::Mesh::copyMeshValue(), Lamp::MeshManager::createCharacterMesh(), Lamp::Scene::getMeshManager(), Lamp::SceneObject::name_, Lamp::SceneObjectManagerTemplate< Mesh >::rename(), and Lamp::SceneObject::scene_. Referenced by copy(). |
|
|
頂点バッファの構築
Definition at line 381 of file CharacterMesh.cpp. References Assert, Lamp::RenderingDevice::createDynamicVertexBuffer(), createVertexDeclaration(), Lamp::Mesh::getVertexCount(), NULL, u_int, vertexBuffer_, vertexDeclaration_, and vertexSize_. Referenced by characterDeform(), and getDeformedVertexBuffer(). |
|
|
頂点記述の構築
Definition at line 369 of file CharacterMesh.cpp. References Assert, Lamp::RenderingDevice::createVertexDeclaration(), Lamp::Mesh::getTexCoordSetCount(), Lamp::Mesh::getTexCoordTypeArray(), Lamp::Mesh::hasColor(), Lamp::Mesh::hasNormal(), NULL, vertexDeclaration_, and vertexSize_. Referenced by characterDeform(), createVertexBuffer(), getDeformedVertexDeclaration(), and getDeformedVertexSize(). |
|
|
変形頂点バッファの構築
Reimplemented from Lamp::Mesh. Definition at line 219 of file CharacterMesh.h. References createVertexBuffer(), Direct3DVertexBuffer, NULL, and vertexBuffer_. |
|
|
変形頂点記述の取得
Reimplemented from Lamp::Mesh. Definition at line 201 of file CharacterMesh.h. References createVertexDeclaration(), Direct3DVertexDeclaration, NULL, and vertexDeclaration_. |
|
|
変形頂点サイズの取得
Reimplemented from Lamp::Mesh. Definition at line 210 of file CharacterMesh.h. References createVertexDeclaration(), NULL, vertexDeclaration_, and vertexSize_. |
|
|
キャラクタメッシュかどうか
Reimplemented from Lamp::Mesh. Definition at line 53 of file CharacterMesh.h. |
|
|
法線の正規化を必要とするか
Reimplemented from Lamp::Mesh. Definition at line 77 of file CharacterMesh.h. |
|
|
頂点バッファセットアップ
Definition at line 352 of file CharacterMesh.cpp. References Assert, deformedNormal_, deformedPosition_, Lamp::Mesh::getColorArray(), Lamp::Mesh::getTexCoordArray(), Lamp::Mesh::getTexCoordSetCount(), Lamp::Mesh::getTexCoordTypeArray(), Lamp::Mesh::getVertexCount(), NULL, vertexBuffer_, vertexDeclaration_, vertexSize_, and Lamp::RenderingDevice::writeDynamicVertexBuffer(). Referenced by characterDeform(). |
|
|
スキニング変形
Definition at line 137 of file CharacterMesh.cpp. References deformedPosition_, Lamp::Mesh::getBoneIndexArray(), Lamp::Mesh::getBonesPerVertex(), Lamp::Mesh::getPositionArray(), Lamp::Mesh::getVertexCount(), Lamp::Mesh::getWeightArray(), Lamp::Mesh::getWeightsPerVertex(), and u_char. Referenced by deform(). |
|
||||||||||||
|
スキニング変形
Definition at line 228 of file CharacterMesh.cpp. References deformedNormal_, deformedPosition_, Lamp::Mesh::getBoneIndexArray(), Lamp::Mesh::getBonesPerVertex(), Lamp::Mesh::getNormalArray(), Lamp::Mesh::getPositionArray(), Lamp::Mesh::getVertexCount(), Lamp::Mesh::getWeightArray(), Lamp::Mesh::getWeightsPerVertex(), Lamp::Mesh::hasNormal(), and u_char. |
|
|
スキニング変形
Definition at line 177 of file CharacterMesh.cpp. References deformedNormal_, deformedPosition_, Lamp::Mesh::getBoneIndexArray(), Lamp::Mesh::getBonesPerVertex(), Lamp::Mesh::getNormalArray(), Lamp::Mesh::getPositionArray(), Lamp::Mesh::getVertexCount(), Lamp::Mesh::getWeightArray(), Lamp::Mesh::getWeightsPerVertex(), Lamp::Matrix34::multiply33(), and u_char. Referenced by deform(). |
|
|
スティッチング変形
Definition at line 286 of file CharacterMesh.cpp. References deformedPosition_, Lamp::Mesh::getBoneIndexArray(), Lamp::Mesh::getPositionArray(), Lamp::Mesh::getVertexCount(), and u_char. Referenced by deform(). |
|
||||||||||||
|
スティッチング変形
Definition at line 325 of file CharacterMesh.cpp. References deformedNormal_, deformedPosition_, Lamp::Mesh::getBoneIndexArray(), Lamp::Mesh::getNormalArray(), Lamp::Mesh::getPositionArray(), Lamp::Mesh::getVertexCount(), and u_char. |
|
|
スティッチング変形
Definition at line 302 of file CharacterMesh.cpp. References deformedNormal_, deformedPosition_, Lamp::Mesh::getBoneIndexArray(), Lamp::Mesh::getNormalArray(), Lamp::Mesh::getPositionArray(), Lamp::Mesh::getVertexCount(), Lamp::Matrix34::multiply33(), and u_char. Referenced by deform(). |
|
||||||||||||||||||||
|
走査
Reimplemented from Lamp::Mesh. Definition at line 62 of file CharacterMesh.cpp. References Lamp::Mesh::isGlobalEnabled(), SafeRelease, and vertexBuffer_. |
1.3.2