OROCHI
 
Loading...
Searching...
No Matches
GxUnitBackgroundBase Class Reference

背景ユニット基底クラス More...

#include <GxUnitBackgroundBase.h>

Inheritance diagram for GxUnitBackgroundBase:
Collaboration diagram for GxUnitBackgroundBase:

Classes

struct  GxTrimeshConstractInformation
 三角形メッシュ生成時情報 More...
 

Public Member Functions

初期化
 GxUnitBackgroundBase (void)
 デフォルトコンストラクタ
 
void cleanup (void) override
 delete直前に呼び出される関数
 
アクセサ
GX_FORCE_INLINE void setCreateDynamicsMesh (b32 isCreateDynamicsFromCollsionMesh)
 背景当たりリソースを基に物理用メッシュを作成するかどうか設定
 
virtual void setResCollisionMesh (GxResCollisionMesh *pResCollisionMesh)
 背景当たりリソース設定( _isCreateDynamicsFromCollsionMesh変数がtrue時には、関数の内部でsetResDynamicsMesh関数が呼ばれます )
 
virtual void setResDynamicsMesh (GxResCollisionMesh *pResDynamicsMesh)
 物理当たりリソース設定
 
constexpr void setDynamicsHitMargin (f32 margin)
 物理当たりのマージン設定
 
constexpr void setDynamicsHitFriction (f32 friction)
 物理当たりの摩擦係数設定
 
constexpr GxBackgroundHitgetBackgroundHit (void) const
 背景当たりインスタンス取得
 
constexpr GxDynamicsgetDynamicsHit (void) const
 物理当たりインスタンス取得
 
constexpr GxResCollisionMeshgetResCollisionMesh (void) const
 背景当たりリソース取得
 
constexpr GxResCollisionMeshgetResDynamicsMesh (void) const
 物理当たりリソース取得
 
constexpr f32 getDynamicsHitMargin (void) const
 物理当たりのマージン取得
 
constexpr f32 getDynamicsHitFriction (void) const
 物理当たりの摩擦係数取得
 
GX_FORCE_INLINE b32 isCreateDynamicsMesh (void) const
 背景当たりリソースを基に物理用メッシュを作成するかどうか取得
 
constexpr void getPropertyCollisionMesh (void *const pValue)
 背景当たりリソースプロパティの取得
 
constexpr void getPropertyDynamicsMesh (void *const pValue)
 物理当たりリソースプロパティの取得
 
void setPropertyCollisionMesh (const void *const pValue)
 背景当たりリソースプロパティの設定
 
void setPropertyDynamicsMesh (const void *const pValue)
 物理当たりリソースプロパティの設定
 
- Public Member Functions inherited from GxUnitModel
 GxUnitModel (void)
 デフォルトコンストラクタ
 
b32 setModelResource (GxResModel *pResModel) override
 モデルリソースを設定する
 
virtual b32 checkDoRender (const GxRenderMaterial *pMaterial)
 描画するマテリアルかチェック
 
GX_FORCE_INLINE b32 isEnableObjectMotionBlur (void) const
 オブジェクトモーションブラー指定の取得
 
GX_FORCE_INLINE void setEnableObjectMotionBlur (b32 enable)
 オブジェクトモーションブラー指定の設定
 
GX_FORCE_INLINE b32 isEnableEnvironmentMapElement (void) const
 動的環境マップ作成時描画フラグ取得
 
GX_FORCE_INLINE void setEnableEnvironmentMapElement (b32 enable)
 動的環境マップ作成時描画フラグ指定
 
GX_FORCE_INLINE b32 isEnableShadow (void) const
 影の描画フラグ取得
 
GX_FORCE_INLINE void setEnableShadow (b32 enable)
 影の描画フラグ指定
 
GX_FORCE_INLINE b32 isEnableSemiTransparencePriority (void) const
 
GX_FORCE_INLINE void setEnableSemiTransparencePriority (b32 enable)
 
constexpr f32 getSemiTransparencePriority (void) const
 
constexpr void setSemiTransparencePriority (f32 value)
 
f32 getCurrentSemiTransparencePriority (u32 startIndex)
 
- Public Member Functions inherited from GxUnitModelBase
 GxUnitModelBase (void)
 デフォルトコンストラクタ
 
void cleanup (void) override
 delete直前に呼び出される関数
 
void updateLocalMatrix (void) override
 ローカルマトリクスの更新
 
void updateWorldMatrix (void) override
 ワールドマトリクスの更新
 
virtual GX_FORCE_INLINE GxResModelgetModelResource (void) const
 モデルリソースを取得する
 
constexpr GxResMaterialgetMaterialResource (u32 index=0)
 マテリアルリソースを取得
 
void setMaterialResource (u32 index, GxResMaterial *pResMaterial)
 マテリアルリソースを設定
 
void setMaterialResourceAll (void)
 マテリアルリソースを全て0番と同じにする
 
virtual b32 recoveryMaterial (void)
 マテリアルをリソースの状態に戻す
 
void writeBackMaterial (void)
 マテリアルをリソースに書き戻す
 
GX_FORCE_INLINE void * mapPartsIndexBuffer (u32 index, u32 mappingType)
 パーツのインデックスバッファのマッピング開始
 
GX_FORCE_INLINE void unmapPartsIndexBuffer (u32 index)
 パーツのインデックスバッファのマッピング終了
 
b32 copyMaterial (void)
 マテリアルを複製する
 
virtual GX_FORCE_INLINE u32 getJointCount (void) const
 関節数を取得
 
GxJointgetJointFromIndex (u32 index) const
 関節インデックスを取得
 
GxJointgetJointFromId (u32 id) const
 関節を取得(ID指定)
 
u32 getJointIndexFromId (u32 id) const
 関節IDからINDEXを取得
 
GX_FORCE_INLINE u32 getPartsFlagCount (void) const
 パーツフラグ数を取得
 
GX_FORCE_INLINE b32 isPartsFlag (u32 index) const
 パーツフラグを取得
 
GX_FORCE_INLINE void setPartsFlag (u32 index, b32 enable)
 パーツフラグを設定
 
GX_FORCE_INLINE s32 getPartsIndex (GX_CSTR partsName) const
 パーツインデックスを取得
 
GX_FORCE_INLINE b32 isUsePartsMatrix (void)
 パーツマトリクスを使用するか判定
 
GX_FORCE_INLINE void setUsePartsMatrix (b32 on)
 パーツマトリクスを使用するか設定
 
GxMatrixAffinegetPartsMatrix (u32 index) const
 パーツマトリクスの取得
 
void setPartsMatrix (u32 index, const GxMatrixAffine &matrix)
 パーツマトリクスの設定
 
GxRenderVertexDeclarationgetPartsVertexDeclaration (u32 index) const
 パーツの頂点宣言を取得
 
GX_FORCE_INLINE u32 getPartsVertexCount (u32 index) const
 パーツの頂点数を取得
 
GX_FORCE_INLINE u32 getPartsVertexStride (u32 index, u16 vertexStream) const
 パーツの頂点ストライドを取得
 
