12GX_CHARACTER_NAMESPACE_BEGIN()
29 static constexpr u32 INVALID_ID = 0xFFFFFFFF;
31 static const f32 GOAL_RANGE_DEFAULT;
33 static const f32 MEMBER_DISTANCE_DEFAULT;
64 virtual void update(
void);
66 void updateAverage(
void);
69 virtual void developRender(
void);
72 void searchPathAStar(GxPathSet* pPathSet, GxPathSet::GxPathSetArea::SEARCH_TYPE type = GxPathSet::GxPathSetArea::SEARCH_TYPE::NEAR_, GxPathSet::GxPathSetArea::SEARCH_LENGTH length = GxPathSet::GxPathSetArea::SEARCH_LENGTH::SHORT);
74 void setRoute(
GxPathSet* pPathSet, u32 route);
76 virtual b32 checkGoal(f32 goalRange = GOAL_RANGE_DEFAULT);
89 u32
getId(
void)
const {
return _id; }
95 constexpr u32
getNumMember(
void)
const {
return _memberList.getCount(); }
111 void changeLeader(
void);
123 GX_FORCE_INLINE
b32 isPath(
void)
const {
return _pathFlag; }
143 void eraseAllMember(
void);
155 f32 _ratioSeparation;
171GX_CHARACTER_NAMESPACE_END()
#define GX_PROHIBIT_CLASS_BASE(__CLASS__)
GxClassBase継承の禁止宣言
Definition GxBase.h:240
オブジェクト基底クラス
Definition GxBase.h:88
群集
Definition GxFlock.h:18
constexpr void setTargetFlock(GxFlock *pFlock)
ターゲットの群集を設定
Definition GxFlock.h:117
GX_FORCE_INLINE b32 isPath(void) const
パス移動か判定
Definition GxFlock.h:123
constexpr void setRatioCohesion(f32 ratio)
結合ベクトル比率の設定
Definition GxFlock.h:139
GX_FORCE_INLINE b32 isLeader(GxUnitCharacterBase *pUnit) const
リーダーか判定
Definition GxFlock.h:109
GX_FORCE_INLINE const GxVector3 getMoveDirectAverage(void) const
平均移動方向を取得
Definition GxFlock.h:121
GX_FORCE_INLINE GxSysUnit::GxListUnit * getMemberList(void)
メンバーリストを取得
Definition GxFlock.h:105
constexpr void setRatioSeparation(f32 ratio)
引き離しベクトル比率の設定
Definition GxFlock.h:135
constexpr void setRatioAlignment(f32 ratio)
整列ベクトル比率の設定
Definition GxFlock.h:137
constexpr GxFlock * getTargetFlock(void) const
ターゲットの群集を取得
Definition GxFlock.h:115
u32 getId(void) const
IDを取得
Definition GxFlock.h:89
constexpr void setMemberDistance(f32 distance)
メンバー間距離の設定
Definition GxFlock.h:133
GX_FORCE_INLINE b32 isMoveFlock(void) const
群集移動か判定
Definition GxFlock.h:129
constexpr GxUnitCharacterBase * getLeader(void) const
リーダーを取得
Definition GxFlock.h:107
GxSysUnit::GxListUnit _memberList
メンバーリスト
Definition GxFlock.h:151
GX_FORCE_INLINE GxPath * getPath(void)
パスを取得
Definition GxFlock.h:127
GX_FORCE_INLINE void setMoveFlock(b32 flag)
群集移動か設定
Definition GxFlock.h:131
GX_FORCE_INLINE void setPathFlag(b32 flag)
パス移動か設定
Definition GxFlock.h:125
constexpr u32 getNumMember(void) const
メンバー数を取得
Definition GxFlock.h:95
GX_FORCE_INLINE const GxVector3 getPosAverage(void) const
平均座標を取得
Definition GxFlock.h:119
パスクラス
Definition GxPathSet.h:186
経路セットクラス
Definition GxPathSet.h:338
ユニット連結リストクラス
Definition GxSysUnit.h:348
キャラクター基礎ユニット
Definition GxUnitCharacterBase.h:20
指令用構造体定義
Definition GxFlock.h:37
f32 _timeEnd
アクションの終了時間
Definition GxFlock.h:43
u32 _act3
アクション番号3
Definition GxFlock.h:42
f32 _timeWait
発動までの時間
Definition GxFlock.h:38
u32 _act1
アクション番号1
Definition GxFlock.h:40
u32 _index
メンバーのインデックス
Definition GxFlock.h:39
u32 _act2
アクション番号2
Definition GxFlock.h:41
3次元ベクトル
Definition GxVector.h:245
32bitブーリアン
Definition GxDefine.h:173