モデル基礎クラス More...
#include "Gx.h"
Macros | |
#define | ROW_MAJOR 0 |
Functions | |
GX_FLAG_VALUE ("メッシュ単位の描画のカリングを行う", MODEL_ATTRIBUTE::MESH_CULLING_ENABLE) | |
GX_FLAG_VALUE ("メッシュ単位の影のカリングを行う", MODEL_ATTRIBUTE::MESH_SHADOW_CULLING_ENABLE) | |
GX_FLAG_VALUE ("メッシュ単位の反射パスのカリングを行う", MODEL_ATTRIBUTE::MESH_ENVIRONMENT_CULLING_ENABLE) | |
GX_FLAG_VALUE ("正射影で描画する", MODEL_ATTRIBUTE::ORTHO_RENDER) | |
GX_FLAG_VALUE ("モデル表示", DEVELOP_FLAG::SHOW_MODEL) | |
GX_FLAG_VALUE ("関節表示(詳細)", DEVELOP_FLAG::SHOW_JOINT_DETAIL) | |
GX_FLAG_VALUE ("関節表示(ライン)", DEVELOP_FLAG::SHOW_JOINT_LINE) | |
GX_FLAG_VALUE ("関節名表示", DEVELOP_FLAG::SHOW_JOINT_NAME) | |
GX_FLAG_VALUE ("関節インデックス表示", DEVELOP_FLAG::SHOW_JOINT_INDEX) | |
GX_FLAG_VALUE ("関節マトリクス表示", DEVELOP_FLAG::SHOW_JOINT_MATRIX) | |
GX_FLAG_VALUE ("メッシュバウンディングボックス表示", DEVELOP_FLAG::SHOW_MESH_BOUNDING_BOX) | |
GX_FLAG_VALUE ("メッシュ頂点法線表示", DEVELOP_FLAG::SHOW_MESH_VERTEX_NORMAL) | |
GX_FLAG_VALUE ("メッシュ頂点TBN表示", DEVELOP_FLAG::SHOW_MESH_VERTEX_TBN) | |
GX_FLAG_VALUE ("関節のハンドル操作", DEVELOP_FLAG::JOINT_HANDLE_CONTROL) | |
GX_FLAG_VALUE ("指定関節マトリクス表示", DEVELOP_FLAG::SHOW_SPECIFIED_JOINT_MATRIX) | |
GX_FLAG_VALUE ("指定マテリアル点滅", DEVELOP_FLAG::BLINK_SPECIFIED_MATERIAL) | |
GX_FLAG_VALUE ("指定メッシュ点滅", DEVELOP_FLAG::BLINK_SPECIFIED_MESH) | |
GX_FLAG_VALUE ("バウンディングスフィア表示", DEVELOP_FLAG::SHOW_BOUNDING_SPHERE) | |
GX_FLAG_VALUE ("開発用描画情報を更新", DEVELOP_FLAG::UPDATE_RENDER_SHADER_DEVELOP_INFO) | |
GX_FLAG_VALUE ("関節表示(常に手前)", DEVELOP_FLAG::DRAW_JOINT_OVERLAY) | |
_FLAG_NAME_GUI (_modelAttribute, "属性", MODEL_ATTRIBUTE) | |
_ENUM_NAME_ATTRIBUTE_GUI (_showLod, "表示LOD", GxProperty::ATTRIBUTE_READONLY|GxProperty::ATTRIBUTE_NOSERIALIZE, GxResModel::LOD) | |
_ENUM_NAME_GUI (_lodMode, "LODモード", GxResModel::LOD) | |
_RESOURCE_CUSTOM (GxResModel, "モデルリソース", &GxUnitModelBase::getPropertyModelResource, &GxUnitModelBase::setPropertyModelResource) | |
_RESOURCE_DYNAMIC (GxResMaterial, "マテリアルリソース", &GxUnitModelBase::getPropertyMaterialResource, &GxUnitModelBase::setPropertyMaterialResource, &GxUnitModelBase::getPropertyMaterialResourceCount, &GxUnitModelBase::setPropertyMaterialResourceCount) | |
_EVENT ("マテリアルリソースを全て0番と同じにする", &GxUnitModelBase::setMaterialResourceAll) | |
_DYNAMIC (GxProperty::TYPE::F32, "LOD距離", &GxUnitModelBase::getPropertyLODDistance, &GxUnitModelBase::setPropertyLODDistance, &GxUnitModelBase::getPropertyLODDistanceCount, &GxUnitModelBase::setPropertyLODDistanceCount) | |
_DYNAMIC_STRUCT_ATTRIBUTE (GxProperty::TYPE::STRUCT, GxJoint, "関節", &GxUnitModelBase::getPropertyJoint, &GxUnitModelBase::setPropertyJoint, &GxUnitModelBase::getPropertyJointCount, &GxUnitModelBase::setPropertyJointCount, GxProperty::ATTRIBUTE_NOSERIALIZE) | |
_DYNAMIC_ATTRIBUTE (GxProperty::TYPE::B32, "パーツフラグ", &GxUnitModelBase::getPropertyPartsFlag, &GxUnitModelBase::setPropertyPartsFlag, &GxUnitModelBase::getPropertyPartsFlagCount, &GxUnitModelBase::setPropertyPartsFlagCount, GxProperty::ATTRIBUTE_NOSERIALIZE) | |
_PARAM_NAME (_usePartsMatrixFlag, "パーツマトリクス使用") | |
_DYNAMIC_STRUCT_ATTRIBUTE (GxProperty::TYPE::MATRIXAFFINE, GxMatrixAffine, "パーツマトリクス", &GxUnitModelBase::getPropertyPartsMatrix, &GxUnitModelBase::setPropertyPartsMatrix, &GxUnitModelBase::getPropertyPartsFlagCount, &GxUnitModelBase::setPropertyPartsFlagCount, GxProperty::ATTRIBUTE_NOSERIALIZE) | |
_DYNAMIC_STRUCT_ATTRIBUTE (GxProperty::TYPE::STRUCT, GxRenderMaterial, "マテリアル", &GxUnitModelBase::getPropertyMaterial, &GxUnitModelBase::setPropertyMaterial, &GxUnitModelBase::getPropertyMaterialCount, &GxUnitModelBase::setPropertyMaterialCount, GxProperty::ATTRIBUTE_NOSERIALIZE) | |
_PAGE_BEGIN ("頂点データの精度") | |
_CUSTOM (GxProperty::TYPE::U32, "TEXCOORD", &GxUnitModelBase::getPropertyVertexDeclarationPrecisionTypeTexcoord, &GxUnitModelBase::setPropertyVertexDeclarationPrecisionTypeTexcoord) | |
_CUSTOM (GxProperty::TYPE::U32, "NORMAL", &GxUnitModelBase::getPropertyVertexDeclarationPrecisionTypeNormal, &GxUnitModelBase::setPropertyVertexDeclarationPrecisionTypeNormal) | |
_CUSTOM (GxProperty::TYPE::U32, "BINORMAL-TANGENT", &GxUnitModelBase::getPropertyVertexDeclarationPrecisionTypeBinormalTangent, &GxUnitModelBase::setPropertyVertexDeclarationPrecisionTypeBinormalTangent) | |
_EVENT ("設定保存&モデルを再コンバート", &GxUnitModelBase::eventConvertModel) | |
_PAGE_END () | |
_PAGE_BEGIN ("開発用") | |
_FLAG_NAME_ATTRIBUTE_GUI (_developFlag, "開発用フラグ", GxProperty::ATTRIBUTE_EXPAND|GxProperty::ATTRIBUTE_NOSERIALIZE, DEVELOP_FLAG) | |
_PARAM_NAME_ATTRIBUTE (_specifiedJointIndex, "指定関節インデックス", GxProperty::ATTRIBUTE_NOSERIALIZE) | |
_CUSTOM_ATTRIBUTE (GxProperty::TYPE::S32, "指定関節ID", &GxUnitModelBase::getPropertySpecifiedJointId, &GxUnitModelBase::setPropertySpecifiedJointId, GxProperty::ATTRIBUTE_NOSERIALIZE) | |
_PARAM_NAME_ATTRIBUTE (_specifiedMaterialIndex, "指定マテリアルインデックス", GxProperty::ATTRIBUTE_NOSERIALIZE) | |
_PARAM_NAME_ATTRIBUTE (_specifiedMeshIndex, "指定メッシュインデックス", GxProperty::ATTRIBUTE_NOSERIALIZE) | |
_PARAM_NAME_ATTRIBUTE (_jointFontSize, "関節表示文字サイズ", GxProperty::ATTRIBUTE_NOSERIALIZE) | |
_PARAM_NAME_ATTRIBUTE (_jointFontColor, "関節表示文字色", GxProperty::ATTRIBUTE_NOSERIALIZE) | |
_PAGE_BEGIN ("開発用描画情報") | |
_DYNAMIC_STRUCT_ATTRIBUTE (GxProperty::TYPE::STRUCT, GxRenderShaderDevInfo, "通常パス描画情報", &GxUnitModelBase::getPropertyRenderDevelopInfoNormal, &GxUnitModelBase::setPropertyRenderDevelopInfo, &GxUnitModelBase::getPropertyRenderDevelopInfoCount, &GxUnitModelBase::setPropertyRenderDevelopInfoCount, GxProperty::ATTRIBUTE_READONLY|GxProperty::ATTRIBUTE_NOSERIALIZE) | |
_DYNAMIC_STRUCT_ATTRIBUTE (GxProperty::TYPE::STRUCT, GxRenderShaderDevInfo, "シャドウパス描画情報", &GxUnitModelBase::getPropertyRenderDevelopInfoShadow, &GxUnitModelBase::setPropertyRenderDevelopInfo, &GxUnitModelBase::getPropertyRenderDevelopInfoCount, &GxUnitModelBase::setPropertyRenderDevelopInfoCount, GxProperty::ATTRIBUTE_READONLY|GxProperty::ATTRIBUTE_NOSERIALIZE) | |
_DYNAMIC_STRUCT_ATTRIBUTE (GxProperty::TYPE::STRUCT, GxRenderShaderDevInfo, "ポイントシャドウパス描画情報", &GxUnitModelBase::getPropertyRenderDevelopInfoPointShadow, &GxUnitModelBase::setPropertyRenderDevelopInfo, &GxUnitModelBase::getPropertyRenderDevelopInfoCount, &GxUnitModelBase::setPropertyRenderDevelopInfoCount, GxProperty::ATTRIBUTE_READONLY|GxProperty::ATTRIBUTE_NOSERIALIZE) | |
_DYNAMIC_STRUCT_ATTRIBUTE (GxProperty::TYPE::STRUCT, GxRenderShaderDevInfo, "プリZパス描画情報", &GxUnitModelBase::getPropertyRenderDevelopInfoPreZ, &GxUnitModelBase::setPropertyRenderDevelopInfo, &GxUnitModelBase::getPropertyRenderDevelopInfoCount, &GxUnitModelBase::setPropertyRenderDevelopInfoCount, GxProperty::ATTRIBUTE_READONLY|GxProperty::ATTRIBUTE_NOSERIALIZE) | |
_DYNAMIC_STRUCT_ATTRIBUTE (GxProperty::TYPE::STRUCT, GxRenderShaderDevInfo, "モーションブラーパス描画情報", &GxUnitModelBase::getPropertyRenderDevelopInfoMotionBlur, &GxUnitModelBase::setPropertyRenderDevelopInfo, &GxUnitModelBase::getPropertyRenderDevelopInfoCount, &GxUnitModelBase::setPropertyRenderDevelopInfoCount, GxProperty::ATTRIBUTE_READONLY|GxProperty::ATTRIBUTE_NOSERIALIZE) | |
_DYNAMIC_STRUCT_ATTRIBUTE (GxProperty::TYPE::STRUCT, GxRenderShaderDevInfo, "反射パス描画情報", &GxUnitModelBase::getPropertyRenderDevelopInfoEnvironment, &GxUnitModelBase::setPropertyRenderDevelopInfo, &GxUnitModelBase::getPropertyRenderDevelopInfoCount, &GxUnitModelBase::setPropertyRenderDevelopInfoCount, GxProperty::ATTRIBUTE_READONLY|GxProperty::ATTRIBUTE_NOSERIALIZE) | |
_DYNAMIC_STRUCT_ATTRIBUTE (GxProperty::TYPE::STRUCT, GxRenderShaderDevInfo, "アウトラインパス描画情報", &GxUnitModelBase::getPropertyRenderDevelopInfoPolygonLine, &GxUnitModelBase::setPropertyRenderDevelopInfo, &GxUnitModelBase::getPropertyRenderDevelopInfoCount, &GxUnitModelBase::setPropertyRenderDevelopInfoCount, GxProperty::ATTRIBUTE_READONLY|GxProperty::ATTRIBUTE_NOSERIALIZE) | |
_PAGE_BEGIN ("インスタンス") | |
_CUSTOM (GxProperty::TYPE::U32, "インスタンス数", &GxUnitModelBase::getPropertyInstanceCount, &GxUnitModelBase::setPropertyInstanceCount) | |
_DYNAMIC_STRUCT (GxProperty::TYPE::VECTOR3, GxVector3, "インスタンス座標", &GxUnitModelBase::getPropertyInstancePosition, &GxUnitModelBase::setPropertyInstancePosition, &GxUnitModelBase::getPropertyInstancePositionCount, &GxUnitModelBase::setPropertyInstancePositionCount) | |
_DYNAMIC_STRUCT (GxProperty::TYPE::QUATERNION, GxQuaternion, "インスタンス回転", &GxUnitModelBase::getPropertyInstanceQuaternion, &GxUnitModelBase::setPropertyInstanceQuaternion, &GxUnitModelBase::getPropertyInstanceQuaternionCount, &GxUnitModelBase::setPropertyInstanceQuaternionCount) | |
_DYNAMIC_STRUCT (GxProperty::TYPE::VECTOR3, GxVector3, "インスタンス拡大率", &GxUnitModelBase::getPropertyInstanceScale, &GxUnitModelBase::setPropertyInstanceScale, &GxUnitModelBase::getPropertyInstanceScaleCount, &GxUnitModelBase::setPropertyInstanceScaleCount) | |
_DYNAMIC_STRUCT_ATTRIBUTE (GxProperty::TYPE::MATRIXAFFINE, GxMatrixAffine, "インスタンスオフセットマトリクス", &GxUnitModelBase::getPropertyInstanceOffsetMatrix, &GxUnitModelBase::setPropertyInstanceOffsetMatrix, &GxUnitModelBase::getPropertyInstanceOffsetMatrixCount, &GxUnitModelBase::setPropertyInstanceOffsetMatrixCount, GxProperty::ATTRIBUTE_READONLY|GxProperty::ATTRIBUTE_NOSERIALIZE) | |
_DYNAMIC_STRUCT_ATTRIBUTE (GxProperty::TYPE::MATRIXAFFINE, GxMatrixAffine, "インスタンスペアレントマトリクス", &GxUnitModelBase::getPropertyInstanceParentMatrix, &GxUnitModelBase::setPropertyInstanceParentMatrix, &GxUnitModelBase::getPropertyInstanceParentMatrixCount, &GxUnitModelBase::setPropertyInstanceParentMatrixCount, GxProperty::ATTRIBUTE_READONLY|GxProperty::ATTRIBUTE_NOSERIALIZE|GxProperty::ATTRIBUTE_HIDE) | |
_DYNAMIC (GxProperty::TYPE::B32, "インスタンス表示フラグ", &GxUnitModelBase::getPropertyInstanceShowFlag, &GxUnitModelBase::setPropertyInstanceShowFlag, &GxUnitModelBase::getPropertyInstanceShowFlagCount, &GxUnitModelBase::setPropertyInstanceShowFlagCount) | |
_PARAM_NAME_ATTRIBUTE (vertexShaderSize, "頂点シェーダサイズ", GxProperty::ATTRIBUTE_READONLY) | |
_PARAM_NAME_ATTRIBUTE (pixelShaderSize, "ピクセルシェーダサイズ", GxProperty::ATTRIBUTE_READONLY) | |
GX_FLAG_VALUE ("ワールドに直接存在する", ATTRIBUTE::WORLD) | |
GX_FLAG_VALUE ("親のスケールの影響を受けない", ATTRIBUTE::SEGMENT_SCALE_COMPENSATE) | |
_PARAM_NAME_ATTRIBUTE (_index, "インデックス", GxProperty::ATTRIBUTE_READONLY) | |
_PARAM_NAME_ATTRIBUTE (_name, "名前", GxProperty::ATTRIBUTE_READONLY) | |
_STRUCT_POINTER_NAME (_pParentJoint, "親関節") | |
_STRUCT_POINTER_NAME (_pChildJoint, "子関節") | |
_STRUCT_POINTER_NAME (_pBrotherJoint, "弟関節") | |
_PARAM_NAME_ATTRIBUTE (_worldMatrix, "ワールドマトリクス", GxProperty::ATTRIBUTE_NOSERIALIZE) | |
_PARAM_NAME (_position, "座標") | |
_PARAM_NAME (_quaternion, "回転") | |
_PARAM_NAME (_scale, "スケール") | |
_STRUCT_POINTER_NAME_ATTRIBUTE (_pOrientMatrix, "オリエントマトリクス", GxProperty::ATTRIBUTE_READONLY) | |
_STRUCT_POINTER_NAME_ATTRIBUTE (_pInversMatrix, "スキニング用逆マトリクス", GxProperty::ATTRIBUTE_READONLY) | |
_FLAG_NAME_GUI (_attribute, "属性", GxJoint::ATTRIBUTE) | |
モデル基礎クラス