13GX_UTILITY_NAMESPACE_BEGIN()
120 virtual void cleanup(
void);
127 virtual void ragdollCallback(
void);
141 void applyImpulse(
const GxVector3& impulse,
const GxVector3& position, s32 index = 0);
151 GX_FORCE_INLINE
virtual void developRender(
void) {}
153 GX_FORCE_INLINE
void healthyResetter(
void) { reset(); }
173 GX_FORCE_INLINE
void setActive(
b32 isActive) {
if( isActive ) reset(); _isActive = isActive; _pRagdoll->setActiveAll(_isActive); }
183 GX_FORCE_INLINE
b32 isDevelopRender(
void)
const {
return _isVisibleDevelop; }
185 GX_FORCE_INLINE
void setDevelopRender(
b32 enable) { _isVisibleDevelop = enable; }
188 constexpr void getBodyMatrix(
void*
const pValue, u32 index) { *(
static_cast<GxMatrixAffine**
>(pValue)) = _pBodyMatrix+index; }
190 GX_FORCE_INLINE
void setBodyMatrix(
const void*
const pValue, u32 index) { *(_pBodyMatrix + index) = **(
static_cast<GxMatrixAffine **
>(
const_cast<void*
>(pValue))); }
193 constexpr u32 getBodyCount(
void)
const {
return _bodyCount; }
195 constexpr void setBodyCount(u32 count){ _bodyCount = count; }
217 b32 _isVisibleDevelop;
223#if PLATFORM_BULLET_SUPPORT
244 GxModUnitRagdollBullet(
void) {}
246 ~GxModUnitRagdollBullet(
void)
override {}
258 void developRender(
void)
override;
277#if PLATFORM_PHYSX_SUPPORT
298 GxModUnitRagdollPhysX(
void) {}
300 ~GxModUnitRagdollPhysX(
void)
override {}
312 void developRender(
void)
override;
331GX_UTILITY_NAMESPACE_END()
GxDynamics 拘束クラス
Definition GxDynamics.h:783
GxDynamics基本オブジェクトクラス
Definition GxDynamics.h:519
GxDynamics 基本ワールドクラス
Definition GxDynamics.h:272
物理演算クラス
Definition GxDynamics.h:27
void(GxClassBaseRoot::*) DYNAMICS_CALLBACK(void)
後処理用コールバック
Definition GxDynamics.h:97
ユニットモジュール基礎クラス
Definition GxModUnitBase.h:22
ラグドールモジュールクラス
Definition GxModUnitRagdoll.h:18
GX_FORCE_INLINE b32 isActive(void) const
アクティブフラグ判定
Definition GxModUnitRagdoll.h:171
constexpr GxDynamics::GxWorld * getRagdollWorld(void) const
ラグドール所属ワールド取得
Definition GxModUnitRagdoll.h:168
GxDynamics * _pRagdoll
物理モジュール
Definition GxModUnitRagdoll.h:208
GxDynamics::GxConstraint ** _ppJointParts
関節ポインタ群
Definition GxModUnitRagdoll.h:211
u32 _bodyCount
剛体個数
Definition GxModUnitRagdoll.h:205
u32 _jointCount
関節個数
Definition GxModUnitRagdoll.h:206
GxMatrixAffine * _pBodyMatrix
剛体用保持行列群
Definition GxModUnitRagdoll.h:213
constexpr GxDynamics * getRagdoll(void) const
ラグドール本体取得
Definition GxModUnitRagdoll.h:166
static GX_FORCE_INLINE const GxRtti & getOwnerDerivedRtti(void)
所持者に必要な継承RTTIを取得
Definition GxModUnitRagdoll.h:163
u32 * _pJointIndex
剛体指定関節インデックス群
Definition GxModUnitRagdoll.h:214
GxDynamics::GxObject ** _ppBodyParts
剛体ポインタ群
Definition GxModUnitRagdoll.h:210
GX_FORCE_INLINE void setActive(b32 isActive)
アクティブフラグ設定
Definition GxModUnitRagdoll.h:173
virtual GX_FORCE_INLINE b32 isRagdollSleeping(void) const
ラグドール剛体の状態判定
Definition GxModUnitRagdoll.h:179
GxDynamics::GxWorld * _pOwnerWorld
所属する物理ワールド
Definition GxModUnitRagdoll.h:209
b32 _isActive
状態変数
Definition GxModUnitRagdoll.h:204
virtual GX_FORCE_INLINE GxDynamics * createDynamicsModule(void)
剛体作成関数
Definition GxModUnitRagdoll.h:147
ラグドールリソースクラス
Definition GxResRagdoll.h:18
実行時型情報クラス
Definition GxRtti.h:154
アフィン変換行列(行優先)
Definition GxMatrix.h:330
剛体データ構造体
Definition GxModUnitRagdoll.h:31
f32 _angularDamping
角速度の減衰
Definition GxModUnitRagdoll.h:41
GxVector3 _length
軸長
Definition GxModUnitRagdoll.h:36
GxVector3 _offset
関節からのオフセット
Definition GxModUnitRagdoll.h:33
f32 _linearVelocityThreshold
線形速度の非アクティブ化閾値
Definition GxModUnitRagdoll.h:42
f32 _friction
摩擦係数
Definition GxModUnitRagdoll.h:38
f32 _mass
重さ
Definition GxModUnitRagdoll.h:37
f32 _linearDamping
線形速度の減衰
Definition GxModUnitRagdoll.h:40
f32 _angularVelocityThreshold
角速度の非アクティブ化閾値
Definition GxModUnitRagdoll.h:43
u32 _jointNumber
貼り付けるモデルの関節番号
Definition GxModUnitRagdoll.h:32
GxVector3 _rotate
剛体の初期姿勢
Definition GxModUnitRagdoll.h:34
GxVector3 _inertiaScale
各剛体の回転しにくさ
Definition GxModUnitRagdoll.h:44
f32 _deactivationTime
非アクティブになるまでの時間
Definition GxModUnitRagdoll.h:39
全体構造体
Definition GxModUnitRagdoll.h:61
GxRagdollBodyCondition * _pBodyCondition
剛体ポインタ
Definition GxModUnitRagdoll.h:64
GxRagdollJointCondition * _pJointCondition
関節ポインタ
Definition GxModUnitRagdoll.h:65
u32 _jointCount
関節数
Definition GxModUnitRagdoll.h:63
u32 _bodyCount
剛体数
Definition GxModUnitRagdoll.h:62
関節(コンストレイント)データ構造体
Definition GxModUnitRagdoll.h:49
f32 _low
最小回転角度 // 円錐ネジリの場合は円錐の開き角度 軸回転
Definition GxModUnitRagdoll.h:54
b32 _isHinge
ヒンジ型フラグ
Definition GxModUnitRagdoll.h:50
f32 _twist
ヒンジでは未使用 // ネジリ最大角度
Definition GxModUnitRagdoll.h:56
f32 _high
最大回転角度 // 円錐ネジリの場合は円錐の開き角度 軸とねじり軸に垂直な軸の回転
Definition GxModUnitRagdoll.h:55
3次元ベクトル
Definition GxVector.h:245
32bitブーリアン
Definition GxDefine.h:173