OROCHI
 
Loading...
Searching...
No Matches
GxModUnitCurvePlay.h
1//===========================================================================
9//===========================================================================
10#pragma once
11
12GX_CORE_NAMESPACE_BEGIN()
13
14class GxCurvePlay;
15class GxResCurveKey;
16#if GX_DEVELOP
17class GxGuiButton;
18class GxGuiPropertySlider;
19class GxGuiPropertyComboBoxEnum;
20#endif // GX_DEVELOP
21
22//===========================================================================
24//===========================================================================
26{
27 //-----------------------------------------------------------
29 //-----------------------------------------------------------
31public:
32 GX_RTTI_CLASS_NAME(GxModUnitCurvePlayList, GxModUnitBase, "カーブ再生")
33 // GxClassBase継承クラス用禁止宣言
35
36
37 //-----------------------------------------------------------
39 //-----------------------------------------------------------
41public:
45 ~GxModUnitCurvePlayList( void ) override;
46
48 //-------------------------------------------------------------
50 //-------------------------------------------------------------
52protected:
54 b32 setup( void ) override;
55
56public:
60 void removeAll( void );
61
63 void asyncUpdate( void ) override;
64
66 void playAll( b32 isReverse = false );
68 void stopAll( void );
69
70private:
72 void propertyAddListCallback( GxClassBaseRoot* pValue );
73
74protected:
75#if GX_DEVELOP
77 static GxGuiBase* createGui( GxProperty& property, GxTypedObject* pOwner, const GxRtti& rtti, u32 index );
78#endif //GX_DEVELOP
79
81 //-----------------------------------------------------------
83 //-----------------------------------------------------------
85public:
87 GX_FORCE_INLINE GxCurvePlay* getCurvePlay(u32 index) { GX_ASSERT(index < _array.getCount(), "index over"); return reinterpret_cast<GxCurvePlay*>(_array[index]); }
89 constexpr u32 getArrayCount( void ) { return _array.getCount(); }
90
92 //-----------------------------------------------------------
94 //-----------------------------------------------------------
96private:
97 GxArrayClassBase _array;
98
100};
101
102//===========================================================================
104//===========================================================================
105class GxCurve : public GxClassBase
106{
107 //-----------------------------------------------------------
109 //-----------------------------------------------------------
111public:
112 GX_RTTI_CLASS(GxCurve, GxClassBase)
113 // GxClassBase継承クラス用禁止宣言
115
116
117 enum class EASING_TYPE
118 {
119 LINEAR,
120 IN_SIGN,
121 OUT_SIGN,
122 INOUT_SIGN,
123 IN_QUAD,
124 OUT_QUAD,
125 INOUT_QUAD,
126 IN_CUBIC,
127 OUT_CUBIC,
129 IN_QUART,
130 OUT_QUART,
132 IN_QUINT,
133 OUT_QUINT,
135 IN_EXPO,
136 OUT_EXPO,
137 INOUT_EXPO,
138 IN_CIRC,
139 OUT_CIRC,
140 INOUT_CIRC,
141 IN_BACK,
142 OUT_BACK,
143 INOUT_BACK,
144 IN_ELASTIC,
147 IN_BOUNCE,
148 OUT_BOUNCE,
150 MAX,
151 };
152#if GX_DEVELOP
154 GX_ENUM_TABLE(EASING_TYPE)
155#endif //GX_DEVELOP
156
158 //-----------------------------------------------------------
160 //-----------------------------------------------------------
162public:
164 GxCurve( void );
165
167 ~GxCurve( void ) override;
168
170 //-----------------------------------------------------------
172 //-----------------------------------------------------------
174public:
176 f32 getValue( f32 duration, f32 currentDuration );
177
178protected:
180 void getPropertyCurvePlayResource( void* const pValue );
182 void setPropertyCurvePlayResource( const void* const pValue );
183
185 //-----------------------------------------------------------
187 //-----------------------------------------------------------
189public:
191 constexpr EASING_TYPE getEasingType( void ) const { return _easingType; }
193 constexpr void setEasingType( const EASING_TYPE easingType ) { _easingType = easingType; }
195 constexpr GxResCurveKey* getCurveKeyResource( void ) { return _pResCurveKey; }
197 constexpr void setCurveKeyResource(GxResCurveKey* pRes ) { _pResCurveKey = pRes; }
199 constexpr f32 getScaleFactorValue( void ) const { return _scaleFactorValue; }
201 constexpr void setScaleFactorValue( f32 value ) { _scaleFactorValue = value; }
203 constexpr f32 getOffsetValue( void ) const { return _offsetValue; }
205 constexpr void setOffsetValue( f32 value ) { _offsetValue = value; }
206
207#if GX_DEVELOP
209 constexpr GxGuiPropertyComboBoxEnum* getGuiEasingType( void ) { return _pGuiEasingType; }
210#endif // GX_DEVELOP
211
212private:
214 constexpr f32 getEasingFactorValue1( void ) const { return 1.70158f; }
216 constexpr f32 getEasingFactorValue2( void ) const { return getEasingFactorValue1() * 1.525f; }
218 constexpr f32 getEasingFactorValue3( void ) const { return getEasingFactorValue1() + 1.f; }
220 constexpr f32 getEasingFactorValue4( void ) const { return (2.f * PI) / 3.f; }
222 constexpr f32 getEasingFactorValue5( void ) const { return (2.f * PI) / 4.5f; }
223
225 GX_FORCE_INLINE f32 getValueInSine( f32 time ) const { return 1.f - GxMath::getCos((time * PI) / 2.f); }
227 GX_FORCE_INLINE f32 getValueOutSine( f32 time ) const { return GxMath::getSin((time * PI) / 2.f); }
229 GX_FORCE_INLINE f32 getValueInOutSine( f32 time ) const { return -(GxMath::getCos(PI * time) - 1.f) / 2.f; }
231 constexpr f32 getValueInQuad( f32 time ) const { return time * time; }
233 constexpr f32 getValueOutQuad( f32 time ) const { return 1.f - (1.f - time) * (1.f - time); }
235 GX_FORCE_INLINE f32 getValueInOutQuad( f32 time ) const { return time < 0.5f ? 2.f * time * time : 1 - GxMath::getPow(-2.f * time + 2.f, 2.f) / 2.f; }
237 constexpr f32 getValueInCubic( f32 time ) const { return time * time * time; }
239 GX_FORCE_INLINE f32 getValueOutCubic( f32 time ) const { return 1.f - GxMath::getPow(1.f - time, 3.f); }
241 GX_FORCE_INLINE f32 getValueInOutCubic( f32 time ) const { return time < 0.5f ? 4.f * time * time * time : 1.f - GxMath::getPow(-2.f * time + 2.f, 3.f) / 2.f; }
243 constexpr f32 getValueInQuart( f32 time ) const { return time * time * time * time; }
245 GX_FORCE_INLINE f32 getValueOutQuart( f32 time ) const { return 1.f - GxMath::getPow(1.f - time, 4.f); }
247 GX_FORCE_INLINE f32 getValueInOutQuart( f32 time ) const { return time < 0.5f ? 8.f * time * time * time * time : 1.f - GxMath::getPow(-2.f * time + 2.f, 4.f) / 2.f; }
249 constexpr f32 getValueInQuint( f32 time ) const { return time * time * time * time; }
251 GX_FORCE_INLINE f32 getValueOutQuint( f32 time ) const { return 1.f - GxMath::getPow(1.f - time, 5.f); }
253 GX_FORCE_INLINE f32 getValueInOutQuint( f32 time ) const { return time < 0.5f ? 16.f * time * time * time * time * time : 1.f - GxMath::getPow(-2.f * time + 2.f, 5.f) / 2; }
255 GX_FORCE_INLINE f32 getValueInExpo( f32 time ) const { return time == 0.f ? 0.f : GxMath::getPow(2.f, 10.f * time - 10.f); }
257 GX_FORCE_INLINE f32 getValueOutExpo( f32 time ) const { return time == 1.f ? 1.f : 1.f - GxMath::getPow(2.f, -10.f * time); }
259 f32 getValueInOutExpo(f32 time) const;
261 GX_FORCE_INLINE f32 getValueInCirc( f32 time ) const { return 1.f - GxMath::getSqrt(1.f - GxMath::getPow(time, 2.f)); }
263 GX_FORCE_INLINE f32 getValueOutCirc( f32 time ) const { return GxMath::getSqrt(1.f - GxMath::getPow(time - 1.f, 2.f)); }
265 GX_FORCE_INLINE f32 getValueInOutCirc( f32 time ) const { return time < 0.5 ? (1.f - GxMath::getSqrt(1.f - GxMath::getPow(2.f * time, 2.f))) / 2.f : (GxMath::getSqrt(1.f - GxMath::getPow(-2.f * time + 2.f, 2.f)) + 1.f) / 2.f; }
267 constexpr f32 getValueInBack( f32 time ) const { return getEasingFactorValue3() * time * time * time - getEasingFactorValue1() * time * time; }
269 GX_FORCE_INLINE f32 getValueOutBack( f32 time ) const { return 1.f + getEasingFactorValue3() * GxMath::getPow(time - 1.f, 3.f) + getEasingFactorValue1() * GxMath::getPow(time - 1.f, 2.f); }
271 GX_FORCE_INLINE f32 getValueInOutBack( f32 time ) const { return time < 0.5f ? (GxMath::getPow(2.f * time, 2.f) * ((getEasingFactorValue2() + 1.f) * 2.f * time - getEasingFactorValue2())) / 2.f : (GxMath::getPow(2.f * time - 2.f, 2.f) * ((getEasingFactorValue2() + 1.f) * (time * 2.f - 2.f) + getEasingFactorValue2()) + 2.f) / 2.f; }
273 f32 getValueInElastic(f32 time) const;
275 f32 getValueOutElastic(f32 time) const;
277 f32 getValueInOutElastic(f32 time) const;
279 GX_FORCE_INLINE f32 getValueInBounce( f32 time ) const { return 1.f - getValueOutBounce(1.f - time); }
281 f32 getValueOutBounce(f32 time) const;
283 GX_FORCE_INLINE f32 getValueInOutBounce( f32 time ) const { return time < 0.5f ? (1.f - getValueOutBounce(1.f - 2.f * time)) / 2.f : (1.f + getValueOutBounce(2.f * time - 1.f)) / 2.f; }
284
286 //-----------------------------------------------------------
288 //-----------------------------------------------------------
290private:
291 EASING_TYPE _easingType;
292 GxResCurveKey* _pResCurveKey;
293
294 f32 _scaleFactorValue;
295 f32 _offsetValue;
296
297#if GX_DEVELOP
298 GxGuiPropertyComboBoxEnum* _pGuiEasingType;
299#endif // GX_DEVELOP
300
302};
303
304//===========================================================================
306//===========================================================================
308{
309 //-----------------------------------------------------------
311 //-----------------------------------------------------------
313public:
314 GX_RTTI_CLASS(GxCurvePlay, GxClassBase)
315 // GxClassBase継承クラス用禁止宣言
317
318
319 enum class PLAY_STATE
320 {
321 PLAY,
322 STOP,
323 PAUSE,
324 MAX,
325 };
326#if GX_DEVELOP
328 GX_ENUM_TABLE_MAX(PLAY_STATE)
329#endif //GX_DEVELOP
330
332 enum class LOOP_TYPE
333 {
334 NONE,
335 YOYO,
336 RESTART,
337 MAX,
338 };
339#if GX_DEVELOP
341 GX_ENUM_TABLE_MAX(LOOP_TYPE)
342#endif //GX_DEVELOP
343
345 //-----------------------------------------------------------
347 //-----------------------------------------------------------
349public:
351 GxCurvePlay( void );
352
354 ~GxCurvePlay(void) override {}
355
357 //-----------------------------------------------------------
359 //-----------------------------------------------------------
361public:
363 void setPlayF32( GxTypedObject* pOwner, GxProperty* pProperty, f32 endValue, f32 duration, f32 delay = 0.f, b32 isAutoPlay = true, LOOP_TYPE loopType = LOOP_TYPE::NONE );
365 void setPlayVector2( GxTypedObject* pOwner, GxProperty* pProperty, const GxVector2& endValue, f32 duration, f32 delay = 0.f, b32 isAutoPlay = true, LOOP_TYPE loopType = LOOP_TYPE::NONE );
367 void setPlayVector3( GxTypedObject* pOwner, GxProperty* pProperty, const GxVector3& endValue, f32 duration, f32 delay = 0.f, b32 isAutoPlay = true, LOOP_TYPE loopType = LOOP_TYPE::NONE );
369 void setPlayVector4( GxTypedObject* pOwner, GxProperty* pProperty, const GxVector4& endValue, f32 duration, f32 delay = 0.f, b32 isAutoPlay = true, LOOP_TYPE loopType = LOOP_TYPE::NONE );
371 void setPlayColor( GxTypedObject* pOwner, GxProperty* pProperty, const GxColor& endValue, f32 duration, f32 delay = 0.f, b32 isAutoPlay = true, LOOP_TYPE loopType = LOOP_TYPE::NONE );
373 void setPlayColorHDR( GxTypedObject* pOwner, GxProperty* pProperty, const GxColorHDR& endValue, f32 duration, f32 delay = 0.f, b32 isAutoPlay = true, LOOP_TYPE loopType = LOOP_TYPE::NONE );
374
376 void update( f32 deltaTime );
377
379 void play( b32 isReverse = false );
381 void playDurationRate( b32 isReverse, f32 durationRate );
383 void stop( void );
385 void pause( void );
386
387private:
389 void setPlayInner( GxTypedObject* pOwner, GxProperty* pProperty, f32 duration, f32 delay, b32 isAutoPlay, LOOP_TYPE loopType );
391 void playInner( void );
392
394 void propertySelectCallback( GxProperty* pProperty, GxProperty* pChildProperty );
395
396protected:
397#if GX_DEVELOP
399 static GxGuiBase* createGui( GxProperty& property, GxTypedObject* pOwner, const GxRtti& rtti, u32 index );
400#endif // GX_DEVELOP
401
403 //-----------------------------------------------------------
405 //-----------------------------------------------------------
407public:
409 GX_FORCE_INLINE b32 isPlayState(PLAY_STATE state) const { return _playState == state; }
410
412 GX_FORCE_INLINE const GxCurve& getCurve( void ) const { return _curve; }
413
415 constexpr void setOwner( GxTypedObject* pOwner ) { _pOwner = pOwner; }
416
418 constexpr LOOP_TYPE getLoopType( void ) const { return _loopType; }
420 constexpr void setLoopType( const LOOP_TYPE loopType ) { _loopType = loopType; }
422 constexpr f32 getDelay( void ) const { return _delay; }
424 constexpr void setDelay( const f32 delay ) { _delay = delay; }
425
427 //-----------------------------------------------------------
429 //-----------------------------------------------------------
431private:
432 GxCurve _curve;
433 LOOP_TYPE _loopType;
434 f32 _duration;
435 f32 _delay;
436 f32 _playDurationRate;
437
438 f32 _oldDuration;
439 f32 _oldDelay;
440 f32 _currentDuration;
441 f32 _currentDelay;
442
443 GxProperty* _pProperty;
444 GxProperty* _pChildProperty;
445 GxTypedObject* _pOwner;
446
447 b32 _isUseCurveStartEnd;
448 f32 _startF32;
449 f32 _endF32;
450 GxVector2 _startVector2;
451 GxVector2 _endVector2;
452 GxVector3 _startVector3;
453 GxVector3 _endVector3;
454 GxVector4 _startVector4;
455 GxVector4 _endVector4;
456 GxColor _startColor;
457 GxColor _endColor;
458 GxColorHDR _startColorHDR;
459 GxColorHDR _endColorHDR;
460
461 b32 _isReverse;
462 PLAY_STATE _playState;
463
464#if GX_DEVELOP
465 GxGuiPropertySlider* _pGuiCurrentDuration;
466 GxGuiButton* _pGuiPlay;
467 GxGuiButton* _pGuiPause;
468#endif // GX_DEVELOP
469
471};
472
473//===========================================================================
475//===========================================================================
477{
478 //-----------------------------------------------------------
480 //-----------------------------------------------------------
482public:
483 GX_RTTI_CLASS(GxCurveKey, GxClassBase)
484 // GxClassBase継承クラス用禁止宣言
486
487
488 enum class CURVE_TYPE
489 {
490 FREE,
491 LINEAR,
492 CONSTANT,
493 MAX,
494 };
495#if GX_DEVELOP
497 GX_ENUM_TABLE_MAX(CURVE_TYPE)
498#endif //GX_DEVELOP
499
501 //-----------------------------------------------------------
503 //-----------------------------------------------------------
505public:
507 GxCurveKey( void );
509 GxCurveKey( f32 value, f32 time );
510
512 //-----------------------------------------------------------
514 //-----------------------------------------------------------
516public:
518 void setTime(f32 time);
520 void setValue( f32 value );
522 void setHandleRenderScale( f32 scaleX, f32 scaleY );
524 void setHandleRotationValue( f32 value );
525
526private:
528 void updateHandlePosition( void );
529
531 //-----------------------------------------------------------
533 //-----------------------------------------------------------
535public:
537 constexpr f32 getTime(void) const { return _time; }
539 constexpr f32 getValue( void ) const { return _value; }
541 GX_FORCE_INLINE const GxVector2& getHandleStartPosition( void ) const { return _handleStartPosition; }
543 GX_FORCE_INLINE const GxVector2& getHandleEndPosition( void ) const { return _handleEndPosition; }
545 constexpr CURVE_TYPE getCurveType(void) const { return _curveType; }
546
548 //-----------------------------------------------------------
550 //-----------------------------------------------------------
552private:
553 f32 _time;
554 f32 _value;
555 f32 _handleRotationValue;
556 GxVector2 _handleRenderScale;
557 GxVector2 _handleStartPosition;
558 GxVector2 _handleEndPosition;
559 CURVE_TYPE _curveType;
560
562};
563
564GX_CORE_NAMESPACE_END()
#define GX_PROHIBIT_CLASS_BASE(__CLASS__)
GxClassBase継承の禁止宣言
Definition GxBase.h:240
void GxTypedObject
その他
Definition GxDefine.h:213
配列クラス
Definition GxArrayClassBase.h:18
constexpr u32 getCount(void) const
配列数を取得
Definition GxArrayClassBase.h:109
オブジェクト基底クラス
Definition GxBase.h:88
基底クラス
Definition GxBase.h:51
カーブクラス
Definition GxModUnitCurvePlay.h:106
constexpr void setEasingType(const EASING_TYPE easingType)
イージング種類設定
Definition GxModUnitCurvePlay.h:193
constexpr void setScaleFactorValue(f32 value)
スケール係数設定
Definition GxModUnitCurvePlay.h:201
GxCurve(void)
デフォルトコンストラクタ
Definition GxModUnitCurvePlay.cpp:885
constexpr void setOffsetValue(f32 value)
補正値設定
Definition GxModUnitCurvePlay.h:205
f32 getValue(f32 duration, f32 currentDuration)
値取得
Definition GxModUnitCurvePlay.cpp:910
constexpr f32 getOffsetValue(void) const
補正値取得
Definition GxModUnitCurvePlay.h:203
constexpr EASING_TYPE getEasingType(void) const
イージング種類取得
Definition GxModUnitCurvePlay.h:191
~GxCurve(void) override
デストラクタ
Definition GxModUnitCurvePlay.cpp:899
EASING_TYPE
イージング
Definition GxModUnitCurvePlay.h:118
@ INOUT_QUART
INOUT_QUART.
@ OUT_CUBIC
OUT_CUBIC.
@ INOUT_CIRC
INOUT_CIRC.
@ OUT_ELASTIC
OUT_ELASTIC.
@ INOUT_QUINT
INOUT_QUINT.
@ INOUT_ELASTIC
INOUT_ELASTIC.
@ INOUT_QUAD
INOUT_QUAD.
@ INOUT_CUBIC
INOUT_CUBIC.
@ INOUT_BOUNCE
INOUT_BOUNCE.
@ INOUT_SIGN
INOUT_SIGN.
@ INOUT_BACK
INOUT_BACK.
@ OUT_BOUNCE
OUT_BOUNCE.
@ OUT_QUINT
OUT_QUINT.
@ INOUT_EXPO
INOUT_EXPO.
@ IN_ELASTIC
IN_ELASTIC.
@ IN_BOUNCE
IN_BOUNCE.
@ OUT_QUART
OUT_QUART.
constexpr GxResCurveKey * getCurveKeyResource(void)
カーブ再生リソース取得
Definition GxModUnitCurvePlay.h:195
void getPropertyCurvePlayResource(void *const pValue)
カーブ再生リソース取得
Definition GxModUnitCurvePlay.cpp:1038
constexpr f32 getScaleFactorValue(void) const
スケール係数取得
Definition GxModUnitCurvePlay.h:199
void setPropertyCurvePlayResource(const void *const pValue)
カーブ再生リソース設定
Definition GxModUnitCurvePlay.cpp:1047
constexpr void setCurveKeyResource(GxResCurveKey *pRes)
カーブ再生リソース設定
Definition GxModUnitCurvePlay.h:197
カーブキークラス
Definition GxModUnitCurvePlay.h:477
constexpr CURVE_TYPE getCurveType(void) const
カーブ種類を取得
Definition GxModUnitCurvePlay.h:545
void setValue(f32 value)
値を設定
Definition GxModUnitCurvePlay.cpp:1236
constexpr f32 getValue(void) const
値を取得
Definition GxModUnitCurvePlay.h:539
void setTime(f32 time)
時間を設定
Definition GxModUnitCurvePlay.cpp:1246
GX_FORCE_INLINE const GxVector2 & getHandleStartPosition(void) const
ハンドル始点座標を取得
Definition GxModUnitCurvePlay.h:541
CURVE_TYPE
カーブ種類
Definition GxModUnitCurvePlay.h:489
void setHandleRotationValue(f32 value)
ハンドル回転値を設定
Definition GxModUnitCurvePlay.cpp:1268
GxCurveKey(void)
デフォルトコンストラクタ
Definition GxModUnitCurvePlay.cpp:1207
void setHandleRenderScale(f32 scaleX, f32 scaleY)
ハンドル描画倍率を設定
Definition GxModUnitCurvePlay.cpp:1257
constexpr f32 getTime(void) const
時間を取得
Definition GxModUnitCurvePlay.h:537
GX_FORCE_INLINE const GxVector2 & getHandleEndPosition(void) const
ハンドル終点座標を取得
Definition GxModUnitCurvePlay.h:543
カーブ再生クラス
Definition GxModUnitCurvePlay.h:308
void setPlayVector4(GxTypedObject *pOwner, GxProperty *pProperty, const GxVector4 &endValue, f32 duration, f32 delay=0.f, b32 isAutoPlay=true, LOOP_TYPE loopType=LOOP_TYPE::NONE)
再生設定
Definition GxModUnitCurvePlay.cpp:315
constexpr f32 getDelay(void) const
待ち時間取得
Definition GxModUnitCurvePlay.h:422
constexpr void setDelay(const f32 delay)
待ち時間設定
Definition GxModUnitCurvePlay.h:424
LOOP_TYPE
ループ
Definition GxModUnitCurvePlay.h:333
@ RESTART
始点から再生
@ YOYO
始点に戻る
void setPlayF32(GxTypedObject *pOwner, GxProperty *pProperty, f32 endValue, f32 duration, f32 delay=0.f, b32 isAutoPlay=true, LOOP_TYPE loopType=LOOP_TYPE::NONE)
再生設定
Definition GxModUnitCurvePlay.cpp:251
PLAY_STATE
再生状態
Definition GxModUnitCurvePlay.h:320
void stop(void)
停止
Definition GxModUnitCurvePlay.cpp:538
GX_FORCE_INLINE const GxCurve & getCurve(void) const
カーブクラス取得
Definition GxModUnitCurvePlay.h:412
void setPlayColor(GxTypedObject *pOwner, GxProperty *pProperty, const GxColor &endValue, f32 duration, f32 delay=0.f, b32 isAutoPlay=true, LOOP_TYPE loopType=LOOP_TYPE::NONE)
再生設定
Definition GxModUnitCurvePlay.cpp:337
constexpr void setLoopType(const LOOP_TYPE loopType)
ループ種類設定
Definition GxModUnitCurvePlay.h:420
void setPlayVector2(GxTypedObject *pOwner, GxProperty *pProperty, const GxVector2 &endValue, f32 duration, f32 delay=0.f, b32 isAutoPlay=true, LOOP_TYPE loopType=LOOP_TYPE::NONE)
再生設定
Definition GxModUnitCurvePlay.cpp:271
void playDurationRate(b32 isReverse, f32 durationRate)
再生
Definition GxModUnitCurvePlay.cpp:529
~GxCurvePlay(void) override
デストラクタ
Definition GxModUnitCurvePlay.h:354
constexpr void setOwner(GxTypedObject *pOwner)
オーナー設定
Definition GxModUnitCurvePlay.h:415
void play(b32 isReverse=false)
再生
Definition GxModUnitCurvePlay.cpp:508
void setPlayColorHDR(GxTypedObject *pOwner, GxProperty *pProperty, const GxColorHDR &endValue, f32 duration, f32 delay=0.f, b32 isAutoPlay=true, LOOP_TYPE loopType=LOOP_TYPE::NONE)
再生設定
Definition GxModUnitCurvePlay.cpp:359
GX_FORCE_INLINE b32 isPlayState(PLAY_STATE state) const
再生状態判定
Definition GxModUnitCurvePlay.h:409
void setPlayVector3(GxTypedObject *pOwner, GxProperty *pProperty, const GxVector3 &endValue, f32 duration, f32 delay=0.f, b32 isAutoPlay=true, LOOP_TYPE loopType=LOOP_TYPE::NONE)
再生設定
Definition GxModUnitCurvePlay.cpp:293
void update(f32 deltaTime)
更新
Definition GxModUnitCurvePlay.cpp:375
constexpr LOOP_TYPE getLoopType(void) const
ループ種類取得
Definition GxModUnitCurvePlay.h:418
GxCurvePlay(void)
デフォルトコンストラクタ
Definition GxModUnitCurvePlay.cpp:216
void pause(void)
一時停止
Definition GxModUnitCurvePlay.cpp:563
算術演算クラス
Definition GxMath.h:84
static GX_FORCE_INLINE f32 getCos(const f32 radian)
余弦を取得(f32)
Definition GxMath.h:212
static GX_FORCE_INLINE f32 getSqrt(const f32 value)
平方根を取得(f32)
Definition GxMath.h:259
static GX_FORCE_INLINE f32 getSin(const f32 radian)
正弦を取得(f32)
Definition GxMath.h:205
static GX_FORCE_INLINE f32 getPow(const f32 value, const f32 n)
n乗を取得(f32)
Definition GxMath.h:273
ユニットモジュール基礎クラス
Definition GxModUnitBase.h:22
カーブ再生リストモジュールクラス
Definition GxModUnitCurvePlay.h:26
GX_FORCE_INLINE GxCurvePlay * getCurvePlay(u32 index)
カーブ再生モジュールを取得
Definition GxModUnitCurvePlay.h:87
constexpr u32 getArrayCount(void)
配列数取得
Definition GxModUnitCurvePlay.h:89
void playAll(b32 isReverse=false)
全再生
Definition GxModUnitCurvePlay.cpp:107
void removeAll(void)
全削除
Definition GxModUnitCurvePlay.cpp:76
void stopAll(void)
全停止
Definition GxModUnitCurvePlay.cpp:119
~GxModUnitCurvePlayList(void) override
デストラクタ
Definition GxModUnitCurvePlay.cpp:35
GxCurvePlay * createAndAddBottom(void)
カーブ再生モジュールを作成してリストに追加する
Definition GxModUnitCurvePlay.cpp:62
b32 setup(void) override
セットアップ
Definition GxModUnitCurvePlay.cpp:44
void asyncUpdate(void) override
並列更新
Definition GxModUnitCurvePlay.cpp:90
GxModUnitCurvePlayList(void)
デフォルトコンストラクタ
Definition GxModUnitCurvePlay.cpp:27
プロパティクラス
Definition GxProperty.h:48
カーブキーリソース
Definition GxResCurveKey.h:18
実行時型情報クラス
Definition GxRtti.h:154
色(HDR)
Definition GxColor.h:241
Definition GxColor.h:21
2次元ベクトル
Definition GxVector.h:34
3次元ベクトル
Definition GxVector.h:245
4次元ベクトル
Definition GxVector.h:582
32bitブーリアン
Definition GxDefine.h:173