24 #include <flw/flf/models/base/IEmiterPoint.h> 26 #include <flw/flc/buffers/mVertexBufferFloat.h> 27 #include <flw/flc/operations/TQuery.h> 44 , GLfloat emitingSourceRate
47 , glm::vec3 acceleration = glm::vec3(0.0)
48 , glm::vec3 startVelocity = glm::vec3(0.0)
49 , glm::vec3 robustnessVelocity = glm::vec3(0.0)
50 , glm::vec3 startPosition = glm::vec3(0.0)
51 , glm::vec3 robustnessPosition = glm::vec3(0.0)
52 , GLfloat startSize = 1.0
53 , GLfloat lifetime = 6.0
55 , GLenum blendingSource = GL_SRC_ALPHA
56 , GLenum blendingDestination = GL_ONE_MINUS_SRC_ALPHA
57 , GLboolean depthTesting = GL_TRUE
58 , GLfloat alphaCutOffLevel = 0.0f);
63 void update(GLfloat timeElapsedSec)
override;
66 void drawFR(
ICamera& camera)
override;
67 void drawPBRP(
ICamera& camera)
override;
74 glm::vec3 mAcceleration;
75 glm::vec3 mStartVelocity;
76 glm::vec3 mStartPosition;
77 glm::vec3 mCameraPosition;
81 GLint mULCModelMatrix;
82 GLint mULCTextureUnit;
83 GLint mULCViewProjectionMatrix;
84 GLint mULCCameraPosition;
87 GLint mULCAcceleration;
89 GLint mULCAlphaCutOff;
90 GLint mULCTimeElapsed;
92 void initBuffers()
override;
93 void initPipeline()
override;
94 void initUniformsCache()
override;
95 void initVAO()
override;
96 void initVBO()
override;
Encapsulates reloadable objects.
Definition: IReloadable.h:35
Drawable Entity which emits particles.
Definition: IEmiterPoint.h:40
Base for all renderers.
Definition: IRenderer.h:42
Single GLSL 2D Texture object.
Definition: Texture2D.h:36
Vertex buffer specialized with VertexParticle data structure.
Definition: mVertexBufferParticles.h:43
Fillwave engine core.
Definition: Engine.h:85
Base for all Scene nodes.
Definition: Entity.h:48
Polynomial particle Emiter. Can generate a particles with velocity, direction, and acceleration defin...
Definition: EmiterPointCPU.h:40
Single draw item structure.
Definition: RenderItem.h:33
Stores camera view parameters.
Definition: ICamera.h:32