ユニット基礎クラス More...
#include <GxUnitBase.h>
Public Member Functions | |
初期化 | |
GxUnitBase (void) | |
コンストラクタ | |
void | cleanup (void) override |
解放処理 | |
アクセサ | |
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_VIEW > | getRenderViewFlag (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 GxUnitBase * | getChild (u32 index) const |
子ユニットを取得 | |
constexpr GxUnitBase * | getParent (void) const |
親ユニットを取得 | |
void | setParent (GxUnitBase *pParent) |
親ユニットを設定 | |
constexpr GxResUnitInstance * | getResUnitInstance (void) const |
ユニットインスタンスリソースを取得 | |
void | setResUnitInstance (GxResUnitInstance *pResUnitInstance) |
ユニットインスタンスリソースを設定 | |
constexpr void | getPropertyResUnitInstance (void *const pValue) |
ユニットインスタンスリソースプロパティの取得 | |
void | setPropertyResUnitInstance (const void *const pValue) |
ユニットインスタンスリソースプロパティの設定 | |
GX_FORCE_INLINE const GxTypedObject * | getDefaultObject (void) override |
デフォルトオブジェクトを取得 | |
constexpr GxUnitBase * | getDefaultUnit (void) const |
デフォルトユニットを取得 | |
void | setDefaultUnit (GxUnitBase *pDefaultUnit) |
デフォルトユニットを設定 | |
![]() | |
GxClassBaseReference (void) | |
コンストラクタ | |
GxClassBaseReference (const GxClassBaseReference &base) | |
コピーコンストラクタ | |
~GxClassBaseReference (void) override | |
デストラクタ | |
constexpr GxClassBaseReference & | operator= (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) |
無限解放待ちの設定 | |
![]() | |
constexpr | GxClassBaseRoot (void) |
コンストラクタ | |
constexpr | GxClassBaseRoot (const GxClassBaseRoot &) |
コピーコンストラクタ | |
virtual | ~GxClassBaseRoot (void) |
デストラクタ | |
constexpr GxClassBaseRoot & | operator= (const GxClassBaseRoot &) |
代入演算子 | |
virtual GxRtti & | getRtti (void) const =0 |
Rttiの取得 | |
GX_FORCE_INLINE b32 | isDefaultObject (void) |
デフォルトオブジェクト判定 | |
定義 | |
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... | |
class | GxSysUnit |
操作 | |
void | sleep (f32 time) |
スリープ(スクリプト用) | |
template<typename T > | |
T * | createAndAddChild (u32 listProcessNumber=U32_MAX, u32 listKindNumber=U32_MAX, b32 isSerialize=false, const GxRtti *pRtti=nullptr) |
子ユニットを追加作成 | |
virtual void | kill (void) |
消去リクエスト | |
virtual b32 | setup (void) |
セットアップ(初回にasyncUpdate前に一回呼ばれる) | |
virtual void | preAsyncUpdate (void) |
並列更新(asyncUpdateの前に実行される) | |
virtual void | asyncUpdate (void) |
並列更新 | |
virtual void | postAsyncUpdate (void) |
並列更新(asyncUpdateの後に実行される) | |
virtual void | sequentialUpdate (void) |
逐次更新 | |
virtual void | forceAsyncUpdate (void) |
強制並列更新(pause中も実行) | |
virtual void | render (void) |
描画 | |
virtual b32 | setRenderMaterial (GxRenderMaterial *pMaterial, const GxResModel::GxMeshGroup *pMeshGroup) |
マテリアルの描画設定 | |
template<typename T > | |
T * | addModule (void) |
モジュールを作成 | |
template<typename T > | |
void | removeModule (void) |
モジュールを削除 | |
Additional Inherited Members | |
![]() | |
static void | initializeDelayRelease (void) |
遅延解放リストの初期化 | |
static void | terminateDelayRelease (void) |
遅延解放リストの終了 | |
static void | updateDelayRelease (void) |
遅延解放リストの更新 | |
static b32 | isDelayReleaseEnable (void) |
遅延解放システムの有効判定 | |
static u32 | getDelayReleaseListCount (void) |
遅延解放待ちの数を取得 | |
![]() | |
static GX_FORCE_INLINE GxRtti & | __getStaticRtti (void) |
Rttiの取得 | |
![]() | |
static constexpr s32 | DELAY_RELEASE_COUNT_INFINITY = -1 |
遅延解放の無限待ち定義 | |
![]() | |
s32 | _referenceCount |
参照カウンタ | |
s32 | _delayReleaseCount |
遅延解放カウンタ | |
ユニット基礎クラス
|
strong |
|
protectedvirtual |
並列更新
Reimplemented in GxUnitBackgroundBase, GxUnitCameraBase, GxUnitCameraMotion, GxUnitFade, GxUnitHudImageAnimation, GxUnitHudImageRenderView, GxUnitHudMovie, GxUnitHudScrollbar, GxUnitHudScrollbarHundle, GxUnitHudScrollContent, GxUnitHudScrollView, GxUnitHudScrollViewport, GxUnitHudText, GxUnitLocate, GxUnitMotion, GxUnitMovieCharacter, GxUnitRealTimeDemo, GxUnitRTDCharacter, GxUnitSoftbodySimulation, and GxUnitSound.
|
overridevirtual |
解放処理
Reimplemented from GxClassBaseReference.
Reimplemented in GxUnitCamera, GxUnitCameraMotion, GxUnitChainBase, GxUnitChainModel, GxUnitCharacterBase, GxUnitClothBase, GxUnitClothModel, GxUnitFade, GxUnitFilterCameraMotionBlur, GxUnitFilterDepthOfField, GxUnitFilterGlare, GxUnitFilterObjectMotionBlur, GxUnitFog, GxUnitHudImageAnimation, GxUnitHudImageRender, GxUnitHudMovie, GxUnitHudScrollContent, GxUnitHudText, GxUnitLightProbe, GxUnitLightShadow, GxUnitLocate, GxUnitModelBase, GxUnitMovieCharacter, GxUnitPlateau, GxUnitProjector, GxUnitRealTimeDemo, GxUnitRTDCharacter, GxUnitSoftbodyBase, GxUnitSoftbodyCollision, GxUnitSoftbodySimulation, GxUnitSound, GxUnitSsao, and GxUnitSsr.
|
protectedvirtual |
強制並列更新(pause中も実行)
Reimplemented in GxUnit2DBase, GxUnitCamera, GxUnitCameraBase, GxUnitFilterCameraMotionBlur, GxUnitFilterColorCorrect, GxUnitFilterDepthOfField, GxUnitFilterGlare, GxUnitFilterObjectMotionBlur, GxUnitFog, GxUnitHudScrollbar, GxUnitHudScrollbarHundle, GxUnitHudScrollContent, GxUnitHudScrollView, GxUnitHudScrollViewport, GxUnitHudText, GxUnitLightPoint, GxUnitLightProbe, GxUnitLightShadow, GxUnitLightSpot, GxUnitLocate, GxUnitModel, GxUnitModelBase, GxUnitPlateau, GxUnitPlateau::GxUnitCrosswalk, GxUnitRealTimeDemo, GxUnitRTDCharacter, GxUnitSsao, and GxUnitSsr.
|
inlineoverridevirtual |
デフォルトオブジェクトを取得
Reimplemented from GxClassBaseRoot.
|
virtual |
消去リクエスト
Reimplemented in GxUnitChainModel, GxUnitCharacterBase, GxUnitClothModel, GxUnitLocate, and GxUnitSoftbodySimulation.
|
protectedvirtual |
並列更新(asyncUpdateの後に実行される)
Reimplemented in GxUnitCameraBase, GxUnitChainModel, GxUnitClothModel, GxUnitModel, GxUnitSoftbodyBase, and GxUnitSoftbodyCollision.
|
protectedvirtual |
並列更新(asyncUpdateの前に実行される)
Reimplemented in GxUnit2DBase, GxUnitCharacterBase, GxUnitLocate, and GxUnitModelBase.
|
protectedvirtual |
描画
Reimplemented in GxUnit2DBase, GxUnitFade, GxUnitLocate, GxUnitModelBase, GxUnitProjector, GxUnitSoftbodyBase, GxUnitSoftbodyCollision, and GxUnitSound.
|
protectedvirtual |
逐次更新
Reimplemented in GxUnitCameraFreeView, GxUnitHudText, GxUnitRealTimeDemo, and GxUnitSoftbodySimulation.
void GxUnitBase::setDefaultUnit | ( | GxUnitBase * | pDefaultUnit | ) |
デフォルトユニットを設定
pDefaultUnit | [in] デフォルトユニット |
void GxUnitBase::setParent | ( | GxUnitBase * | pParent | ) |
親ユニットを設定
pParent | [in] 親ユニット |
void GxUnitBase::setPropertyResUnitInstance | ( | const void *const | pValue | ) |
ユニットインスタンスリソースプロパティの設定
pValue | [in] ユニットインスタンスリソース |
描画フラグを設定
enable | [in] 描画するならtrue |
withChildren | [in] 子にも設定するならtrue |
|
protectedvirtual |
マテリアルの描画設定
pMaterial | [in] マテリアル |
pMeshGroup | [in] メッシュグループ |
Reimplemented in GxUnitModel, and GxUnitModelBase.
void GxUnitBase::setResUnitInstance | ( | GxResUnitInstance * | pResUnitInstance | ) |
ユニットインスタンスリソースを設定
pResUnitInstance | [in] ユニットインスタンスリソース |
|
protectedvirtual |
セットアップ(初回にasyncUpdate前に一回呼ばれる)
Reimplemented in GxUnit2DBase, GxUnitCameraBase, GxUnitCameraFreeView, GxUnitCameraMotion, GxUnitChainBase, GxUnitChainModel, GxUnitCharacterBase, GxUnitClothBase, GxUnitClothModel, GxUnitHudScrollbar, GxUnitHudScrollbarHundle, GxUnitHudScrollContent, GxUnitHudScrollView, GxUnitHudScrollViewport, GxUnitLightProbe, GxUnitLightShadow, GxUnitLocate, GxUnitModelBase, and GxUnitPlateau.
void GxUnitBase::sleep | ( | f32 | time | ) |
スリープ(スクリプト用)
time | [in] 秒数 |