/
redgpu
/
ezEngine
Обзор
Документация
Войти
/
redgpu
/
ezEngine
Код
Запросы
0
Задачи
Вики
Пакеты
0
Релизы
0
Аналитика
Безопасность
dev
Code/EnginePlugins/ParticlePlugin/Initializer/ParticleInitializer_RandomRotationSpeed.h
44 строки
2 KB
Jan Krassnigg
Added Expression Particle Behavior (#1884)
29 мар 2026, 23:32
Не верифицирован
29 мар 2026, 23:32
071fa9d
Код
Авторство
О чём код?
#pragma once #include <Core/ResourceManager/ResourceHandle.h> #include <Foundation/Types/VarianceTypes.h> #include <ParticlePlugin/Initializer/ParticleInitializer.h> using ezCurve1DResourceHandle = ezTypedResourceHandle<class ezCurve1DResource>; /// Initializer that sets random particle rotation speeds /// /// Optionally also sets a random starting rotation angle. class EZ_PARTICLEPLUGIN_DLL ezParticleInitializerFactory_RandomRotationSpeed final : public ezParticleInitializerFactory { EZ_ADD_DYNAMIC_REFLECTION(ezParticleInitializerFactory_RandomRotationSpeed, ezParticleInitializerFactory); public: virtual const ezRTTI* GetInitializerType() const override; virtual void CopyInitializerProperties(ezParticleInitializer* pInitializer, bool bFirstTime) const override; virtual void Save(ezStreamWriter& inout_stream) const override; virtual void Load(ezStreamReader& inout_stream, const ezParticleEffectDescriptor& ownerEffectDescriptor, const ezParticleSystemDescriptor& ownerSystemDescriptor) override; bool m_bRandomStartAngle = false; ezVarianceTypeAngle m_RotationSpeed; }; class EZ_PARTICLEPLUGIN_DLL ezParticleInitializer_RandomRotationSpeed final : public ezParticleInitializer { EZ_ADD_DYNAMIC_REFLECTION(ezParticleInitializer_RandomRotationSpeed, ezParticleInitializer); public: bool m_bRandomStartAngle = false; ezVarianceTypeAngle m_RotationSpeed; virtual void CreateRequiredStreams() override; protected: virtual void InitializeElements(ezUInt64 uiStartIndex, ezUInt64 uiNumElements) override; bool m_bPositiveSign = false; ezProcessingStream* m_pStreamRotationSpeed = nullptr; ezProcessingStream* m_pStreamRotationOffset = nullptr; };