SetAnimationRows

This function specifies the number of rows in an animated particle sheet.

Syntax

Parameters

Remarks

For smoother particle animations use the particle animation shader.

Example

#include "Leadwerks.h"

using namespace Leadwerks;

int main(int argc, const char *argv[])
{
float time = 0.5;

Leadwerks::Window* window = Leadwerks::Window::Create();
Context* context = Context::Create(window);
World* world = World::Create();
Camera* camera = Camera::Create();
camera->SetRotation(35, 0, 0);
camera->Move(0, 0, -3);

//Create an emitter
Emitter* emitter = Emitter::Create(1);

Material* material = Material::Load("Materials/Effects/explosion.mat");
if (material) emitter->SetMaterial(material);
emitter->SetVelocity(0, 0, 0, 0);
emitter->SetDuration(900);
emitter->SetEmissionVolume(0, 0, 0);
emitter->SetMaxScale(10.0);
emitter->SetAnimationRows(2);
emitter->SetAnimationColumns(5);

while (true)
{
if (window->Closed() || window->KeyDown(Key::Escape)) return false;

Leadwerks::Leadwerks::Time::Update();
world->Update();
world->Render();

if (window->KeyDown(Key::Up) && time < 1.0)
{
time += .01;
}
else if (window->KeyDown(Key::Down) && time > 0.0)
{
time -= .01;
}
time = Math::Clamp(time, 0, 1);

context->SetBlendMode(Blend::Alpha);
context->DrawText("Rows: " + String(emitter->GetAnimationRows()) + " Columns: " + String(emitter->GetAnimationColumns()), 0, 0);
context->SetBlendMode(Blend::Solid);

context->Sync();
}
}