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

物理演算システムクラス More...

#include <GxSysDynamics.h>

Inheritance diagram for GxSysDynamics:
Collaboration diagram for GxSysDynamics:

Public Member Functions

定義
 GX_RTTI_ABSTRACT_CLASS (GxSysDynamics, GxSysDynamicsBase)
 
 GX_PROHIBIT_CLASS_BASE (GxSysDynamics)
 
初期化
 GxSysDynamics (void)
 デフォルトコンストラクタ
 
 ~GxSysDynamics (void) override
 デストラクタ
 
操作
void update (void) override
 実行
 
b32 addWorld (GxDynamics::GxWorld *pWorld)
 ワールドをリストへ追加
 
b32 checkWorld (GxDynamics::GxWorld *pCheckWorld)
 指定ワールドが存在するかどうかチェック
 
void eraseWorld (GxDynamics::GxWorld *pSearchWorld)
 指定ワールドをリストから削除
 
void eraseAllWorld (void)
 全ワールドをリストから削除
 
GxDynamics::GxWorldgetWorld (u32 index)
 指定ワールドを取得
 
void resetAllWorld (void)
 全てのワールドの状態をリセット
 
void resetWorld (u32 index)
 指定したインデックスのワールド状態をリセット
 
virtual GX_FORCE_INLINE b32 reCreateAllWorld (void)
 全ワールドのBtワールド、Nxシーンを削除・再生成
 
アクセサ
virtual GxDynamics::GxObjectcreateObjectFromResource (GxResCollisionObject *pRes, GxDynamics *pDynamics, GxUnitModelBase *pModel, GxMatrixAffine *pMatrix, u32 index)
 
- Public Member Functions inherited from GxSysDynamicsBase
 GxSysDynamicsBase (void)
 デフォルトコンストラクタ
 
 ~GxSysDynamicsBase (void) override
 デストラクタ
 
virtual GX_FORCE_INLINE void setup (void)
 update()前に毎フレーム呼ぶ準備
 
- Public Member Functions inherited from GxSysBase
template<typename T >
T * getModule (void) const
 モジュールを取得
 
 GxSysBase (void)
 デフォルトコンストラクタ
 
 ~GxSysBase (void) override
 デストラクタ
 
virtual b32 initialize (const GxClassBase *pInitialiInformation=nullptr)
 初期化
 
virtual void terminate (void)
 終了処理
 
b32 isLocked (void)
 クリティカルセクションのロック状態を確認する
 
void sleep (f32 time)
 スリープ(スクリプト用)
 
- Public Member Functions inherited from GxClassBase
constexpr GxClassBase (void)
 コンストラクタ
 
constexpr GxClassBase (const GxClassBase &base)
 コピーコンストラクタ
 
 ~GxClassBase (void) override
 デストラクタ
 
- 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の取得
 
virtual GX_FORCE_INLINE const GxTypedObjectgetDefaultObject (void)
 デフォルトオブジェクトを取得
 
GX_FORCE_INLINE b32 isDefaultObject (void)
 デフォルトオブジェクト判定
 
- Public Member Functions inherited from SingletonBase< GxSysDynamicsBase >
 SingletonBase (void)
 コンストラクタ
 
 ~SingletonBase (void)
 デストラクタ
 

Public Attributes

メンバ変数
GxArrayClassBase _listWorld
 実行するワールドのリスト
 
GxDynamics::GxObject ** _ppObjectCompound
 複合形状作成用
 

Additional Inherited Members

- Static Public Member Functions inherited from GxClassBaseRoot
static GX_FORCE_INLINE GxRtti__getStaticRtti (void)
 Rttiの取得
 
- Static Public Member Functions inherited from SingletonBase< GxSysDynamicsBase >
static GX_FORCE_INLINE GxSysDynamicsBasegetSingleton (void)
 参照を取得
 
static constexpr GxSysDynamicsBasegetSingletonPointer (void)
 ポインタを取得
 
- Protected Types inherited from GxSysBase
enum class  LOCK_TYPE { SEQUENTIAL_THREAD_SAFE , THREAD_SAFE }
 ロックタイプ More...
 
- Protected Member Functions inherited from GxSysBase
void terminateGxModules (void)
 GXモジュールの終了処理
 
void lock (LOCK_TYPE type=LOCK_TYPE::THREAD_SAFE)
 クリティカルセクションに入る
 
void unlock (LOCK_TYPE type=LOCK_TYPE::THREAD_SAFE)
 クリティカルセクションを出る
 
template<typename T >
T * addModule (void)
 モジュールを作成
 
template<typename T >
void removeModule (void)
 モジュールを削除
 

Detailed Description

物理演算システムクラス

Member Function Documentation

◆ addWorld()

b32 GxSysDynamics::addWorld ( GxDynamics::GxWorld * pWorld)

ワールドをリストへ追加

Parameters
pWorld[in] リストへ追加したいワールド
Returns
成功ならtrue
Here is the call graph for this function:

◆ checkWorld()

b32 GxSysDynamics::checkWorld ( GxDynamics::GxWorld * pCheckWorld)

指定ワールドが存在するかどうかチェック

Parameters
pCheckWorld[in] チェックしたいワールド
Returns
存在するならtrue

◆ createObjectFromResource()

GxDynamics::GxObject * GxSysDynamics::createObjectFromResource ( GxResCollisionObject * pRes,
GxDynamics * pDynamics,
GxUnitModelBase * pModel,
GxMatrixAffine * pMatrix,
u32 index )
virtual

リソースから物理データを作成

Note
GxResCollisionObject::GxObjectData::_pExtraDataを 設定するためにはこの関数を継承して使うこと。 関連:GxSysCollision::createExtraData()
Parameters
pRes[in] コリジョンリソース
pDynamics[in] 物理クラスアドレス
pModel[in] セットするモデルユニットのアドレス
pMatrix[in] アタッチしたいマトリックスのアドレス(データを参照する場合はnullptr)
index[in] オブジェクトデータのインデックス
Returns
物理オブジェクト

Reimplemented in GxSysDynamicsBullet.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ eraseWorld()

void GxSysDynamics::eraseWorld ( GxDynamics::GxWorld * pSearchWorld)

指定ワールドをリストから削除

Parameters
pSearchWorld[in] リストから削除したいワールド
Here is the call graph for this function:
Here is the caller graph for this function:

◆ getWorld()

GxDynamics::GxWorld * GxSysDynamics::getWorld ( u32 index)

指定ワールドを取得

Parameters
index[in] 取得したいワールドのインデックス(インデックスはワールドを登録した順番)
Returns
登録されているワールドがあればそのアドレス、なければnullptr
Here is the call graph for this function:
Here is the caller graph for this function:

◆ reCreateAllWorld()

virtual GX_FORCE_INLINE b32 GxSysDynamics::reCreateAllWorld ( void )
inlinevirtual

全ワールドのBtワールド、Nxシーンを削除・再生成

Reimplemented in GxSysDynamicsBullet.

◆ resetWorld()

void GxSysDynamics::resetWorld ( u32 index)

指定したインデックスのワールド状態をリセット

Parameters
index[in] リセットしたいワールドのインデックス(インデックスはワールドを登録した順番)
Here is the call graph for this function:

◆ update()

void GxSysDynamics::update ( void )
overridevirtual

実行

Reimplemented from GxSysBase.

Here is the call graph for this function:

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