|
| virtual void | getParticleBuffer (IMeshBuffer *buffer) |
| | Internal: merges prefab meshes into a single buffer.
|
| virtual CObjectSerializable * | createSerializable () |
| | Creates a serializable object for property editing or saving.
|
| virtual void | loadSerializable (CObjectSerializable *object) |
| | Loads properties from a serializable object.
|
|
bool | loadMesh (const char *meshFile) |
| | Loads a 3D model (FBX, DAE, OBJ) to be used as a particle.
|
|
void | setVelocityDirection (bool b) |
| | Enables/disables velocity-based orientation.
|
|
void | setMaterialType (EBaseShaderType shader) |
| | Configures blending mode and shader.
|
|
const SColor & | getDissolveColor () |
| | Gets dissolve edge color.
|
|
void | setDissolveColor (const SColor &c) |
| | Sets dissolve edge color.
|
|
core::vector3df & | getNoiseScale () |
| | Gets dissolve noise scale.
|
|
void | setNoiseScale (const core::vector3df &n) |
| | Sets dissolve noise scale.
|
|
float | getDissolveCutoff () |
| | Gets current dissolve progression.
|
|
void | setDissolveCutoff (float d) |
| | Sets dissolve progression (0.0 to 1.0).
|
| Public Member Functions inherited from Skylicht::Particle::IRenderer |
|
| IRenderer (ERenderer type) |
|
ERenderer | getType () |
| | Gets renderer type enum.
|
|
CMaterial * | getMaterial () |
| | Gets active material (custom or default).
|
|
CMaterial * | getDefaultMaterial () |
| | Gets default internal material.
|
|
CMaterial * | getCustomMaterial () |
| | Gets custom material if set.
|
|
void | setTexturePath (const char *path) |
| | Loads and sets the main texture.
|
|
void | setTexture (int slot, ITexture *texture) |
| | Sets texture for a specific slot.
|
|
void | setEmission (bool b) |
| | Enables/disables emission.
|
|
bool | isEmission () |
| | Checks emission status.
|
|
bool | useInstancing () |
| | Checks instancing support.
|
|
void | setEmissionIntensity (float b) |
| | Sets emission intensity.
|
|
float | getEmissionIntensity () |
| | Gets emission intensity.
|
|
bool | needUpdateMesh () |
| | Checks if internal mesh requires rebuilding.
|
|
const wchar_t * | getName () |
| | Gets display name.
|
|
void | setAtlas (u32 x, u32 y) |
| | Configures texture atlas dimensions.
|
|
u32 | getAtlasX () |
| | Gets atlas column count.
|
|
u32 | getAtlasY () |
| | Gets atlas row count.
|
|
u32 | getTotalFrames () |
| | Gets total frames in atlas.
|
|
float | getFrameWidth () |
| | Gets UV width of a single frame.
|
|
float | getFrameHeight () |
| | Gets UV height of a single frame.
|
|
|
std::string | m_meshFile |
| | Path to the source mesh file.
|
|
IMeshBuffer * | m_meshBuffer |
| | Aggregated mesh buffer for instancing.
|
|
EBaseShaderType | m_baseShaderType |
| | Current shader mode.
|
|
core::vector3df | m_noiseScale |
| | Scale for dissolve noise effect.
|
|
SColor | m_dissolveColor |
| | Edge color for dissolve effect.
|
|
float | m_dissolve |
| | Cutoff value for dissolve effect.
|
|
bool | m_velocityDirection |
| | Whether to align mesh Z-axis to particle velocity.
|
| Protected Attributes inherited from Skylicht::Particle::IRenderer |
|
ERenderer | m_type |
| | Type of the renderer.
|
|
CMaterial * | m_material |
| | Default material for the particles.
|
|
CMaterial * | m_customMaterial |
| | Optional custom material.
|
|
bool | m_useCustomMaterial |
| | Whether custom material is enabled.
|
|
bool | m_useInstancing |
| | Whether this renderer uses hardware instancing.
|
|
bool | m_emission |
| | Whether the particles have emission.
|
|
bool | m_ztest |
| | Depth test flag.
|
|
float | m_emissionIntensity |
| | Emission intensity multiplier.
|
|
std::string | m_texturePath |
| | Primary texture path.
|
|
u32 | m_atlasNx |
| | Atlas horizontal frame count.
|
|
u32 | m_atlasNy |
| | Atlas vertical frame count.
|
|
std::string | m_materialPath |
| | Path to custom material file.
|
|
bool | m_needUpdateMesh |
| | Internal: flag to trigger mesh buffer updates.
|
Renderer that uses hardware instancing to draw 3D meshes as particles.
Example
renderer->
loadMesh(
"Models/Stone/stone.fbx");
group->setRenderer(renderer);
Renderer that uses hardware instancing to draw 3D meshes as particles.
Definition CMeshParticleRenderer.h:48
bool loadMesh(const char *meshFile)
Loads a 3D model (FBX, DAE, OBJ) to be used as a particle.
void setMaterialType(EBaseShaderType shader)
Configures blending mode and shader.
@ Soild
Definition CMeshParticleRenderer.h:56