123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161 |
- //
- // EditorDatas.h
- // cocos2d_libs
- //
- // Created by 徐俊杰 on 2021/1/14.
- //
- #ifndef EditorDatas_h
- #define EditorDatas_h
- #include <vector>
- #include "rparticle/Macros/RParticleMacros.h"
- #include "rparticle/ParticleSystemCurves.h"
- #include "rparticle/ParticleSystemGradients.h"
- NS_RRP_BEGIN
- // ====== MinMaxCurveData Begin ======
- struct KeyframeData {
- KeyframeData()
- : time(0)
- , value(0)
- , inSlope(0)
- , outSlope(0)
- , tangentMode(0)
- {}
- KeyframeData(float _time, float _value, float _inSlope, float _outSlope)
- : time(_time)
- , value(_value)
- , inSlope(_inSlope)
- , outSlope(_outSlope)
- , tangentMode(0)
- {}
- KeyframeData(float _time, float _value, float _inSlope, float _outSlope, int _tangentMode)
- : time(_time)
- , value(_value)
- , inSlope(_inSlope)
- , outSlope(_outSlope)
- , tangentMode(_tangentMode)
- {}
- float time;
- float value;
- float inSlope;
- float outSlope;
- int tangentMode = 0;// editor use
- };
- struct AnimationCurveData {
- AnimationCurveData()
- : m_PreInfinity(0)
- , m_PostInfinity(0)
- {}
- AnimationCurveData(int _preInfinity, int _postInfinity)
- : m_PreInfinity(_preInfinity)
- , m_PostInfinity(_postInfinity)
- {}
-
- std::vector<KeyframeData> m_Curve;
- int m_PreInfinity;
- int m_PostInfinity;
- };
- struct MinMaxCurveData {
- MinMaxCurveData()
- : minMaxState(kMMCScalar)
- , scalar(0)
- {}
- MinMaxCurveData(MinMaxCurveState _minMaxState, float _scalar, const AnimationCurveData& _minCurve, const AnimationCurveData& _maxCurve)
- : minMaxState(_minMaxState)
- , scalar(_scalar)
- , minCurve(_minCurve)
- , maxCurve(_maxCurve)
- {}
- float scalar;
- AnimationCurveData maxCurve;
- AnimationCurveData minCurve;
- MinMaxCurveState minMaxState;
- };
- // ====== MinMaxCurveData End ======
- // ====== MinMaxGradientData Begin ======
- struct Color3BData {
- Color3BData()
- : time(0)
- {}
- Color3BData(UInt16 _time, const cocos2d::Color3B& _color)
- : time(_time)
- , color(_color)
- {}
-
- UInt16 time;
- cocos2d::Color3B color;
- };
- struct AlphaData {
- AlphaData()
- : time(0)
- , alpha(0)
- {}
- AlphaData(UInt16 _time, UInt16 _alpha)
- : time(_time)
- , alpha(_alpha)
- {}
-
- UInt16 time;
- UInt16 alpha;
- };
- struct GradientNEWData {
- // ColorRGBA32 m_Keys[8];
- // UInt16 m_ColorTime[8];
- // UInt16 m_AlphaTime[8];
- // UInt8 m_NumColorKeys;
- // UInt8 m_NumAlphaKeys;
- std::vector<Color3BData> m_Color; // 最大长度为8
- std::vector<AlphaData> m_Alpha; // 最大长度为8
- };
- struct MinMaxGradientData {
- MinMaxGradientData()
- : minMaxState(kMMGColor)
- {}
- MinMaxGradientData(MinMaxGradientState _minMaxState, ColorRGBA32 _minColor, ColorRGBA32 _maxColor, GradientNEWData _minGradient, GradientNEWData _maxGradient)
- : minMaxState(_minMaxState)
- , minColor(_minColor)
- , maxColor(_maxColor)
- , minGradient(_minGradient)
- , maxGradient(_maxGradient)
- {}
- GradientNEWData maxGradient;
- GradientNEWData minGradient;
- ColorRGBA32 minColor;
- ColorRGBA32 maxColor;
- MinMaxGradientState minMaxState;
- };
- // ====== MinMaxGradientData End ======
- // ====== EmissionData Begin ======
- struct BurstData {
- BurstData()
- : burstTime(0)
- , burstParticleCount(0)
- {}
- BurstData(float _burstTime, UInt16 _burstParticleCount)
- : burstTime(_burstTime)
- , burstParticleCount(_burstParticleCount)
- {}
-
- float burstTime;
- UInt16 burstParticleCount;
- };
- struct EmissionData {
- std::vector<BurstData> burstData; // 最大长度为4
- };
- // ====== EmissionData End ======
- NS_RRP_END
- #endif /* EditorDatas_h */
|