OROCHI
 
Loading...
Searching...
No Matches
GxModUnitMarker.h
Go to the documentation of this file.
1//===========================================================================
9//===========================================================================
10#pragma once
11
12GX_SHADER_NAMESPACE_BEGIN()
13
14//===========================================================================
16//===========================================================================
18{
19 //-----------------------------------------------------------
21 //-----------------------------------------------------------
23public:
24 GX_RTTI_CLASS(GxModUnitMarker, GxModUnitBase)
25 // ClassBase継承クラス用禁止宣言
27
28
29 enum class MARKER_TYPE
30 {
31 OFF_,
32 FIXED,
33 FIXED_MUL,
34 FIXED_ADD_MUL,
35 BLINK,
36 BLINK_MUL,
37 BLINK_ADD_MUL,
38 EDGE,
39 EDGE_MUL,
40 EDGE_ADD_MUL,
41 BLINK_EDGE,
42 BLINK_EDGE_MUL,
43 BLINK_EDGE_ADD_MUL,
44 MAX,
45 };
46#if GX_DEVELOP
48 GX_ENUM_TABLE_MAX(MARKER_TYPE)
49#endif //GX_DEVELOP
50
52 //-----------------------------------------------------------
54 //-----------------------------------------------------------
56public:
58 GxModUnitMarker(void);
60 ~GxModUnitMarker(void) override;
61
63 //-----------------------------------------------------------
65 //-----------------------------------------------------------
67protected:
69 void postAsyncUpdate(void) override;
71 void render(void) override;
73 b32 setRenderMaterial(GxRenderMaterial* pMaterial) override;
74
76 //-----------------------------------------------------------
78 //-----------------------------------------------------------
80public:
82 GX_FORCE_INLINE static const GxRtti& getOwnerDerivedRtti(void) { return GxUnitModel::GX_RTTI; }
83
85 constexpr MARKER_TYPE getMarkerType(void) const { return _markerType; }
87 constexpr void setMarkerType(MARKER_TYPE type) { _markerType = type; }
89 GX_FORCE_INLINE const GxColorHDR& getMarkerColor(void) const { return _markerColor; }
91 GX_FORCE_INLINE void setMarkerColor(const GxColorHDR& color) { _markerColor = color; }
93 GX_FORCE_INLINE const GxColorHDR& getMarkerMulColor(void) const { return _markerMulColor; }
95 GX_FORCE_INLINE void setMarkerMulColor(const GxColorHDR& color) { _markerMulColor = color; }
97 constexpr f32 getMarkerBlinkSpeed(void) const { return _markerBlinkSpeed; }
99 constexpr void setMarkerBlinkSpeed(f32 speed) { _markerBlinkSpeed = speed; }
100
102 //-----------------------------------------------------------
104 //-----------------------------------------------------------
106private:
107 MARKER_TYPE _markerType;
108 GxColorHDR _markerColor;
109 GxColorHDR _markerMulColor;
110 f32 _markerBlinkTimer;
111 f32 _markerBlinkSpeed;
112
113 static GX_HANDLE _handleMarkerType;
114 static GX_HANDLE _handleMarkerColor;
115 static GX_HANDLE _handleMarkerMulColor;
116
118};
119
120GX_SHADER_NAMESPACE_END()
121
#define GX_PROHIBIT_CLASS_BASE(__CLASS__)
GxClassBase継承の禁止宣言
Definition GxBase.h:240
@ MAX
定義数
u32 GX_HANDLE
ハンドル
Definition GxDefine.h:214
ユニットモジュール基礎クラス
Definition GxModUnitBase.h:22
マーカーモジュールクラス
Definition GxModUnitMarker.h:18
static GX_FORCE_INLINE const GxRtti & getOwnerDerivedRtti(void)
所持者に必要な継承RTTIを取得
Definition GxModUnitMarker.h:82
constexpr f32 getMarkerBlinkSpeed(void) const
マーカー点滅速度を取得
Definition GxModUnitMarker.h:97
constexpr void setMarkerType(MARKER_TYPE type)
マーカータイプを設定
Definition GxModUnitMarker.h:87
constexpr MARKER_TYPE getMarkerType(void) const
マーカータイプを取得
Definition GxModUnitMarker.h:85
GX_FORCE_INLINE void setMarkerMulColor(const GxColorHDR &color)
マーカーカラー(乗算用)を設定
Definition GxModUnitMarker.h:95
GX_FORCE_INLINE const GxColorHDR & getMarkerMulColor(void) const
マーカーカラー(乗算用)を取得
Definition GxModUnitMarker.h:93
constexpr void setMarkerBlinkSpeed(f32 speed)
マーカー点滅速度を設定
Definition GxModUnitMarker.h:99
MARKER_TYPE
マーカーの種類
Definition GxModUnitMarker.h:30
GX_FORCE_INLINE void setMarkerColor(const GxColorHDR &color)
マーカーカラーを設定
Definition GxModUnitMarker.h:91
GX_FORCE_INLINE const GxColorHDR & getMarkerColor(void) const
マーカーカラーを取得
Definition GxModUnitMarker.h:89
マテリアル構造体
Definition GxRenderMaterial.h:18
実行時型情報クラス
Definition GxRtti.h:154
色(HDR)
Definition GxColor.h:241
32bitブーリアン
Definition GxDefine.h:173