Skip to main content
GameDev.net gamedev.net

PRO Tired of ads? Read GameDev.net ad-free and help keep the community independent with GameDev Pro — $3/month.

vortxGE 2.0 particles

vortxGE 2.0 particles

mixmaster
mixmaster
Journal of Lee Stripp · · 1 min read
1,796 2
Back and already done some fun stuff.. I'm rewriting my shaders for version 330 so forgive the lighting !!

Added a new particle system that supports bullet physics or animation per particle. Material is shared so animation will effect every object. No billboards yet, I may make another scene node for billboard particles anyway for best performance.

User side code to create the particles.

// ################################
// Test Particle system
asset_bs = new lsAsset_BulletShape( vortxge->getAsset_manager() );
asset_bs->Make_Box( 0.5, 0.5, 0.5 );
vortxge->getAsset_manager()->Add_Asset( "bullet/particlebox", asset_bs );

lsParticleEmitter *pe;

pe = new lsParticleEmitter( 1000, asset_bs, demo_scene, vortxge->getOpenGL(), demo_scene );
if( pe )
{
pe->position = lsVector3( 0.0, 25.0, 0.0 );

pe->Set_EmitRate( 100, 2*1000, 10*1000 );
pe->Set_Volume( 100.0, 10.0, 100.0 );

// Add light
demo_scene->setFoundNode(0);
demo_scene->Find_Node( demo_scene, "Spot" );
if( demo_scene->getFoundNode() )
{
lsLight *light = (lsLight*)demo_scene->getFoundNode();
pe->Add_Light( light );
}
// Set mesh
lsAsset_Mesh *amesh;

amesh = (lsAsset_Mesh*)vortxge->getAsset_manager()->Find_Asset( LSAT_MESH, "data/vbm/Cube.vbm" );
if( amesh )
{
pe->mesh = amesh->getMesh();
}
demo_scene->Add_Node( pe );
}


[media]
[/media]

Discussion

Loading comments...