TOYSTUDIO SDK
1.6.1.3
|
オブジェクト クラス [詳細]
#include <TaObject.h>
Public メソッド | |
TA_OBJECT_TYPE | GetType () const |
オブジェクトのタイプの取得 | |
LPCTSTR | GetTypeName () const |
オブジェクトのタイプ名の取得 | |
LPCTSTR | GetName () const |
名前の取得 | |
void | SetName (LPCTSTR pszName) |
名前のセット | |
UINT | GetTreeNameLength () const |
階層名の長さを取得 | |
void | GetTreeName (LPTSTR pszTreeName) const |
階層名を取得 | |
BOOL | GetVisible () const |
オブジェクトの表示状態の取得 | |
void | SetVisible (BOOL bVisible, BOOL bUpdateGraphics=FALSE) |
オブジェクトの表示状態のセット | |
BOOL | GetLocked () const |
オブジェクトの編集不可状態の取得 | |
void | SetLocked (BOOL bLocked) |
オブジェクトの編集不可状態のセット | |
BOOL | GetSlerped () const |
アニメーションの回転で球面線形補間するかどうかの状態を取得 | |
void | SetSlerped (BOOL bSlerped) |
アニメーションの回転で球面線形補間するかどうかの状態をセット | |
BOOL | GetAngularShaded () |
面の角度でスムーズ/フラット シェーディングが設定されるかどうかを取得 | |
void | SetAngularShaded (BOOL bAngularShaded, BOOL bUpdateGeometry=FALSE) |
面の角度でスムーズ/フラット シェーディングが設定されるかどうかをセット | |
float | GetSmoothAngle () |
スムーズ シェーディングされる最大の面の角度を取得 | |
void | SetSmoothAngle (float SmoothAngle, BOOL bUpdateGeometry=FALSE) |
スムーズ シェーディングされる最大の面の角度をセット | |
TA_EULER_ORDER_TYPE | GetEulerOrder () const |
オイラー角の回転順序の取得 | |
void | SetEulerOrder (TA_EULER_ORDER_TYPE EulerOrder) |
オイラー角の回転順序のセット | |
TA_VECTOR | GetPivot () const |
ピボットの取得 | |
void | SetPivot (const TA_VECTOR &Pivot) |
ピボットのセット | |
TA_VECTOR | GetScale () const |
スケールの取得 | |
void | SetScale (const TA_VECTOR &Scale) |
スケールのセット | |
TA_VECTOR | GetShear () const |
せん断の取得 | |
void | SetShear (const TA_VECTOR &Shear) |
せん断のセット | |
TA_QUAT | GetRotate () const |
回転クォータニオンの取得 | |
void | SetRotate (const TA_QUAT &Rotate, BOOL bResetAngle=TRUE) |
回転クォータニオンのセット | |
TA_VECTOR | GetAngle () const |
オイラー角の取得 | |
void | SetAngle (const TA_VECTOR &Angle) |
オイラー角のセット | |
TA_VECTOR | GetTranslate () const |
移動の取得 | |
void | SetTranslate (const TA_VECTOR &Translate) |
移動のセット | |
void | GetTransform (TA_MATRIX &Transform, BOOL bLeftHand=FALSE) const |
変換行列の取得 | |
void | SetTransform (const TA_MATRIX &Transform, BOOL bShear=FALSE, BOOL bLeftHand=FALSE) |
変換行列のセット | |
void | GetWorldTransform (TA_MATRIX &Transform, BOOL bLeftHand=FALSE) const |
ワールド変換行列の取得 | |
UINT | GetBoneCount () const |
ボーン数の取得 | |
BOOL | GetBones (CTaObject *pBones[]) const |
ボーン リストの取得 | |
void | SetBones (CTaObject *const pBones[], UINT nCount) |
ボーン リストのセット | |
BOOL | GetSkinBindTransform (TA_MATRIX &Transform) const |
スキンのバインド時変換行列の取得 | |
void | SetSkinBindTransform (const TA_MATRIX &Transform) |
スキンのバインド時変換行列のセット | |
BOOL | GetBoneBindTransforms (TA_MATRIX Transforms[]) const |
ボーンのバインド時変換行列リストの取得 | |
void | SetBoneBindTransforms (const TA_MATRIX Transforms[], UINT nCount) |
ボーンのバインド時変換行列リストのセット | |
UINT | GetBindPoseObjectCount () const |
バインド ポーズの要素数を取得 | |
BOOL | GetBindPose (CTaObject *pObjects[], TA_VECTOR Translates[], TA_VECTOR Angles[], TA_VECTOR Scales[], TA_VECTOR Shears[]) const |
バインド ポーズを取得 | |
void | SetBindPose (CTaObject *const pObjects[], const TA_VECTOR Translates[], const TA_VECTOR Angles[], const TA_VECTOR Scales[], const TA_VECTOR Shears[], UINT nCount) |
バインド ポーズをセット | |
void | ClearBones () |
ボーン関連情報のクリア | |
CTaObject * | GetParent () const |
親オブジェクトの取得 | |
CTaObject * | GetRootModel () const |
ルート モデルを取得 | |
UINT | GetChildCount () const |
子オブジェクト数の取得 | |
CTaObject * | GetChild (UINT nIndex) const |
インデックスの子オブジェクトの取得 | |
UINT | GetChildIndex (const CTaObject *pChild) const |
子オブジェクトのインデックス位置を取得 | |
void | AddChild (CTaObject *pChild) |
子オブジェクトを追加 | |
BOOL | InsertChild (UINT nIndex, CTaObject *pChild) |
子オブジェクトをインデックス位置に挿入 | |
BOOL | RemoveChild (CTaObject *pChild) |
子オブジェクトを取り除く | |
BOOL | DeleteChild (CTaObject *pChild) |
子オブジェクトを削除する | |
UINT | GetIndexCount () const |
ルートからのインデックス リストのサイズを取得 | |
UINT | GetIndices (UINT Indices[]) const |
ルートからのインデックス リストを取得 | |
CTaObject * | Find (const UINT Indices[], UINT nCount) const |
インデックス リストのオブジェクトの検索 | |
BOOL | Insert (const UINT Indices[], UINT nCount, CTaObject *pObject) |
インデックス リスト位置にオブジェクトを挿入 | |
CTaObject * | FindTreeName (LPCTSTR pszTreeName) const |
階層名のオブジェクトの検索 | |
UINT | GetVertexCount () const |
頂点数の取得 | |
void | GetVertexPositions (TA_VECTOR Positions[]) const |
頂点の位置リストの取得 | |
void | SetVertexPositions (const TA_VECTOR Positions[]) |
頂点の位置リストのセット | |
void | AddVertex (const TA_VECTOR &Position) |
頂点の追加 | |
void | AddVertices (const TA_VECTOR Positions[], UINT nCount) |
複数頂点の追加 | |
BOOL | HasVertexBone () const |
頂点がボーン データを含むかどうか | |
BOOL | GetVertexBones (BYTE *const pIndices[], float *const pWeights[]) const |
頂点のボーン データを取得 | |
BOOL | SetVertexBones (const BYTE *const pIndices[], const float *const pWeights[]) |
頂点のボーン データをセット | |
UINT | GetFaceCount () const |
面数の取得 | |
void | GetFaceVertexCounts (UINT Counts[]) const |
面の頂点数リストの取得 | |
void | GetFaceVertexIndices (int *const pIndices[]) const |
面の頂点インデックス リストの取得 | |
void | GetFaceMaterials (CTaMaterial *pMaterials[]) const |
面のマテリアル リストの取得 | |
void | SetFaceMaterials (CTaMaterial *const pMaterials[]) |
面のマテリアル リストのセット | |
void | GetFaceNormals (TA_VECTOR Normals[]) const |
面の法線ベクトル リストの取得 | |
void | GetFaceVertexFlatShades (BOOL *const pFlatShades[]) const |
面の頂点のフラット シェーディング フラグ リストの取得 | |
void | SetFaceVertexFlatShades (const BOOL *const pFlatShades[]) |
面の頂点のフラット シェーディング フラグ リストのセット | |
void | GetFaceVertexColors (TA_COLOR *const pColors[]) const |
面の頂点カラー リストの取得 | |
void | SetFaceVertexColors (const TA_COLOR *const pColors[]) |
面の頂点カラー リストのセット | |
BOOL | HasFaceVertexUV () const |
面が有効なUV値を持っているか | |
void | GetFaceVertexUVs (TA_VECTOR_2D *const pUVs[]) const |
面の頂点のUVリストの取得 | |
void | SetFaceVertexUVs (const TA_VECTOR_2D *const pUVs[]) |
面の頂点のUVリストのセット | |
void | GetFaceVertexNormals (TA_VECTOR *const pNormals[]) const |
面の頂点の法線ベクトル リストの取得 | |
void | AddFace (const int Indices[], UINT nCount) |
面の追加 | |
void | AddFaces (const int *const pIndices[], const UINT Counts[], UINT nCount) |
複数の面の追加 | |
void | CleanUpMesh () |
メッシュの不正な面や頂点のクリーンアップ | |
void | UpdateMeshTopology () |
メッシュの接続関係の更新 | |
void | UpdateMeshNormals () |
メッシュの法線ベクトルの更新 | |
void | UpdateBoundBox () |
バウンディング ボックスの更新 | |
void | UpdateGraphics () |
グラフィックスの更新 | |
void | UpdateGeometry () |
ジオメトリの更新 | |
ジョイント用メソッド | |
オブジェクトのタイプが TA_OBJECT_JOINT の場合にのみ有効なメンバー関数です。 | |
BOOL | GetJointAreaEnabled () const |
ジョイントの影響範囲の有効状態の取得 | |
void | SetJointAreaEnabled (BOOL bEnabled) |
ジョイントの影響範囲の有効状態のセット | |
BOOL | GetJointParentScaleCompensated () const |
ジョイントの親ジョイントのスケールの補正状態の取得 | |
void | SetJointParentScaleCompensated (BOOL bCompensated) |
ジョイントの親ジョイントのスケールの補正状態のセット | |
カメラ用メソッド | |
オブジェクトのタイプが TA_OBJECT_CAMERA の場合にのみ有効なメンバー関数です。 | |
TA_PROJECTION_TYPE | GetCameraProjectionType () const |
カメラの射影タイプの取得 | |
void | SetCameraProjectionType (TA_PROJECTION_TYPE ProjectionType) |
カメラの射影タイプのセット | |
float | GetCameraViewAngle () const |
カメラのY方向視野角の取得 | |
void | SetCameraViewAngle (float ViewAngle) |
カメラのY方向視野角のセット | |
float | GetCameraViewHeight () const |
カメラの視野高さの取得 | |
void | SetCameraViewHeight (float ViewHeight) |
カメラの視野高さのセット | |
ライト用メソッド | |
オブジェクトのタイプが TA_OBJECT_LIGHT の場合にのみ有効なメンバー関数です。 | |
BOOL | GetLightActive () const |
ライトのアクティブ状態の取得 | |
void | SetLightActive (BOOL bActive) |
ライトのアクティブ状態のセット | |
TA_VECTOR | GetLightColor () const |
ライト カラーの取得 | |
void | SetLightColor (const TA_VECTOR &Color) |
ライト カラーのセット | |
float | GetLightDiffuse () const |
ライトの拡散光の取得 | |
void | SetLightDiffuse (float Diffuse) |
ライトの拡散光のセット | |
float | GetLightAmbient () const |
ライトの環境光の取得 | |
void | SetLightAmbient (float Ambient) |
ライトの環境光のセット | |
float | GetLightSpecular () const |
ライトの反射光の取得 | |
void | SetLightSpecular (float Specular) |
ライトの反射光のセット | |
TA_LIGHT_TYPE | GetLightType () const |
ライト タイプの取得 | |
void | SetLightType (TA_LIGHT_TYPE LightType) |
ライト タイプのセット | |
TA_DECAY_TYPE | GetLightDecayType () const |
ライトの減衰タイプの取得 | |
void | SetLightDecayType (TA_DECAY_TYPE DecayType) |
ライトの減衰タイプのセット | |
float | GetLightIntensity () const |
ライトの強度の取得 | |
void | SetLightIntensity (float Intensity) |
ライトの強度のセット | |
float | GetLightRange () const |
ライトの有効距離の取得 | |
void | SetLightRange (float Range) |
ライトの有効距離のセット | |
float | GetLightConeAngle () const |
ライトの円錐角度の取得 | |
void | SetLightConeAngle (float ConeAngle) |
ライトの円錐角度のセット | |
float | GetLightPenumbraAngle () const |
ライトの周縁部角度の取得 | |
void | SetLightPenumbraAngle (float PenumbraAngle) |
ライトの周縁部角度のセット | |
float | GetLightFalloff () const |
ライトの周縁部減衰率の取得 | |
void | SetLightFalloff (float Falloff) |
ライトの周縁部減衰率のセット | |
モデル用メソッド | |
オブジェクトのタイプが TA_OBJECT_MODEL の場合にのみ有効なメンバー関数です。 | |
UINT | GetModelMaterialCount () const |
マテリアル数の取得 | |
void | UpdateModelMaterialIndices () |
各マテリアルのインデックスの更新 | |
BOOL | GetModelMaterials (CTaMaterial *pMaterials[]) const |
マテリアルリストの取得 | |
CTaMaterial * | GetModelMaterial (UINT nIndex) const |
インデックスのマテリアルの取得 | |
UINT | GetModelMaterialIndex (const CTaMaterial *pMaterial) const |
マテリアルのインデックスの取得 | |
CTaMaterial * | GetModelCurMaterial () const |
カレント マテリアルの取得 | |
void | SetModelCurMaterial (CTaMaterial *pMaterial) |
カレント マテリアルのセット | |
void | AddModelMaterial (CTaMaterial *pMaterial) |
マテリアルの追加 | |
BOOL | InsertModelMaterial (UINT nIndex, CTaMaterial *pMaterial) |
マテリアルを指定インデックス位置に挿入 | |
BOOL | DeleteModelMaterial (CTaMaterial *pMaterial) |
マテリアルを削除 | |
BOOL | DeleteAllModelMaterials () |
全てのマテリアルを削除 | |
UINT | GetModelAnimCount () const |
アニメーション数の取得 | |
void | UpdateModelAnimIndices () |
各アニメーションのインデックスの更新 | |
BOOL | GetModelAnims (CTaAnim *pAnims[]) const |
アニメーションリストの取得 | |
CTaAnim * | GetModelAnim (UINT nIndex) const |
インデックスのアニメーションの取得 | |
UINT | GetModelAnimIndex (const CTaAnim *pAnim) const |
アニメーションのインデックスを取得 | |
CTaAnim * | GetModelCurAnim () const |
カレント アニメーションの取得 | |
void | SetModelCurAnim (CTaAnim *pAnim) |
カレント アニメーションをセット | |
void | AddModelAnim (CTaAnim *pAnim) |
アニメーションの追加 | |
BOOL | InsertModelAnim (UINT nIndex, CTaAnim *pAnim) |
インデックス位置にアニメーションを挿入 | |
Private メソッド | |
CTaObject () | |
コンストラクタ(使用不可) | |
~CTaObject () | |
デストラクタ(使用不可) | |
オブジェクト クラス
|
inlineprivate |
コンストラクタ(使用不可)
コンストラクタを使用してはいけません。 インスタンスの作成には TaCreateObject() を利用してください。
|
inlineprivate |
デストラクタ(使用不可)
デストラクタを使用してはいけません。 インスタンスの削除には TaDeleteObject() を利用してください。
void CTaObject::AddChild | ( | CTaObject * | pChild | ) |
子オブジェクトを追加
pChild | 子オブジェクト |
void CTaObject::AddFace | ( | const int | Indices[], |
UINT | nCount | ||
) |
面の追加
Indices | 頂点インデックスのリスト |
nCount | リストの要素数 |
void CTaObject::AddFaces | ( | const int *const | pIndices[], |
const UINT | Counts[], | ||
UINT | nCount | ||
) |
複数の面の追加
pIndices | 面ごとの頂点インデックスのリスト |
Counts | 面ごとの頂点数 |
nCount | 追加する面の数 |
void CTaObject::AddModelAnim | ( | CTaAnim * | pAnim | ) |
アニメーションの追加
pAnim | アニメーション |
void CTaObject::AddModelMaterial | ( | CTaMaterial * | pMaterial | ) |
マテリアルの追加
pMaterial | マテリアル |
void CTaObject::AddVertex | ( | const TA_VECTOR & | Position | ) |
頂点の追加
Position | 頂点の位置 |
void CTaObject::AddVertices | ( | const TA_VECTOR | Positions[], |
UINT | nCount | ||
) |
複数頂点の追加
Positions | 頂点の位置リスト |
nCount | 要素数 |
void CTaObject::CleanUpMesh | ( | ) |
メッシュの不正な面や頂点のクリーンアップ
頂点数の足りない不正な面や、全く参照されていない不要な頂点などを削除します。
void CTaObject::ClearBones | ( | ) |
ボーン関連情報のクリア
全てのボーン関連情報をクリアします。 頂点のボーン インデックス、ウェイト情報もクリアされます。
BOOL CTaObject::DeleteAllModelMaterials | ( | ) |
全てのマテリアルを削除
BOOL CTaObject::DeleteChild | ( | CTaObject * | pChild | ) |
子オブジェクトを削除する
pChild | 子オブジェクト |
BOOL CTaObject::DeleteModelMaterial | ( | CTaMaterial * | pMaterial | ) |
マテリアルを削除
pMaterial | マテリアル |
CTaObject* CTaObject::Find | ( | const UINT | Indices[], |
UINT | nCount | ||
) | const |
インデックス リストのオブジェクトの検索
このオブジェクトから、子のインデックス リストで指定されるオブジェクトを取得します。 リストが空の場合、このオブジェクト自体を返します。
Indices | インデックス リスト |
nCount | インデックス リストの要素数 |
CTaObject* CTaObject::FindTreeName | ( | LPCTSTR | pszTreeName | ) | const |
階層名のオブジェクトの検索
このオブジェクトから、階層名で指定されるオブジェクトを取得します。 階層名の先頭はこのオブジェクトの名前である必要があります。
pszTreeName | 階層名 |
TA_VECTOR CTaObject::GetAngle | ( | ) | const |
オイラー角の取得
BOOL CTaObject::GetAngularShaded | ( | ) |
面の角度でスムーズ/フラット シェーディングが設定されるかどうかを取得
この設定に応じて UpdateMeshNormals() の挙動が変化します。
BOOL CTaObject::GetBindPose | ( | CTaObject * | pObjects[], |
TA_VECTOR | Translates[], | ||
TA_VECTOR | Angles[], | ||
TA_VECTOR | Scales[], | ||
TA_VECTOR | Shears[] | ||
) | const |
バインド ポーズを取得
バインド ポーズでのスキン、ボーンおよびそれらの全ての親オブジェクトを含むリストです。
pObjects | オブジェクトのリスト |
Translates | 移動のリスト |
Angles | オイラー角のリスト |
Scales | スケールのリスト |
Shears | せん断のリスト |
UINT CTaObject::GetBindPoseObjectCount | ( | ) | const |
バインド ポーズの要素数を取得
BOOL CTaObject::GetBoneBindTransforms | ( | TA_MATRIX | Transforms[] | ) | const |
ボーンのバインド時変換行列リストの取得
Transforms | バインド ポーズにおけるボーンのワールド変換行列リスト |
UINT CTaObject::GetBoneCount | ( | ) | const |
ボーン数の取得
BOOL CTaObject::GetBones | ( | CTaObject * | pBones[] | ) | const |
ボーン リストの取得
pBones | ボーンのリスト |
TA_PROJECTION_TYPE CTaObject::GetCameraProjectionType | ( | ) | const |
カメラの射影タイプの取得
float CTaObject::GetCameraViewAngle | ( | ) | const |
float CTaObject::GetCameraViewHeight | ( | ) | const |
CTaObject* CTaObject::GetChild | ( | UINT | nIndex | ) | const |
インデックスの子オブジェクトの取得
nIndex | インデックス |
UINT CTaObject::GetChildCount | ( | ) | const |
子オブジェクト数の取得
UINT CTaObject::GetChildIndex | ( | const CTaObject * | pChild | ) | const |
子オブジェクトのインデックス位置を取得
pChild | 子オブジェクト |
TA_EULER_ORDER_TYPE CTaObject::GetEulerOrder | ( | ) | const |
オイラー角の回転順序の取得
return 回転順序
UINT CTaObject::GetFaceCount | ( | ) | const |
面数の取得
void CTaObject::GetFaceMaterials | ( | CTaMaterial * | pMaterials[] | ) | const |
面のマテリアル リストの取得
pMaterials | 面のマテリアルのリスト |
void CTaObject::GetFaceNormals | ( | TA_VECTOR | Normals[] | ) | const |
面の法線ベクトル リストの取得
Normals | 面の法線ベクトルのリスト |
void CTaObject::GetFaceVertexColors | ( | TA_COLOR *const | pColors[] | ) | const |
面の頂点カラー リストの取得
pColors | 面ごとの頂点カラーの配列 |
void CTaObject::GetFaceVertexCounts | ( | UINT | Counts[] | ) | const |
面の頂点数リストの取得
Counts | 面の頂点数のリスト |
void CTaObject::GetFaceVertexFlatShades | ( | BOOL *const | pFlatShades[] | ) | const |
面の頂点のフラット シェーディング フラグ リストの取得
pFlatShades | 面ごとフラット シェーディング フラグのリスト |
void CTaObject::GetFaceVertexIndices | ( | int *const | pIndices[] | ) | const |
面の頂点インデックス リストの取得
pIndices | 面ごとの頂点インデックスの配列 |
void CTaObject::GetFaceVertexNormals | ( | TA_VECTOR *const | pNormals[] | ) | const |
面の頂点の法線ベクトル リストの取得
pNormals | 面の頂点ごとのUV座標リスト |
void CTaObject::GetFaceVertexUVs | ( | TA_VECTOR_2D *const | pUVs[] | ) | const |
面の頂点のUVリストの取得
pUVs | 面の頂点ごとのUV座標リスト |
UINT CTaObject::GetIndexCount | ( | ) | const |
ルートからのインデックス リストのサイズを取得
ルート モデルからの、子オブジェクトのインデックス リストの要素数を取得します。
UINT CTaObject::GetIndices | ( | UINT | Indices[] | ) | const |
ルートからのインデックス リストを取得
ルート モデルからの、子オブジェクトのインデックス リストを取得します。
Indices | インデックス リスト |
BOOL CTaObject::GetJointAreaEnabled | ( | ) | const |
ジョイントの影響範囲の有効状態の取得
BOOL CTaObject::GetJointParentScaleCompensated | ( | ) | const |
ジョイントの親ジョイントのスケールの補正状態の取得
BOOL CTaObject::GetLightActive | ( | ) | const |
ライトのアクティブ状態の取得
float CTaObject::GetLightAmbient | ( | ) | const |
ライトの環境光の取得
TA_VECTOR CTaObject::GetLightColor | ( | ) | const |
ライト カラーの取得
float CTaObject::GetLightConeAngle | ( | ) | const |
TA_DECAY_TYPE CTaObject::GetLightDecayType | ( | ) | const |
float CTaObject::GetLightDiffuse | ( | ) | const |
ライトの拡散光の取得
float CTaObject::GetLightFalloff | ( | ) | const |
ライトの周縁部減衰率の取得
ライト タイプが TA_LIGHT_SPOT の場合に使用します。 スポット ライトの周縁部における明るさの減衰率です。1の場合は明るさが周縁部全体でリニアに減衰します。 1より大きい場合は周縁部の外周付近で強く減衰し、1より小さい場合は周縁部の内周付近で強く減衰します。
float CTaObject::GetLightIntensity | ( | ) | const |
ライトの強度の取得
この値がマイナスの場合、光が当たる範囲が暗くなります。
float CTaObject::GetLightPenumbraAngle | ( | ) | const |
ライトの周縁部角度の取得
ライト タイプが TA_LIGHT_SPOT の場合に使用します。 スポットライトの明るさが減衰する範囲の角度です。プラスの場合は円錐角度の外側、 マイナスの場合は内側になります。
float CTaObject::GetLightRange | ( | ) | const |
float CTaObject::GetLightSpecular | ( | ) | const |
ライトの反射光の取得
TA_LIGHT_TYPE CTaObject::GetLightType | ( | ) | const |
ライト タイプの取得
BOOL CTaObject::GetLocked | ( | ) | const |
オブジェクトの編集不可状態の取得
CTaAnim* CTaObject::GetModelAnim | ( | UINT | nIndex | ) | const |
インデックスのアニメーションの取得
nIndex | インデックス |
UINT CTaObject::GetModelAnimCount | ( | ) | const |
アニメーション数の取得
UINT CTaObject::GetModelAnimIndex | ( | const CTaAnim * | pAnim | ) | const |
アニメーションのインデックスを取得
pAnim | アニメーション |
BOOL CTaObject::GetModelAnims | ( | CTaAnim * | pAnims[] | ) | const |
アニメーションリストの取得
pAnims | アニメーションリスト |
CTaAnim* CTaObject::GetModelCurAnim | ( | ) | const |
カレント アニメーションの取得
CTaMaterial* CTaObject::GetModelCurMaterial | ( | ) | const |
カレント マテリアルの取得
CTaMaterial* CTaObject::GetModelMaterial | ( | UINT | nIndex | ) | const |
インデックスのマテリアルの取得
nIndex | インデックス |
UINT CTaObject::GetModelMaterialCount | ( | ) | const |
マテリアル数の取得
UINT CTaObject::GetModelMaterialIndex | ( | const CTaMaterial * | pMaterial | ) | const |
マテリアルのインデックスの取得
pMaterial | マテリアル |
BOOL CTaObject::GetModelMaterials | ( | CTaMaterial * | pMaterials[] | ) | const |
マテリアルリストの取得
pMaterials | マテリアルのリスト |
LPCTSTR CTaObject::GetName | ( | ) | const |
名前の取得
CTaObject* CTaObject::GetParent | ( | ) | const |
親オブジェクトの取得
TA_VECTOR CTaObject::GetPivot | ( | ) | const |
ピボットの取得
CTaObject* CTaObject::GetRootModel | ( | ) | const |
TA_QUAT CTaObject::GetRotate | ( | ) | const |
回転クォータニオンの取得
TA_VECTOR CTaObject::GetScale | ( | ) | const |
スケールの取得
TA_VECTOR CTaObject::GetShear | ( | ) | const |
せん断の取得
XY(Y軸をX方向に引っ張る)、XZ(Z軸をX方向に引っ張る)、YZ(Z軸をY方向に引っ張る)の各値のベクトル。
BOOL CTaObject::GetSkinBindTransform | ( | TA_MATRIX & | Transform | ) | const |
スキンのバインド時変換行列の取得
Transform | バインド ポーズにおけるスキンのワールド変換行列 |
BOOL CTaObject::GetSlerped | ( | ) | const |
アニメーションの回転で球面線形補間するかどうかの状態を取得
float CTaObject::GetSmoothAngle | ( | ) |
スムーズ シェーディングされる最大の面の角度を取得
void CTaObject::GetTransform | ( | TA_MATRIX & | Transform, |
BOOL | bLeftHand = FALSE |
||
) | const |
変換行列の取得
ローカル変換行列を算出し、取得します。
Transform | オブジェクトの移動、回転、スケール、せん断等を含む変換行列。 |
bLeftHand | 左手座標系(Z軸反転)の行列を取得する場合はTRUE。 |
TA_VECTOR CTaObject::GetTranslate | ( | ) | const |
移動の取得
void CTaObject::GetTreeName | ( | LPTSTR | pszTreeName | ) | const |
階層名を取得
ルートからの階層名を取得します。
pszTreeName | 文字列用バッファー |
UINT CTaObject::GetTreeNameLength | ( | ) | const |
階層名の長さを取得
階層名のバイト数を取得します。
TA_OBJECT_TYPE CTaObject::GetType | ( | ) | const |
オブジェクトのタイプの取得
LPCTSTR CTaObject::GetTypeName | ( | ) | const |
オブジェクトのタイプ名の取得
BOOL CTaObject::GetVertexBones | ( | BYTE *const | pIndices[], |
float *const | pWeights[] | ||
) | const |
頂点のボーン データを取得
頂点の TA_MAX_VERTEX_BONE_COUNT 個のウェイトが全て0である場合をのぞき、 ウェイトの合計は1となります。
pIndices | 頂点ごとの TA_MAX_VERTEX_BONE_COUNT 個のボーン インデックスの配列 |
pWeights | 頂点ごとの TA_MAX_VERTEX_BONE_COUNT 個のボーン ウェイト配列 |
UINT CTaObject::GetVertexCount | ( | ) | const |
頂点数の取得
void CTaObject::GetVertexPositions | ( | TA_VECTOR | Positions[] | ) | const |
頂点の位置リストの取得
Positions | 頂点の位置リスト |
BOOL CTaObject::GetVisible | ( | ) | const |
オブジェクトの表示状態の取得
void CTaObject::GetWorldTransform | ( | TA_MATRIX & | Transform, |
BOOL | bLeftHand = FALSE |
||
) | const |
ワールド変換行列の取得
オブジェクトの階層をさかのぼって、ワールド変換行列を算出します。
Transform | オブジェクトの移動、回転、スケール、せん断等を含む変換行列。 |
bLeftHand | 左手座標系(Z軸反転)の行列を取得する場合はTRUE。 |
BOOL CTaObject::HasFaceVertexUV | ( | ) | const |
面が有効なUV値を持っているか
BOOL CTaObject::HasVertexBone | ( | ) | const |
頂点がボーン データを含むかどうか
BOOL CTaObject::Insert | ( | const UINT | Indices[], |
UINT | nCount, | ||
CTaObject * | pObject | ||
) |
インデックス リスト位置にオブジェクトを挿入
Indices | インデックスリスト |
nCount | インデックスリストの要素数 |
pObject | オブジェクト |
BOOL CTaObject::InsertChild | ( | UINT | nIndex, |
CTaObject * | pChild | ||
) |
子オブジェクトをインデックス位置に挿入
nIndex | インデックス |
pChild | 子オブジェクト |
BOOL CTaObject::InsertModelAnim | ( | UINT | nIndex, |
CTaAnim * | pAnim | ||
) |
インデックス位置にアニメーションを挿入
nIndex | インデックス |
pAnim | アニメーション |
BOOL CTaObject::InsertModelMaterial | ( | UINT | nIndex, |
CTaMaterial * | pMaterial | ||
) |
マテリアルを指定インデックス位置に挿入
nIndex | インデックス |
pMaterial | マテリアル |
BOOL CTaObject::RemoveChild | ( | CTaObject * | pChild | ) |
子オブジェクトを取り除く
子オブジェクト自体は削除されません。
pChild | 子オブジェクト |
void CTaObject::SetAngle | ( | const TA_VECTOR & | Angle | ) |
オイラー角のセット
回転順序に依存します。クォータニオンは更新されます。
Angle | オイラー角 |
void CTaObject::SetAngularShaded | ( | BOOL | bAngularShaded, |
BOOL | bUpdateGeometry = FALSE |
||
) |
面の角度でスムーズ/フラット シェーディングが設定されるかどうかをセット
この設定に応じて UpdateMeshNormals() の挙動が変化します。
bAngularShaded | 面の角度でスムーズ/フラット シェーディングが設定されるかどうか。 |
bUpdateGeometry | TRUEの場合、処理の最後に UpdateMeshNormals() および UpdateGeometry() が実行されます。 |
void CTaObject::SetBindPose | ( | CTaObject *const | pObjects[], |
const TA_VECTOR | Translates[], | ||
const TA_VECTOR | Angles[], | ||
const TA_VECTOR | Scales[], | ||
const TA_VECTOR | Shears[], | ||
UINT | nCount | ||
) |
バインド ポーズをセット
バインド ポーズでのスキン、ボーンおよびそれらの全ての親オブジェクトを含むリストです。
pObjects | オブジェクトのリスト |
Translates | 移動のリスト |
Angles | オイラー角のリスト |
Scales | スケールのリスト |
Shears | せん断のリスト |
nCount | バインドポーズの要素数 |
void CTaObject::SetBoneBindTransforms | ( | const TA_MATRIX | Transforms[], |
UINT | nCount | ||
) |
ボーンのバインド時変換行列リストのセット
Transforms | バインド ポーズにおけるボーンのワールド変換行列リスト |
nCount | リストの要素数 |
void CTaObject::SetBones | ( | CTaObject *const | pBones[], |
UINT | nCount | ||
) |
ボーン リストのセット
pBones | ボーンのリスト |
nCount | ボーンの数 |
void CTaObject::SetCameraProjectionType | ( | TA_PROJECTION_TYPE | ProjectionType | ) |
カメラの射影タイプのセット
ProjectionType | 射影タイプ |
void CTaObject::SetCameraViewAngle | ( | float | ViewAngle | ) |
void CTaObject::SetCameraViewHeight | ( | float | ViewHeight | ) |
void CTaObject::SetEulerOrder | ( | TA_EULER_ORDER_TYPE | EulerOrder | ) |
オイラー角の回転順序のセット
EulerOrder | 回転順序 |
void CTaObject::SetFaceMaterials | ( | CTaMaterial *const | pMaterials[] | ) |
面のマテリアル リストのセット
pMaterials | 面のマテリアルのリスト |
void CTaObject::SetFaceVertexColors | ( | const TA_COLOR *const | pColors[] | ) |
面の頂点カラー リストのセット
pColors | 面ごとの頂点カラーの配列 |
void CTaObject::SetFaceVertexFlatShades | ( | const BOOL *const | pFlatShades[] | ) |
面の頂点のフラット シェーディング フラグ リストのセット
pFlatShades | 面ごとのフラット シェーディング フラグのリスト |
void CTaObject::SetFaceVertexUVs | ( | const TA_VECTOR_2D *const | pUVs[] | ) |
面の頂点のUVリストのセット
pUVs | 面の頂点ごとのUV座標リスト |
void CTaObject::SetJointAreaEnabled | ( | BOOL | bEnabled | ) |
ジョイントの影響範囲の有効状態のセット
bEnabled | 影響範囲の有効状態 |
void CTaObject::SetJointParentScaleCompensated | ( | BOOL | bCompensated | ) |
ジョイントの親ジョイントのスケールの補正状態のセット
bCompensated | 親ジョイントのスケールの補正状態 |
void CTaObject::SetLightActive | ( | BOOL | bActive | ) |
ライトのアクティブ状態のセット
bActive | アクティブ状態 |
void CTaObject::SetLightAmbient | ( | float | Ambient | ) |
ライトの環境光のセット
Ambient | 0〜1の値 |
void CTaObject::SetLightColor | ( | const TA_VECTOR & | Color | ) |
ライト カラーのセット
Color | RGB各0〜1の値 |
void CTaObject::SetLightConeAngle | ( | float | ConeAngle | ) |
void CTaObject::SetLightDecayType | ( | TA_DECAY_TYPE | DecayType | ) |
void CTaObject::SetLightDiffuse | ( | float | Diffuse | ) |
ライトの拡散光のセット
Diffuse | 0〜1の値 |
void CTaObject::SetLightFalloff | ( | float | Falloff | ) |
ライトの周縁部減衰率のセット
ライト タイプが TA_LIGHT_SPOT の場合に使用します。 スポット ライトの周縁部における明るさの減衰率です。1の場合は明るさが周縁部全体でリニアに減衰します。 1より大きい場合は周縁部の外周付近で強く減衰し、1より小さい場合は周縁部の内周付近で強く減衰します。
Falloff | 周縁部減衰率 |
void CTaObject::SetLightIntensity | ( | float | Intensity | ) |
ライトの強度のセット
この値がマイナスの場合、光が当たる範囲が暗くなります。
Intensity | ライトの強度 |
void CTaObject::SetLightPenumbraAngle | ( | float | PenumbraAngle | ) |
ライトの周縁部角度のセット
ライト タイプが TA_LIGHT_SPOT の場合に使用します。 スポットライトの明るさが減衰する範囲の角度です。プラスの場合は円錐角度の外側、 マイナスの場合は内側になります。
PenumbraAngle | 周縁部角度(0〜180°) |
void CTaObject::SetLightRange | ( | float | Range | ) |
ライトの有効距離のセット
ライト タイプが TA_LIGHT_DIRECTIONAL 以外の場合に使用します。 ライトと頂点の距離がこの値を超えると照明が無効になります。
Range | ライトの有効距離 |
void CTaObject::SetLightSpecular | ( | float | Specular | ) |
ライトの反射光のセット
Specular | 0〜1の値 |
void CTaObject::SetLightType | ( | TA_LIGHT_TYPE | LightType | ) |
ライト タイプのセット
LightType | ライト タイプ |
void CTaObject::SetLocked | ( | BOOL | bLocked | ) |
オブジェクトの編集不可状態のセット
bLocked | 編集不可状態 |
void CTaObject::SetModelCurAnim | ( | CTaAnim * | pAnim | ) |
カレント アニメーションをセット
pAnim | アニメーション |
void CTaObject::SetModelCurMaterial | ( | CTaMaterial * | pMaterial | ) |
カレント マテリアルのセット
pMaterial | マテリアル |
void CTaObject::SetName | ( | LPCTSTR | pszName | ) |
名前のセット
pszName | オブジェクトの名前 |
void CTaObject::SetPivot | ( | const TA_VECTOR & | Pivot | ) |
ピボットのセット
Pivot | ピボット |
void CTaObject::SetRotate | ( | const TA_QUAT & | Rotate, |
BOOL | bResetAngle = TRUE |
||
) |
回転クォータニオンのセット
オイラー角は更新されます。
Rotate | クォータニオン |
bResetAngle | オイラー角をリセットする場合TRUE、現在のオイラー角に近い値をセットする場合FALSE。 |
void CTaObject::SetScale | ( | const TA_VECTOR & | Scale | ) |
スケールのセット
Scale | スケール |
void CTaObject::SetShear | ( | const TA_VECTOR & | Shear | ) |
せん断のセット
XY(Y軸をX方向に引っ張る)、XZ(Z軸をX方向に引っ張る)、YZ(Z軸をY方向に引っ張る)の各値のベクトル。
Shear | せん断 |
void CTaObject::SetSkinBindTransform | ( | const TA_MATRIX & | Transform | ) |
スキンのバインド時変換行列のセット
Transform | バインド ポーズにおけるスキンのワールド変換行列 |
void CTaObject::SetSlerped | ( | BOOL | bSlerped | ) |
アニメーションの回転で球面線形補間するかどうかの状態をセット
bSlerped | 球面線形補間するかどうか。 |
void CTaObject::SetSmoothAngle | ( | float | SmoothAngle, |
BOOL | bUpdateGeometry = FALSE |
||
) |
スムーズ シェーディングされる最大の面の角度をセット
SmoothAngle | スムーズ シェーディングされる最大の面の角度。 |
bUpdateGeometry | TRUEの場合、処理の最後に UpdateMeshNormals() および UpdateGeometry() が実行されます。 |
void CTaObject::SetTransform | ( | const TA_MATRIX & | Transform, |
BOOL | bShear = FALSE , |
||
BOOL | bLeftHand = FALSE |
||
) |
変換行列のセット
ローカル変換行列から、 オブジェクトの移動、回転、スケール、せん断のパラメータを算出して更新します。この関数により、 GetPivot() の値は(0,0,0)になり、 GetJointParentScaleCompensated() の値はFALSEになります。
Transform | オブジェクトの移動、回転、スケール、せん断等を含む変換行列。 |
bShear | せん断を算出する場合はTRUE。FALSEの場合、せん断は(0,0,0)になります。 |
bLeftHand | 左手座標系(Z軸反転)の行列の場合はTRUE。 |
void CTaObject::SetTranslate | ( | const TA_VECTOR & | Translate | ) |
移動のセット
Translate | 移動 |
BOOL CTaObject::SetVertexBones | ( | const BYTE *const | pIndices[], |
const float *const | pWeights[] | ||
) |
頂点のボーン データをセット
頂点の TA_MAX_VERTEX_BONE_COUNT 個のウェイトが全て0である場合をのぞき、 ウェイトの合計は1である必要があります。
pIndices | 頂点ごとの TA_MAX_VERTEX_BONE_COUNT 個のボーン インデックスの配列 |
pWeights | 頂点ごとの TA_MAX_VERTEX_BONE_COUNT 個のボーン ウェイト配列 |
void CTaObject::SetVertexPositions | ( | const TA_VECTOR | Positions[] | ) |
頂点の位置リストのセット
Positions | 頂点の位置リスト |
void CTaObject::SetVisible | ( | BOOL | bVisible, |
BOOL | bUpdateGraphics = FALSE |
||
) |
オブジェクトの表示状態のセット
bVisible | 表示状態 |
bUpdateGraphics | TRUEの場合、処理の最後に UpdateGraphics() が実行されます。 |
void CTaObject::UpdateBoundBox | ( | ) |
バウンディング ボックスの更新
全ての頂点を内包するように、バウンディング ボックスを更新します。 面を追加/削除した場合や頂点位置を変更した場合、必ずこの関数を呼び出す必要があります。
void CTaObject::UpdateGeometry | ( | ) |
ジオメトリの更新
描画用のDirect3Dポリゴン データの頂点位置を更新します。 頂点位置のみ変更した場合、 必ずこの関数を最後に呼び出す必要があります。
void CTaObject::UpdateGraphics | ( | ) |
グラフィックスの更新
描画用のDirect3Dポリゴン データを更新します。 オブジェクトの作成時、ボーン設定を変更した場合、面を追加/削除した場合などにおいて、 必ずこの関数を最後に呼び出す必要があります。カメラ タイプ(TA_OBJECT_CAMERA)や、 ライト タイプ(TA_OBJECT_LIGHT)のパラメータを変更した場合にも呼び出す必要があります。 ジョイント タイプ(TA_OBJECT_JOINT)の場合、 子ジョイント→親ジョイントの順に呼び出す必要があります。
void CTaObject::UpdateMeshNormals | ( | ) |
メッシュの法線ベクトルの更新
面の法線ベクトル、面の頂点の頂点の法線ベクトルを更新します。 面を追加/削除した場合や、頂点位置や面の頂点のフラット シェーディング フラグを変更した場合、必ずこの関数を呼び出す必要があります。 GetAngularShaded() がFALSEの場合、面の頂点のフラット シェーディング フラグに応じて 頂点の法線ベクトルが更新されます。TRUEの場合、面の頂点のフラット シェーディング フラグ自体が GetSmoothAngle() の値に応じて更新されてから、 頂点の法線ベクトルが更新されます。
void CTaObject::UpdateMeshTopology | ( | ) |
メッシュの接続関係の更新
面の接続関係を更新します。 面を追加/削除した場合、必ずこの関数を呼び出す必要があります。
void CTaObject::UpdateModelAnimIndices | ( | ) |
各アニメーションのインデックスの更新
CTaAnim::GetIndex() で取得されるアニメーションのインデックスが更新されます。
void CTaObject::UpdateModelMaterialIndices | ( | ) |
各マテリアルのインデックスの更新
CTaMaterial::GetIndex() で取得されるマテリアルのインデックスが更新されます。