GX_FORCE_INLINE RENDER_INDEX_TYPE getPartsIndexType (u32 index) const
 パーツのインデックスタイプを取得
 
GX_FORCE_INLINE u32 getPartsIndexOffset (u32 index) const
 パーツのインデックスバッファオフセットを取得
 
GX_FORCE_INLINE u32 getPartsIndexCount (u32 index) const
 パーツのインデックス数を取得
 
GX_FORCE_INLINE u32 getPartsIndexMinimum (u32 index) const
 パーツの最小のインデックスを取得
 
void getMeshWorldMatrix (GxMatrixAffine &world, const u32 &meshIndex)
 メッシュのワールドマトリックスを取得
 
GX_FORCE_INLINE u32 getMeshIndexFromPartsIndex (u32 partsIndex) const
 パーツインデックスからメッシュインデックスを取得
 
GX_FORCE_INLINE u32 getMeshGroupIndexFromMeshIndex (u32 meshIndex) const
 メッシュインデックスからメッシュグループインデックスを取得
 
constexpr u32 getMeshCullingFlagCount (void) const
 メッシュカリングフラグ数を取得
 
GX_FORCE_INLINE b32 isMeshCullingFlag (u32 index, RENDER_VIEW view, CULLING_FRUSTUM pass) const
 メッシュカリングフラグを取得
 
constexpr u32 getMeshRenderFlagCount (void) const
 メッシュ描画フラグ数を取得
 
GX_FORCE_INLINE b32 isMeshRenderFlag (u32 index) const
 メッシュ描画フラグを取得
 
constexpr u32 getMaterialCount (void) const
 マテリアル数を取得
 
GxRenderMaterialgetMaterial (u32 index)
 マテリアルを取得
 
GX_FORCE_INLINE b32 isModelAttribute (MODEL_ATTRIBUTE attribute) const
 属性の取得
 
GX_FORCE_INLINE void setModelAttribute (MODEL_ATTRIBUTE attribute, b32 enable)
 属性の設定
 
constexpr GxResModel::LOD getShowLod (void) const
 表示LODの取得
 
constexpr void setShowLod (GxResModel::LOD showLod)
 表示LODの設定
 
constexpr GxResModel::LOD getLodMode (void) const
 LODモードの取得
 
constexpr void setLodMode (GxResModel::LOD lodMode)
 LODモードの設定
 
const GxMatrixAffinegetInstanceMatrix (u32 index) const
 インスタンスマトリクスの取得
 
GxMatrixAffinegetInstanceMatrix (u32 index)
 インスタンスマトリクスの取得
 
void setInstanceMatrix (u32 index, const GxMatrixAffine &matrix)
 インスタンスマトリクスの設定
 
constexpr u32 getInstanceCount (void) const
 インスタンスの個数取得
 
virtual void setInstanceCount (u32 count)
 インスタンスの個数設定
 
void reserveInstanceMemory (u32 count)
 インスタンス用のメモリエリア予約
 
void freeInstanceMemory (void)
 インスタンス用のメモリエリア解放
 
GX_FORCE_INLINE b32 isInstanced (void) const
 インスタンスされているか否かを返す
 
GX_FORCE_INLINE void setUseJointMultiplyMatrix (b32 use)
 ジョイントの乗算マトリクスを使用するフラッグの設定
 
GX_FORCE_INLINE b32 getUseJointMultiplyMatrix (void)
 ジョイントの乗算マトリクスを使用するフラッグの取得
 
void setJointMultiplyMatrix (u32 index, const GxMatrixAffine &matrix)
 ジョイントの乗算マトリクスを設定
 
void resetJointMultiplyMatrix (void)
 ジョイントの乗算マトリクスをリセット
 
void updateJointMultiplyMatrix (void)
 ジョイント乗算マトリクスの更新
 
GX_FORCE_INLINE GxCriticalSectiongetMaterialCriticalSection (void)
 マテリアル構築に関わる処理に対するクリティカルセクション取得

 
const GxMatrixAffinegetInstanceOffsetMatrix (u32 index) const
 インスタンスオフセットマトリクスの取得
 
GxMatrixAffinegetInstanceOffsetMatrix (u32 index)
 インスタンスオフセットマトリクスの取得
 
void setInstanceOffsetMatrix (u32 index, const GxMatrixAffine &matrix)
 インスタンスオフセットマトリクスの設定
 
GX_FORCE_INLINE b32 isInstanceShowFlag (u32 index) const
 インスタンス表示フラグを取得
 
GX_FORCE_INLINE void setInstanceShowFlag (u32 index, b32 enable)
 インスタンス表示フラグを設定
 
GX_FORCE_INLINE b32 isInstanceCullingFlag (u32 index, RENDER_VIEW view, u32 pass) const
 インスタンスカリングフラグを取得
 
b32 hasSkin (void) const
 スキンモデルを含んでいるか判定
 
- Public Member Functions inherited from GxUnitLocate
 GxUnitLocate (void)
 コンストラクタ
 
GX_FORCE_INLINE const GxMatrixAffinegetWorldMatrix (void) const
 ワールドマトリクスの取得
 
void getWorldMatrix (GxMatrixAffine &matrix) const
 ワールドマトリクスの取得(再計算を行う)
 
GX_FORCE_INLINE void setWorldMatrix (const GxMatrixAffine &matrix)
 ワールドマトリクスの設定
 
GX_FORCE_INLINE GxMatrixAffinegetWorldMatrixAddress (void)
 ワールドマトリクスアドレスの取得
 
GX_FORCE_INLINE const GxVector3getPosition (void) const
 位置の取得
 
virtual GX_FORCE_INLINE void setPosition (const GxVector3 &position)
 位置の設定
 
GX_FORCE_INLINE const GxVector3getLocalPosition (void) const
 ローカル位置の取得
 
virtual GX_FORCE_INLINE void setLocalPosition (const GxVector3 &position)
 ローカル位置の設定
 
GX_FORCE_INLINE GxQuaternion getQuaternion (void) const
 回転値の取得
 
GX_FORCE_INLINE void setQuaternion (const GxQuaternion &quaternion)
 回転値の設定
 
GX_FORCE_INLINE const GxQuaterniongetLocalQuaternion (void) const
 ローカル回転値の取得
 
GX_FORCE_INLINE void setLocalQuaternion (const GxQuaternion &quaternion)
 ローカル回転値の設定
 
GX_FORCE_INLINE GxVector3 getScale (void) const
 拡縮率の取得
 
virtual GX_FORCE_INLINE void setScale (const GxVector3 &scale)
 拡縮率の設定
 
GX_FORCE_INLINE const GxVector3getLocalScale (void) const
 ローカル拡縮率の取得
 
virtual GX_FORCE_INLINE void setLocalScale (const GxVector3 &scale)
 ローカル拡縮率の設定
 
GX_FORCE_INLINE const GxShapeSpheregetBoundingSphere (void) const
 バウンディング球を取得
 
GX_FORCE_INLINE void setBoundingSphere (const GxShapeSphere &sphere)
 バウンディング球を設定
 
void getBoundingSphereWorld (GxShapeSphere &sphere) const
 ワールド座標のバウンディング球の取得
 
