![]() |
Skylicht Engine
|
ECS render system for particles. More...
#include <ParticleSystem/CParticleRenderer.h>
Public Member Functions | |
| virtual void | beginQuery (CEntityManager *entityManager) |
| ECS hook: establishes filters for entities with particle data. | |
| virtual void | onQuery (CEntityManager *entityManager, CEntity **entities, int numEntity) |
| ECS hook: query implementation. | |
| virtual void | init (CEntityManager *entityManager) |
| ECS hook: initialization. | |
| virtual void | update (CEntityManager *entityManager) |
| ECS hook: per-frame updates. | |
| virtual void | render (CEntityManager *entityManager) |
| ECS hook: main render pass (standard/opaque). | |
| virtual void | renderTransparent (CEntityManager *entityManager) |
| ECS hook: transparent render pass. | |
| virtual void | renderEmission (CEntityManager *entityManager) |
| ECS hook: emission render pass. | |
| Public Member Functions inherited from Skylicht::IRenderSystem | |
| virtual bool | isRenderSystem () |
| IRenderPipeline::ERenderPipelineType | getPipelineType () |
| virtual void | postRender (CEntityManager *entityManager) |
| ERenderPass | getRenderPass () |
| int | getSortingPriority () |
| void | setSortingPriority (int s) |
| Public Member Functions inherited from Skylicht::IEntitySystem | |
| void | setSystemOrder (int order) |
| int | getSystemOrder () |
Protected Member Functions | |
| const core::matrix4 & | getTransformNoRotate (const core::matrix4 &world) |
| Internal helper to calculate transform without rotation. | |
| void | renderParticleGroup (CParticleBufferData *data, const core::matrix4 &world) |
| Internal: renders all groups for an entity. | |
| void | renderParticleGroupEmission (CParticleBufferData *data, const core::matrix4 &world) |
| Internal: renders emission groups for an entity. | |
| void | renderGroup (IVideoDriver *driver, Particle::CGroup *group) |
| Internal: submits a specific group to the video driver. | |
Protected Attributes | |
| CEntityGroup * | m_group |
| Cached entity group. | |
| core::matrix4 | m_transform |
| Internal scratchpad matrix. | |
| core::vector3df | m_billboardUp |
| Current billboard up vector. | |
| core::vector3df | m_billboardLook |
| Current billboard look vector. | |
| Protected Attributes inherited from Skylicht::IRenderSystem | |
| IRenderPipeline::ERenderPipelineType | m_pipelineType |
| ERenderPass | m_renderPass |
| int | m_sortingPriority |
| Protected Attributes inherited from Skylicht::IEntitySystem | |
| int | m_systemOrder |
Additional Inherited Members | |
| Public Types inherited from Skylicht::IRenderSystem | |
| enum | ERenderPass { Sky = 0 , Opaque , OcclusionQuery , Transparent , Effect } |
ECS render system for particles.
Handles the actual drawing of particles using the renderers assigned to each group. Supports standard, transparent, and emission passes.
|
virtual |
ECS hook: establishes filters for entities with particle data.
Implements Skylicht::IEntitySystem.
|
virtual |
ECS hook: initialization.
Implements Skylicht::IEntitySystem.
|
virtual |
ECS hook: query implementation.
Implements Skylicht::IEntitySystem.
|
virtual |
ECS hook: main render pass (standard/opaque).
Implements Skylicht::IRenderSystem.
|
virtual |
ECS hook: emission render pass.
Reimplemented from Skylicht::IRenderSystem.
|
virtual |
ECS hook: transparent render pass.
Reimplemented from Skylicht::IRenderSystem.
|
virtual |
ECS hook: per-frame updates.
Implements Skylicht::IEntitySystem.