123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596 |
- //
- // SubModule.h
- // cocos2d_libs
- //
- // Created by 徐俊杰 on 2020/4/24.
- //
- #ifndef SubModule_h
- #define SubModule_h
- //#include "cocos2d.h"
- #include "rparticle/Macros/RParticleMacros.h"
- #include "rparticle/Modules/ParticleSystemModule.h"
- //#include "Runtime/BaseClasses/BaseObject.h"
- NS_RRP_BEGIN
- class RParticleSystem;
- struct ParticleSystemParticles;
- class SubModule : public ParticleSystemModule
- {
- public:
- DECLARE_MODULE (SubModule)
- SubModule ();
-
- void Update (const ParticleSystemReadOnlyState& roState, ParticleSystemState& state, ParticleSystemParticles& ps, size_t fromIndex, size_t toIndex, float dt) const;
- /*
- void CheckConsistency() {};
-
- int GetSubEmitterTypeCount(ParticleSystemSubType type) const;
-
- template<class TransferFunction>
- void Transfer (TransferFunction& transfer);
-
- static void RemoveDuplicatePtrs (RParticleSystem** shurikens);
- int GetSubEmitterPtrs (RParticleSystem** shurikens) const;
- int GetSubEmitterPtrsBirth (RParticleSystem** shurikens) const;
- int GetSubEmitterPtrsCollision (RParticleSystem** shurikens) const;
- int GetSubEmitterPtrsDeath(RParticleSystem** shurikens) const;
-
- void SetSubEmittersBirthID(int index, int instanceID)
- {
- if (index >= 0 && index < kParticleSystemMaxSubBirth) {
- m_SubEmittersBirth[index].SetInstanceID(instanceID);
- }
- }
- int GetSubEmittersBirthID(int index)
- {
- int instanceID = -1;
- if (index >= 0 && index < kParticleSystemMaxSubBirth) {
- instanceID = m_SubEmittersBirth[index].GetInstanceID();
- }
- return instanceID;
- }
- void SetSubEmittersCollisionID(int index, int instanceID)
- {
- if (index >= 0 && index < kParticleSystemMaxSubBirth) {
- m_SubEmittersCollision[index].SetInstanceID(instanceID);
- }
- }
- int GetSubEmittersCollisionID(int index)
- {
- int instanceID = -1;
- if (index >= 0 && index < kParticleSystemMaxSubBirth) {
- instanceID = m_SubEmittersCollision[index].GetInstanceID();
- }
- return instanceID;
- }
- void SetSubEmittersDeathID(int index, int instanceID)
- {
- if (index >= 0 && index < kParticleSystemMaxSubBirth) {
- m_SubEmittersDeath[index].SetInstanceID(instanceID);
- }
- }
- int GetSubEmittersDeathID(int index)
- {
- int instanceID = -1;
- if (index >= 0 && index < kParticleSystemMaxSubBirth) {
- instanceID = m_SubEmittersDeath[index].GetInstanceID();
- }
- return instanceID;
- }
- private:
- PPtr<RParticleSystem> m_SubEmittersBirth[kParticleSystemMaxSubBirth];
- PPtr<RParticleSystem> m_SubEmittersCollision[kParticleSystemMaxSubCollision];
- PPtr<RParticleSystem> m_SubEmittersDeath[kParticleSystemMaxSubDeath];
- */
- };
- NS_RRP_END
- #endif /* SubModule_h */
|