GX_FORCE_INLINE b32 isCulling (RENDER_VIEW view, u32 subView) const
 カリングされているか判定
 
GX_FORCE_INLINE b32 isCullingEnable (void) const
 カリングが有効かを取得
 
GX_FORCE_INLINE void setCullingEnable (b32 flag)
 カリングの有効設定
 
GX_FORCE_INLINE b32 enabledHierarchicalCulling (void) const
 階層カリングを有効にするオブジェクトかどうか?
 
GX_FORCE_INLINE void setHierarchicalCulling (b32 flag)
 階層カリングを有効にするかどうか?を設定(規定値は無効
 
GX_FORCE_INLINE b32 isDoneHierarchicalCulling (void) const
 階層カリングが既に行われた後かどうか?を判断する
 
GX_FORCE_INLINE void doneHierarchicalCulling (b32 flag)
 階層カリングを既に行ったかどうか?を設定する
 
constexpr u32 getCullingState (void) const
 カリングの結果のフラスタムの内外ステータスを取得する。
 
constexpr void setCullingState (u32 flag)
 カリングの結果のフラスタムの内外ステータスを保持する。
 
constexpr void clearCullingState (void)
 カリングの結果のフラスタムの内外ステータスを保持する。
 
GX_FORCE_INLINE b32 isMovable (MOVABLE movable) const
 可動性を判定
 
void setMovable (MOVABLE movable)
 可動性を設定
 
GX_FORCE_INLINE b32 isDirtyMovable (void) const
 可動性の変更を判定
 
GX_FORCE_INLINE void setDirtyMovable (b32 enable)
 可動性の変更を設定
 
void kill (void) override
 消去リクエスト
 
void addX (f32 value)
 X軸方向に移動
 
void addY (f32 value)
 Y軸方向に移動
 
void addZ (f32 value)
 Z軸方向に移動
 
void addPosition (const GxVector3 &moveVector)
 指定方向に移動
 
void addQuaternion (const GxQuaternion &quaternion)
 クウォータニオン加算
 
void rotateAxisY (const GxVector3 &vector, f32 radian)
 Y軸を回転軸として、ワールドのZ軸を指定方向に回転
 
void rotateAxisZ (const GxVector3 &vector, f32 radian)
 Z軸を回転軸として、ワールドのY軸を指定方向に回転
 
b32 isAbleAddToOctree (void)
 8分木に登録可能か判定
 
b32 isAbleDeleteFromOctree (void)
 8分木から削除可能か判定
 
- Public Member Functions inherited from GxUnitBase
 GxUnitBase (void)
 コンストラクタ
 
constexpr f32 getDeltaTimeFactor (void) const
 デルタタイム係数を取得
 
constexpr void setDeltaTimeFactor (f32 deltaTimeFactor)
 デルタタイム係数を設定
 
constexpr f32 getDeltaTime (void) const
 デルタタイムを取得
 
constexpr void setDeltaTime (f32 deltaTime)
 デルタタイムを設定
 
constexpr f32 getDeltaTimeRatio (void) const
 デルタタイムレート(通常のフレームレートの何倍か)を取得
 
constexpr void setDeltaTimeRatio (f32 deltaTimeRatio)
 デルタタイムレート(通常のフレームレートの何倍か)を設定
 
constexpr STATE getState (void) const
 状態を取得
 
constexpr void setState (STATE state)
 状態を設定(ユーザーは使用してはならない内部使用)
 
GX_FORCE_INLINE b32 isEnable (void) const
 有効か判定
 
constexpr u32 getAttribute (void) const
 属性を取得
 
GX_FORCE_INLINE b32 isAttribute (ATTRIBUTE attribute) const
 属性を判定
 
GX_FORCE_INLINE void setAttribute (ATTRIBUTE attribute, b32 enable)
 属性を設定
 
GX_FORCE_INLINE b32 isRender (void) const
 描画フラグ判定
 
void setRender (b32 enable, b32 withChildren=false)
 描画フラグを設定
 
GX_FORCE_INLINE GxFlag32Index< RENDER_VIEWgetRenderViewFlag (void) const
 描画するビューフラグを取得
 
GX_FORCE_INLINE b32 isRenderView (RENDER_VIEW view) const
 描画するビューを判定
 
GX_FORCE_INLINE void setRenderView (RENDER_VIEW view, b32 enable)
 描画するビューを設定
 
GX_FORCE_INLINE b32 isRenderSubView (RENDER_SUB_VIEW subView) const
 描画するサブビューを判定
 
GX_FORCE_INLINE void setRenderSubView (RENDER_SUB_VIEW subView, b32 enable)
 描画するサブビューを設定
 
GX_FORCE_INLINE b32 isUpdateEnable (UPDATE_TYPE updateType) const
 更新を呼ぶかを判定
 
GX_FORCE_INLINE void setUpdateEnable (UPDATE_TYPE updateType, b32 enable)
 更新を呼ぶかを設定
 
GX_FORCE_INLINE void getPropertyAttributeUpdate (void *const pValue)
 プロパティ用:更新処理の属性を取得
 
GX_FORCE_INLINE void setPropertyAttributeUpdate (const void *const pValue)
 プロパティ用:更新処理の属性を設定
 
template<typename T >
T * getModule (void) const
 モジュールを取得
 
constexpr u32 getChildCount (void) const
 子ユニット数を取得
 
constexpr GxUnitBasegetChild (u32 index) const
 子ユニットを取得
 
constexpr GxUnitBasegetParent (void) const
 親ユニットを取得
 
void setParent (GxUnitBase *pParent)
 親ユニットを設定
 
constexpr GxResUnitInstancegetResUnitInstance (void) const
 ユニットインスタンスリソースを取得
 
void setResUnitInstance (GxResUnitInstance *pResUnitInstance)
 ユニットインスタンスリソースを設定
 
constexpr void getPropertyResUnitInstance (void *const pValue)
 ユニットインスタンスリソースプロパティの取得
 
void setPropertyResUnitInstance (const void *const pValue)
 ユニットインスタンスリソースプロパティの設定
 
GX_FORCE_INLINE const GxTypedObjectgetDefaultObject (void) override
 デフォルトオブジェクトを取得
 
constexpr GxUnitBasegetDefaultUnit (void) const
 デフォルトユニットを取得
 
void setDefaultUnit (GxUnitBase *pDefaultUnit)
 デフォルトユニットを設定
 
void sleep (f32 time)
 スリープ(スクリプト用)
 
template<typename T >
T * createAndAddChild (u32 listProcessNumber=U32_MAX, u32 listKindNumber=U32_MAX, b32 isSerialize=false, const GxRtti *pRtti=nullptr)
 子ユニットを追加作成
 
- Public Member Functions inherited from GxClassBaseReference
 GxClassBaseReference (void)
 コンストラクタ
 
 GxClassBaseReference (const GxClassBaseReference &base)
 コピーコンストラクタ
 
 ~GxClassBaseReference (void) override
 デストラクタ
 
constexpr GxClassBaseReferenceoperator= (const GxClassBaseReference &base)
 代入演算子
 
virtual s32 addReference (void)
 参照カウンタを加算
 
virtual s32 release (void)
 解放
 
virtual s32 getReferenceCount (void) const
 参照カウンタを取得
 
constexpr void setDelayReleaseCount (s32 count)
 遅延解放カウンタを設定
 
void setDelayReleaseCountInfinity (b32 on)
 無限解放待ちの設定
 
- Public Member Functions inherited from GxClassBaseRoot
constexpr GxClassBaseRoot (void)
 コンストラクタ
 
constexpr GxClassBaseRoot (const GxClassBaseRoot &)
 コピーコンストラクタ
 
virtual ~GxClassBaseRoot (void)
 デストラクタ
 
constexpr GxClassBaseRootoperator= (const GxClassBaseRoot &)
 代入演算子
 
virtual GxRttigetRtti (void) const =0
 Rttiの取得
 
GX_FORCE_INLINE b32 isDefaultObject (void)
 デフォルトオブジェクト判定
 

操作

b32 createBackgroundHit (u32 index, GxCollision::GxWorld *pWorld, GxCollision::COLLISION_CALLBACK pCallback, const GxTrimeshConstractInformation &trimeshInformation, btBvhTriangleMeshShape *pBtBvhTriangleMeshShape=nullptr)
 背景当たり作成 (メッシュ情報指定)
 
b32 createDynamicsHit (u32 index, const GxTrimeshConstractInformation &trimeshInformation)
 物理当たり作成 (メッシュ情報指定)
 
b32 createBackgroundHit (u32 index, GxCollision::GxWorld *pWorld, GxCollision::COLLISION_CALLBACK pCallback, GxResCollisionMesh *pResource)
 背景当たり作成 (リソース指定)
 
b32 createDynamicsHit (u32 index, GxResCollisionMesh *pResource)
 物理当たり作成 (リソース指定)
 
void clearBackgroundHit (void)
 背景当たり破棄
 
void clearDynamicsHit (void)
 物理当たり破棄
 
virtual void dynamicsCallback (void)
 物理コールバック
 
void asyncUpdate (void) override
 非同期更新
 

Additional Inherited Members

- Public Types inherited from GxUnitModel
enum class  INTERNAL_RENDER_PASS { SINGLE_PASS , SEMI_TRANSPARENCE_DEPTH , SEMI_TRANSPARENCE_COLOR }
 ユニット内部の描画パス More...
 
- Public Types inherited from GxUnitModelBase
enum class  PASSINFO {
  NORMAL = 0 , SHADOW , POINTSHADOW , PREZ ,
  MOTIONBLUR , ENV , POLYGONLINE , MAX
}
 パス情報 More...
 
enum class  MODEL_ATTRIBUTE {
  MESH_CULLING_ENABLE , MESH_SHADOW_CULLING_ENABLE , MESH_ENVIRONMENT_CULLING_ENABLE , ORTHO_RENDER ,
  MAX
}
 属性定義 More...
 
- Public Types inherited from GxUnitLocate
enum class  MOVABLE { NONE , STATIC , DYNAMIC , MAX }
 可動性定義 More...
 
enum class  CULLING_FRUSTUM {
  NORMAL , SHADOW_0 , SHADOW_1 , SHADOW_2 ,
  SHADOW_3 , POINT_SHADOW_0 , POINT_SHADOW_1 , REFLECTION ,
  POST , OTHER , MAX
}
 フラスタムカリング定義 More...
 
- Public Types inherited from GxUnitBase
enum class  STATE { SETUP , RUNNING , DELETE_ }
 状態 More...
 
enum  ATTRIBUTE {
  ATTRIBUTE_UPDATE = (1 << 0) , ATTRIBUTE_SELECTED = (1 << 1) , ATTRIBUTE_LOCK = (1 << 2) , ATTRIBUTE_SLOW = (1 << 3) ,
  ATTRIBUTE_NOSERIALIZE = (1 << 4)
}
 属性 More...
 
- Static Public Member Functions inherited from GxClassBaseReference
static void initializeDelayRelease (void)
 遅延解放リストの初期化
 
static void terminateDelayRelease (void)
 遅延解放リストの終了
 
static void updateDelayRelease (void)
 遅延解放リストの更新
 
static b32 isDelayReleaseEnable (void)
 遅延解放システムの有効判定
 
static u32 getDelayReleaseListCount (void)
 遅延解放待ちの数を取得
 
- Static Public Member Functions inherited from GxClassBaseRoot
static GX_FORCE_INLINE GxRtti__getStaticRtti (void)
 Rttiの取得
 
- Static Public Attributes inherited from GxClassBaseReference
static constexpr s32 DELAY_RELEASE_COUNT_INFINITY = -1
 遅延解放の無限待ち定義
 
- Protected Types inherited from GxUnitModel
enum class  SHADER_PASS {
  SHADOW_0 , SHADOW_1 , SHADOW_2 , SHADOW_POINT_0 ,
  SHADOW_POINT_1 , SHADOW_POINT_2 , PRE , NORMAL ,
  NORMAL_PBR , SEMI_TRANSPARENCE , SEMI_TRANSPARENCE_PBR , MOTIONBLUR_ON ,
  MOTIONBLUR_OFF , ENV_MAP , LIGHT_PROBE_MAP , HIGH_SPEED ,
  VERTEX_LIT_NORMAL , VERTEX_LIT_SEMI_TRANSPARENCE , PRE_SHADOW , POLYGON_LINE
}
 シェーダーパス定義 More...
 
enum class  SHADER_HANDLE {
  INVERS_VIEW_MATRIX , FISH_EYE_PARAMETER , NORMAL , DIFFUSE ,
  SPECULAR , FOG_COLOR , METALLIC_ROUGHNESS , BRDF ,
  TOON_RIM_LIGHT , PREVIOUS_WORLD_VIEW_MATRIX , INVERS_PROJECTION_MATRIX , SHADOW_MATRIX ,
  SHADOW_FAR , SHADOW_BUFFER_SIZE , SHADOW_LERP , OPACITY_MAP_SAMPLER ,
  DEPTH_MAP_SAMPLER , SHADOW_BUFFER_SAMPLER , APPLY_LIGHTING , APPLY_LIGHTING_SEMITRANSPARENCE ,
  CASCADE_SHADOW_MAP , DIRECTIONAL_SHADOW , DIRECTIONAL_SHADOW_MASK , SHADOW_LIGHT_COLOR ,
  SHADOW_LIGHT_AMBIENT_COLOR , SHADOW_LIGHT_DIRECTION , POINT_SHADOW , POINT_SHADOW_MAP ,
  LIGHTING_COUNT , POINT_LIGHT_COLOR , POINT_LIGHT_POSITION , POINT_LIGHT_PARAM ,
  POINT_LIGHT_ORIENTATION , POINT_LIGHT_SPOT , POINT_SHADOW_LIGHT_COLOR , POINT_SHADOW_LIGHT_POSITION ,
  POINT_SHADOW_LIGHT_PARAM , POINT_SHADOW_LIGHT_ORIENTATION , POINT_SHADOW_LIGHT_SPOT , POINT_SHADOW_MATRIX ,
  ENVIRONMENT_SAMPLER , CHROMA_KEY , FACE_FORWARD , APPLY_COLOR_MAP_SECOND ,
  MULTI_MAP , COLOR_MAP_COMPOSITE , TRANSFORM_SKINNING , TRANSFORM_OFFSET ,
  HIGH_SPEED_VERTEX_SHADER_MODE , ALPHA_TEST , ALPHA_TEST_PARAMETER , VERTEX_OFFSET_PARAMETER ,
  VERTEX_OFFSET_PARAMETER_2 , SEMITRANSPARENCE_PRIORITY_OFFSET , REFRACTION_PARAMETER , SSR_PARAMETER ,
  CONTROL_PARAMETER , APPLY_LIGHT_MAP , LIGHT_PROBE_POSITION , LIGHT_PROBE_EXTENT ,
  LIGHT_PROBE_SAMPLER , LIGHT_PROBE_RED , LIGHT_PROBE_RED_1 , LIGHT_PROBE_RED_2 ,
  LIGHT_PROBE_GREEN , LIGHT_PROBE_GREEN_1 , LIGHT_PROBE_GREEN_2 , LIGHT_PROBE_BLUE ,
  LIGHT_PROBE_BLUE_1 , LIGHT_PROBE_BLUE_2 , HIGH_SPEED_COLOR_MAP_SAMPLER_STATE , LIGHTING_ENABLE ,
  SHADOW_ENABLE , SHADOW_PARAMETER , MAX
}
 シェーダーハンドル定義 More...
 
- Protected Member Functions inherited from GxUnitModel
void postAsyncUpdate (void) override
 並列更新(asyncUpdateの後に実行される)
 
void forceAsyncUpdate (void) override
 強制並列更新(pause中も実行)
 
b32 renderInitialize (RENDER_VIEW view, RENDER_SUB_VIEW subView) override
 描画前の初期化
 
void renderMeshGroupAll (void) override
 全メッシュグループの描画
 
void renderMeshGroup (const GxResModel::GxMeshGroup *pMeshGroup) override
 メッシュグループの描画
 
void renderMesh (u32 startIndex, u32 count, const GxRenderMaterial *pMaterial, u32 instanceStartIndex, u32 instanceCount) override
 メッシュの描画
 
virtual void renderMeshNormal (u32 startIndex, u32 count, const GxRenderMaterial *pMaterial, u32 instanceStartIndex, u32 instanceCount)
 メッシュの描画
 
virtual void renderMeshShadow (u32 startIndex, u32 count, const GxRenderMaterial *pMaterial, u32 instanceStartIndex, u32 instanceCount)
 メッシュの描画
 
virtual void renderMeshPointShadow (u32 startIndex, u32 count, const GxRenderMaterial *pMaterial, u32 instanceStartIndex, u32 instanceCount)
 メッシュの描画
 
virtual void renderMeshEnv (u32 startIndex, u32 count, const GxRenderMaterial *pMaterial, u32 instanceStartIndex, u32 instanceCount)
 メッシュの描画
 
virtual void renderMeshPolygonLine (u32 startIndex, u32 count, const GxRenderMaterial *pMaterial, u32 instanceStartIndex, u32 instanceCount)
 メッシュの描画(NPR用アウトライン)
 
b32 setRenderMaterial (GxRenderMaterial *pMaterial, const GxResModel::GxMeshGroup *pMeshGroup) override
 マテリアルの描画設定
 
b32 setRenderState (const GxRenderMaterial *pMaterial) override
 描画ステート設定
 
void updateLightContext (b32 updateContext)
 ライトパラメータの更新
 
virtual void updateMeshCullingFlagShadow (RENDER_VIEW view, CULLING_FRUSTUM frustumtype, u32 cascadeLevel)
 メッシュカリング判定(シャドウパス)
 
virtual void updateMeshCullingFlagPointShadow (RENDER_VIEW view, CULLING_FRUSTUM frustumtype, GxUnitLightBase *pLight)
 メッシュカリング判定(ポイントシャドウパス)
 
virtual void updateMeshCullingFlagEnvironmentMap (RENDER_VIEW view, CULLING_FRUSTUM frustumtype)
 メッシュカリング判定(リアルタイム環境マップパス)
 
virtual void updateInstanceCullingFlagShadow (RENDER_VIEW view, CULLING_FRUSTUM frustumtype, u32 cascadeLevel)
 インスタンスカリング判定(シャドウパス)
 
virtual void updateInstanceCullingFlagPointShadow (GxUnitLightBase *pLight, RENDER_VIEW view, CULLING_FRUSTUM frustumType)
 インスタンスカリング判定(ポイントシャドウパス)
 
virtual void updateInstanceCullingFlagEnvironmentMap (RENDER_VIEW view, CULLING_FRUSTUM frustumType)
 インスタンスカリング判定(リアルタイム環境マップパス)
 
b32 isHitBox (const GxShapeBox &box0, const GxShapeBox &box1)
 箱vs箱判定
 
f32 getLengthSegOnSeparateAxis (const GxVector3 &sep, const GxVector3 &e0, const GxVector3 &e1, const GxVector3 &e2)
 分割軸の長さを取得
 
f32 getLengthSegOnSeparateAxis (const GxVector3 &sep, const GxVector3 &e0, const GxVector3 &e1)
 分割軸の長さを取得
 
b32 hasSemiTransparenceMaterial (void)
 半透明マテリアルを持っているか判定
 
b32 isUseSemiTransparenceDepthPass (void)
 半透明深度パスを使用するか判定
 
void renderInitializeSemiTransparence (void)
 半透明パスの描画前の初期化
 
u32 getRenderPolygonCount (u32 startIndex, u32 count, u32 instanceStartIndex, u32 instanceCount)
 描画ポリゴン数を取得
 
void updateShowLod (const GxUnitCameraBase *pCamera) override
 LOD判定
 
virtual void loadShaderHandles (void)
 シェーダハンドルを全部読み込む
 
GX_FORCE_INLINE void setShaderPass (const GxRenderMaterial *pMaterial, SHADER_PASS pass)
 シェーダーパスを設定
 
constexpr GX_HANDLE getShaderHandle (SHADER_HANDLE shaderHandle) const
 シェーダーハンドルを取得
 
constexpr void setShaderHandle (SHADER_HANDLE shaderHandle, GX_HANDLE handle)
 シェーダーハンドルを設定
 
- Protected Member Functions inherited from GxUnitModelBase
void buildSpaceGraph (void *pOctree) override
 シーングラフに追加
 
void eraseSpaceGraph (void *pOctree) override
 空間木から削除
 
void frustumCulling (void *pFrustum) override
 カリング実行(スレッド呼び出し
 
void forceSetCullingFlag (u32 argument) override
 オブジェクトのカリングフラグを強制設定(スレッド呼び出し
 
b32 frustumCullingMesh (GxShapeFrustum *pFrustum, RENDER_VIEW view, CULLING_FRUSTUM frustumType)
 メッシュの視錘台カリング(旧関数
 
b32 frustumCullingInstance (GxShapeFrustum *pFrustum, RENDER_VIEW view, CULLING_FRUSTUM frustumType)
 インスタンスの視錘台カリング(旧関数
 
b32 setRenderShaderWithInfo (GxShaderPackage::GxShaderCode *pShaderCode, const GxRenderMaterial *pMaterial, PASSINFO index)
 描画シェーダと必要に応じてそのシェーダの情報のセットも行う関数
 
b32 setup (void) override
 初期化
 
void preAsyncUpdate (void) override
 並列更新(asyncUpdateの前に実行される)
 
void forceAsyncUpdate (void) override
 強制並列更新(pause中も実行)
 
void render (void) override
 描画
 
void setJointCount (u32 count)
 関節数を設定
 
virtual void setRenderMatrixCount (u32 count)
 描画マトリクス
 
void setJointMultiplyMatrixCount (u32 count)
 ジョイント乗算マトリクス
 
void setPartsFlagCount (u32 count)
 パーツフラグ数を設定
 
void setPartsMatrix (u32 count)
 パーツ用マトリクスを設定
 
void setMeshCullingFlagCount (u32 count)
 メッシュカリングフラグ数を設定
 
void setMeshRenderFlagCount (u32 count)
 メッシュ描画フラグ数を設定
 
virtual void drawIndexed (u32 startIndex, u32 count, u32 instanceStartIndex, u32 instanceCount, RENDER_PRIMITIVE_TYPE primitiveType=RENDER_PRIMITIVE_TYPE::TRIANGLE_LIST, s32 *pQueryIndex=nullptr)
 描画発行
 
virtual b32 setRenderProjectionMatrix (void)
 プロジェクションマトリクスの描画設定
 
b32 setRenderMaterial (GxRenderMaterial *pMaterial, const GxResModel::GxMeshGroup *pMeshGroup) override
 マテリアルの描画設定
 
b32 setRenderGxSLMaterial (GxRenderMaterial *pMaterial)
 GxSLマテリアルの描画設定
 
virtual b32 setRenderPass (const GxRenderMaterial *pMaterial)
 描画パス設定
 
b32 setRenderShader (GxShaderPackage::GxShaderCode *pShaderCode, u32 *pRenderVertexShaderSize=nullptr, u32 *pRenderPixelShaderSize=nullptr)
 シェーダの描画設定
 
virtual void updateRenderMatrix (void)
 描画用マトリクスの更新
 
virtual void updateInstanceRenderMatrix (RENDER_VIEW view, RENDER_SUB_VIEW subView)
 インスタンス描画用マトリクスの更新
 
virtual void updateMeshRenderFlag (RENDER_VIEW view, CULLING_FRUSTUM renderSubView)
 メッシュ描画フラグ更新
 
virtual void updateInstanceCullingFlag (const GxUnitCameraBase *pCamera, RENDER_VIEW view, CULLING_FRUSTUM frustumType)
 インスタンスカリング判定
 
void setCullingAllMeshs (void)
 全てのメッシュをカリングするように設定する
 
void clearMeshCullingFlag (const RENDER_VIEW &view, const CULLING_FRUSTUM &frustumType)
 メッシュカリングフラグをクリア
 
GX_FORCE_INLINE void clearMeshRenderFlag (void)
 メッシュ描画フラグをクリア
 
void setCullingAllInstances (RENDER_VIEW view, CULLING_FRUSTUM pass)
 全てのメッシュをカリングするように設定
 
void clearInstanceCullingFlag (RENDER_VIEW view, CULLING_FRUSTUM pass)
 インスタンスカリングフラグをクリア
 
void loadShaderHandlesBase (void)
 シェーダハンドルを全部読み込む(GxUnitModelBase用)
 
GX_FORCE_INLINE void setPropertyModelResource (const void *const pValue)
 モデルリソースを設定
 
GX_FORCE_INLINE void getPropertyModelResource (void *const pValue)
 モデルリソースを取得
 
GX_FORCE_INLINE void getPropertyMaterialResource (void *const pValue, u32 index)
 マテリアルリソースを取得(プロパティ用)
 
GX_FORCE_INLINE void setPropertyMaterialResource (const void *const pValue, u32 index)
 マテリアルリソースを設定(プロパティ用)
 
constexpr u32 getPropertyMaterialResourceCount (void)
 マテリアルリソースを取得(プロパティ用)
 
constexpr void setPropertyMaterialResourceCount (const void *const, u32)
 マテリアルリソースを設定(プロパティ用)
 
void setPropertyLODDistance (const void *const pValue, u32 index)
 LOD距離を設定
 
GX_FORCE_INLINE void getPropertyLODDistance (void *const pValue, u32 index)
 LOD距離を取得
 
constexpr u32 getPropertyLODDistanceCount (void)
 LOD数を取得
 
constexpr void setPropertyLODDistanceCount (const void *const, u32)
 LOD数を設定
 
void setPropertyJoint (const void *const pValue, u32 index)
 関節を設定
 
GX_FORCE_INLINE void getPropertyJoint (void *const pValue, u32 index)
 関節を取得
 
constexpr void setPropertyJointCount (u32)
 関節数を設定
 
GX_FORCE_INLINE u32 getPropertyJointCount (void)
 関節数を取得
 
GX_FORCE_INLINE void setPropertyPartsFlag (const void *const pValue, u32 index)
 パーツフラグを設定
 
GX_FORCE_INLINE void getPropertyPartsFlag (void *const pValue, u32 index)
 パーツフラグを取得
 
GX_FORCE_INLINE void setPropertyPartsFlagCount (u32 count)
 パーツフラグ数を設定
 
GX_FORCE_INLINE u32 getPropertyPartsFlagCount (void)
 パーツフラグ数を取得
 
GX_FORCE_INLINE void setPropertyPartsMatrix (const void *const pValue, u32 index)
 パーツマトリクスを設定
 
GX_FORCE_INLINE void getPropertyPartsMatrix (void *const pValue, u32 index)
 パーツマトリクスを取得
 
GX_FORCE_INLINE void setPropertyMeshCullingFlag (const void *const, u32 index, u32 view, u32 pass)
 メッシュカリングフラグを設定
 
GX_FORCE_INLINE void getPropertyMeshCullingFlag (void *const pValue, u32 index, u32 view, u32 pass)
 メッシュカリングフラグを取得
 
GX_FORCE_INLINE void setPropertyMeshCullingFlagCount (u32 count)
 メッシュカリングフラグ数を設定
 
GX_FORCE_INLINE u32 getPropertyMeshCullingFlagCount (void)
 メッシュカリングフラグ数を取得
 
GX_FORCE_INLINE void setPropertyMeshRenderFlag (const void *const pValue, u32 index)
 メッシュ描画フラグを設定
 
GX_FORCE_INLINE void getPropertyMeshRenderFlag (void *const pValue, u32 index)
 メッシュ描画フラグを取得
 
GX_FORCE_INLINE void setPropertyMeshRenderFlagCount (u32 count)
 メッシュ描画フラグ数を設定
 
GX_FORCE_INLINE u32 getPropertyMeshRenderFlagCount (void)
 メッシュ描画フラグ数を取得
 
GX_FORCE_INLINE void setPropertyMaterial (const void *const, u32)
 マテリアルを設定
 
GX_FORCE_INLINE void getPropertyMaterial (void *const pValue, u32 index)
 マテリアルを取得
 
constexpr void setPropertyMaterialCount (u32)
 マテリアル数を設定
 
GX_FORCE_INLINE u32 getPropertyMaterialCount (void)
 マテリアル数を取得
 
GX_FORCE_INLINE void setPropertyInstanceCount (const void *const pValue)
 インスタンス数を設定
 
GX_FORCE_INLINE void getPropertyInstanceCount (void *const pValue)
 インスタンス数を取得
 
GX_FORCE_INLINE void setPropertyInstancePosition (const void *const pValue, u32 index)
 インスタンス座標を設定
 
GX_FORCE_INLINE void getPropertyInstancePosition (void *const pValue, u32 index)
 インスタンス座標を取得
 
GX_FORCE_INLINE void setPropertyInstancePositionCount (u32 count)
 インスタンス座標数を設定
 
GX_FORCE_INLINE u32 getPropertyInstancePositionCount (void)
 インスタンス座標数を取得
 
GX_FORCE_INLINE void setPropertyInstanceQuaternion (const void *const pValue, u32 index)
 インスタンス回転を設定
 
GX_FORCE_INLINE void getPropertyInstanceQuaternion (void *const pValue, u32 index)
 インスタンス回転を取得
 
GX_FORCE_INLINE void setPropertyInstanceQuaternionCount (u32 count)
 インスタンス回転数を設定
 
GX_FORCE_INLINE u32 getPropertyInstanceQuaternionCount (void)
 インスタンス回転数を取得
 
GX_FORCE_INLINE void setPropertyInstanceScale (const void *const pValue, u32 index)
 インスタンススケールを設定
 
GX_FORCE_INLINE void getPropertyInstanceScale (void *const pValue, u32 index)
 インスタンススケールを取得
 
GX_FORCE_INLINE void setPropertyInstanceScaleCount (u32 count)
 インスタンススケール数を設定
 
GX_FORCE_INLINE u32 getPropertyInstanceScaleCount (void)
 インスタンススケール数を取得
 
GX_FORCE_INLINE void setPropertyInstanceOffsetMatrix (const void *const pValue, u32 index)
 インスタンスオフセットマトリクスを設定
 
GX_FORCE_INLINE void getPropertyInstanceOffsetMatrix (void *const pValue, u32 index)
 インスタンスオフセットマトリクスを取得
 
constexpr void setPropertyInstanceOffsetMatrixCount (u32)
 インスタンスオフセットマトリクス数を設定
 
GX_FORCE_INLINE u32 getPropertyInstanceOffsetMatrixCount (void)
 インスタンスオフセットマトリクス数を取得
 
GX_FORCE_INLINE void setPropertyInstanceShowFlag (const void *const pValue, u32 index)
 インスタンス表示を設定
 
GX_FORCE_INLINE void getPropertyInstanceShowFlag (void *const pValue, u32 index)
 インスタンス表示を取得
 
constexpr void setPropertyInstanceShowFlagCount (u32)
 インスタンス表示数を設定
 
GX_FORCE_INLINE u32 getPropertyInstanceShowFlagCount (void)
 インスタンス表示数を取得
 
- Protected Member Functions inherited from GxUnitLocate
virtual void updateSpaceGraph (GxOtFrustumCulling *pOctree)
 
void asyncUpdate (void) override
 並列更新
 
- Protected Member Functions inherited from GxUnitBase
virtual void sequentialUpdate (void)
 逐次更新
 
template<typename T >
T * addModule (void)
 モジュールを作成
 
template<typename T >
void removeModule (void)
 モジュールを削除
 
- Static Protected Member Functions inherited from GxUnitModelBase
static s32 commitVertexBufferData (void *pSource, void *pArgument)
 頂点バッファの内容を更新
 
- Static Protected Member Functions inherited from GxUnitLocate
static CULLING_FRUSTUM getFrustumType (const RENDER_SUB_VIEW subview)
 サブビューモードからカリングフラスタムのタイプを取得
 
- Protected Attributes inherited from GxUnitModel
b32 _enableObjectMotionBlur
 オブジェクトモーションブラーの対象フラグ
 
b32 _enableEnvironmentMapElement
 動的環境マップ作成時このUnitを描画するフラグ
 
b32 _enableShadow
 影を描画するフラグ
 
b32 _autoSetNormalReflectance
 垂直反射率を屈折率から求める
 
GxMatrixAffineGpu _prevRenderMatrixBuffer [PREV_RENDER_MATRIX_DEFAULT_COUNT]
 前フレームの描画マトリクスバッファ
 
GxMatrixAffineGpu_pPrevRenderMatrix
 前フレームの描画マトリクス
 
u32 _pointLightCount
 ポイントライトの数
 
u32 _pointShadowLightCount
 ポイントシャドウライトの数
 
INTERNAL_RENDER_PASS _internalRenderPass
 ユニット内部の描画パス
 
b32 _vertexLitFlag
 頂点ライティングフラグ(仮)
 
b32 _enableSemiTransparencePriority
 半透明描画時の優先度を固定する(仮)
 
f32 _semiTransparencePriority
 半透明描画時の優先度(仮)
 
- Protected Attributes inherited from GxUnitModelBase
GxJoint_pJoint
 関節
 
GxResModel_pResModel
 モデルリソース
 
GxResMaterial ** _ppResMaterial
 マテリアルリソース
 
GxRenderMaterial_pMaterial
 マテリアル
 
GxMatrixAffine _renderViewMatrix
 描画ビューマトリクス
 
GxMatrix44 _renderProjMatrix
 描画プロジェクションマトリクス
 
GxMatrixAffineGpu_pRenderMatrix
 描画マトリクス
 
GxMatrixAffineGpu _defaultRenderMatrix
 初期描画マトリクス
 
u32 * _pPartsFlag
 パーツフラグ
 
u32 _defaultPartsFlag
 初期パーツフラグ
 
b32 _usePartsMatrixFlag
 パーツマトリクスを使用するかフラグ
 
u32 _viewNum
 フラグ確保されたビューの数
 
u32 _passNum
 フラグ確保されたパスの数
 
b32 _useJointMultiplyMatrix
 ジョイントの乗算マトリクスを使用するフラグ
 
GxMatrixAffine_pJointMultiplyMatrix
 ジョイントの乗算マトリクス
 
GxMatrixAffine _defaultJointMultiplyMatrix
 初期ジョイントの乗算マトリクス
 
u8 * _pMeshCullingFlag8 [static_cast< s32 >(RENDER_VIEW::_3D_MAX)][static_cast< s32 >(CULLING_FRUSTUM::MAX)]
 メッシュカリングフラグ
 
u8 * _pMeshCullingFlag8Buffer
 メッシュカリングフラグバッファ
 
u8 *** _pppInstanceCullingFlag8
 インスタンスカリングフラグ
 
b32 _isInstanceCullingFlag
 インスタンスカリングを有効にするか?
 
u32 * _pMeshRenderFlag
 メッシュ描画フラグ
 
u32 _defaultMeshRenderFlag
 初期メッシュ描画フラグ
 
u32 * _pInstanceShowFlag
 インスタンス表示カリングフラグ
 
GxFlag32Index< MODEL_ATTRIBUTE_modelAttribute
 属性
 
GxResModel::LOD _showLod
 表示LOD
 
GxResModel::LOD _lodMode
 LODモード
 
GxInstanceData_pInstanceDataArray
 インスタンス用の保存領域
 
GxInstanceData_pSaveInstanceDataArray
 インスタンス用の保存領域
 
u32 _reservedInstanceCount
 メモリとして確保した配列数
 
GxMatrixAffine_pPartsMatrix
 パーツのマトリクス
 
GxMatrixAffine _defaultPartsMatrix
 初期パーツのマトリクス
 
GxMatrixAffineGpu_pRenderInstanceMatrix
 インスタンスの描画マトリクス
 
GxVector4_pInstanceData
 インスタンスのオプションデータ
 
GxVector4_pRenderInstanceData
 インスタンスの描画オプションデータ
 
GxVector4 _instanceData
 インスタンスのオプションデータ
 
u32 _instanceCount
 インスタンス数
 
u32 _renderInstanceCount
 描画インスタンス数
 
GxRenderVertexDeclaration ** _ppInstanceVertexDeclaration
 インスタンス用頂点宣言
 
- Protected Attributes inherited from GxClassBaseReference
s32 _referenceCount
 参照カウンタ
 
s32 _delayReleaseCount
 遅延解放カウンタ
 
- Static Protected Attributes inherited from GxUnitModel
static GX_HANDLE _handles [static_cast< u32 >(SHADER_HANDLE::MAX)] = { GX_INVALID_HANDLE }
 シェーダーハンドル
 
static b32 _isUsableShaderHandle = false
 上記シェーダがすでに読み込まれたかハンドル
 
- Static Protected Attributes inherited from GxUnitModelBase
static b32 _isUsableShaderHandleBase = false
 シェーダーハンドル使用可能フラグ
 
static GX_HANDLE _handleProjectionMatrix = GX_INVALID_HANDLE
 射影行列ハンドル
 
static GX_HANDLE _handleWorldViewMatrix = GX_INVALID_HANDLE
 ワールドビュー行列ハンドル
 
static GX_HANDLE _handleLightParameter = GX_INVALID_HANDLE
 ライトパラメータハンドル
 
static GX_HANDLE _handleInstanceData = GX_INVALID_HANDLE
 インスタンスデータハンドル
 
static GX_HANDLE _handleInverseScale = GX_INVALID_HANDLE
 逆スケールハンドル
 
static GX_HANDLE _handleEnvironmentMapSampler = GX_INVALID_HANDLE
 環境マップサンプラーハンドル
 
static GX_HANDLE _handleCubeMapSampler = GX_INVALID_HANDLE
 キューブマップサンプラーハンドル
 

Detailed Description

背景ユニット基底クラス

Member Function Documentation

◆ asyncUpdate()

void GxUnitBackgroundBase::asyncUpdate ( void )
overrideprotectedvirtual

非同期更新

Reimplemented from GxUnitBase.

◆ cleanup()

void GxUnitBackgroundBase::cleanup ( void )
overridevirtual

delete直前に呼び出される関数

Reimplemented from GxClassBaseReference.

Here is the call graph for this function:

◆ createBackgroundHit() [1/2]

b32 GxUnitBackgroundBase::createBackgroundHit ( u32 index,
GxCollision::GxWorld * pWorld,
GxCollision::COLLISION_CALLBACK pCallback,
const GxTrimeshConstractInformation & trimeshInformation,
btBvhTriangleMeshShape * pBtBvhTriangleMeshShape = nullptr )

背景当たり作成 (メッシュ情報指定)

Parameters
index[in] 背景当たりインデックス
pWorld[in] 背景登録先ワールド
pCallback[in] 背景当たり登録コールバック関数
trimeshInformation[in] 三角形メッシュ生成時情報
pBtBvhTriangleMeshShape[in] BULLET用メッシュシェイプ (※nullptr指定時:内部で生成)
Returns
成功ならtrue
Here is the call graph for this function:
Here is the caller graph for this function:

◆ createBackgroundHit() [2/2]

b32 GxUnitBackgroundBase::createBackgroundHit ( u32 index,
GxCollision::GxWorld * pWorld,
GxCollision::COLLISION_CALLBACK pCallback,
GxResCollisionMesh * pResource )

背景当たり作成 (リソース指定)

Parameters
index[in] 背景当たりインデックス
pWorld[in] 背景登録先ワールド
pCallback[in] 背景当たり登録コールバック関数
pResource[in] 背景当たり生成元リソース
Returns
成功ならtrue
Here is the call graph for this function:

◆ createDynamicsHit() [1/2]

b32 GxUnitBackgroundBase::createDynamicsHit ( u32 index,
const GxTrimeshConstractInformation & trimeshInformation )

物理当たり作成 (メッシュ情報指定)

Parameters
index[in] 物理当たりインデックス
trimeshInformation[in] 三角形メッシュ生成時情報
Returns
成功ならtrue
Here is the call graph for this function:
Here is the caller graph for this function:

◆ createDynamicsHit() [2/2]

b32 GxUnitBackgroundBase::createDynamicsHit ( u32 index,
GxResCollisionMesh * pResource )

物理当たり作成 (リソース指定)

Parameters
index[in] 物理当たりインデックス
pResource[in] 物理当たり生成元リソース
Returns
成功ならtrue
Here is the call graph for this function:

◆ setPropertyCollisionMesh()

void GxUnitBackgroundBase::setPropertyCollisionMesh ( const void *const pValue)

背景当たりリソースプロパティの設定

Parameters
pValue[in] 背景当たりリソース
Here is the call graph for this function:

◆ setPropertyDynamicsMesh()

void GxUnitBackgroundBase::setPropertyDynamicsMesh ( const void *const pValue)

物理当たりリソースプロパティの設定

Parameters
pValue[in] 物理当たりリソース
Here is the call graph for this function:

◆ setResCollisionMesh()

void GxUnitBackgroundBase::setResCollisionMesh ( GxResCollisionMesh * pResCollisionMesh)
virtual

背景当たりリソース設定( _isCreateDynamicsFromCollsionMesh変数がtrue時には、関数の内部でsetResDynamicsMesh関数が呼ばれます )

Parameters
pResCollisionMesh[in] 背景当たりリソース
Here is the call graph for this function:
Here is the caller graph for this function:

◆ setResDynamicsMesh()

void GxUnitBackgroundBase::setResDynamicsMesh ( GxResCollisionMesh * pResDynamicsMesh)
virtual

物理当たりリソース設定

Parameters
pResCollisionMesh[in] 背景当たりリソース
Here is the call graph for this function:
Here is the caller graph for this function:

The documentation for this class was generated from the following files: