Hi All,
We have a problem here. For several months we have been trying to create good looking comics style explosions for our game - There is Only WAR!, but we have faced two problems.
First one – is it possible to merge smoke and fire into one particle or they have to be separate entities?
Maybe anyone has some examples on how to create explosions that look like the ones on the link below:
http://jng.rakeingrass.com/screenshots.php
Second problem is - we were trying to create explosions based on the animation frames sequence and got very strange bug. Explosion NEVER starts from the first frame but from any frame from the sequence. This makes creating of animated explosions impossible as every next time we have different explosion which start and finish are cropped. Any ideas why it could be like this?
So finishing - I would like to ask you to post me any clues on explosions made by you in Ogre Particle Editor please. I'd really appreciate your help.
Thanks in advance.
Igor.
Good looking explosions in Particle Editor, help plz!
- Fakamaz
- Halfling
- Posts: 40
- Joined: Fri Feb 03, 2006 6:24 pm
- Location: Poland
- Contact:
- Falagard
- OGRE Retired Moderator

- Posts: 2060
- Joined: Thu Feb 26, 2004 12:11 am
- Location: Toronto, Canada
- x 4
- Contact:
If you want fire and smoke you'll probably need two particle systems instead of trying to work it into one. That's what I've done.
Regarding synching with animation frames, can you explain better?
If for example, you have an animation that plays for 60 frames and you need an explosion to happen at frame 30, you obviously are going to need to make your own system that can trigger events at certain frames in an animation and handle it from there, by starting up the particle system only at frame 30.
I can imagine a data driven system where you have an xml file that corresponds to your animation names, and specify frames and an event name.
Example:
MyCharacter.mesh
MyCharacter.skeleton, with 2 different animations - run and attack.
For run, imagine its 100 frames and you want footstep sounds to play at frames 25 and 75.
For attack, imagine it's 120 frames, you want to play a sound AND start a particle system at frame 60
MyCharacter.AnimationEvents file:
You'll need to load that data, then your system check when an animation starts playing the time and fire the event if the frame is greater than the time. I don't know if you can get the current frame from an animation, perhaps Time would be a better word, since the animations try to play at a consistent time despite framerate. So when your animation starts you'd have to check the time, then each frame you'd check if time > time specified in the config file and play the event.
I think you also mentioned that the particle system starts over if you play the animation twice in a row so the first explosion stops? You'll need a queue of particle systems so you can have multiple going at once.
Clay
Regarding synching with animation frames, can you explain better?
If for example, you have an animation that plays for 60 frames and you need an explosion to happen at frame 30, you obviously are going to need to make your own system that can trigger events at certain frames in an animation and handle it from there, by starting up the particle system only at frame 30.
I can imagine a data driven system where you have an xml file that corresponds to your animation names, and specify frames and an event name.
Example:
MyCharacter.mesh
MyCharacter.skeleton, with 2 different animations - run and attack.
For run, imagine its 100 frames and you want footstep sounds to play at frames 25 and 75.
For attack, imagine it's 120 frames, you want to play a sound AND start a particle system at frame 60
MyCharacter.AnimationEvents file:
Code: Select all
Animation Run
{
Event
{
Frame 25;
SoundEvent "footstep.wav";
}
Event
{
Frame 75;
SoundEvent "footstep.wav";
}
}
Animation Attack
{
Event
{
Frame 60;
SoundEvent "attack.wav";
ParticleEvent "explosion.particle";
}
}
I think you also mentioned that the particle system starts over if you play the animation twice in a row so the first explosion stops? You'll need a queue of particle systems so you can have multiple going at once.
Clay
- Fakamaz
- Halfling
- Posts: 40
- Joined: Fri Feb 03, 2006 6:24 pm
- Location: Poland
- Contact:
Hi Clay, Thank you for your reply.
>>Regarding synching with animation frames, can you explain better?
We have 2 animation sequences both 2D for the Star Wars like explosions.
We made up particles based on these sequenses and both of them never played from the begining but from any frame. For example it could start at the middle and end playing animation twice. Or could start almost normally and ends on the middle.
Below are material and particle code, I could send you textures if you like to check it aswell upon request.
Material:
Particle:
Let me know if we made up a mistake in these files please.
As for the explosion particle in general - I would like to know if you could point me for the example of good military explosion, not simple one (one in the Particle Editor), it would help me greatly!
Thanks in advance!
Igor.
>>Regarding synching with animation frames, can you explain better?
We have 2 animation sequences both 2D for the Star Wars like explosions.
We made up particles based on these sequenses and both of them never played from the begining but from any frame. For example it could start at the middle and end playing animation twice. Or could start almost normally and ends on the middle.
Below are material and particle code, I could send you textures if you like to check it aswell upon request.
Material:
Code: Select all
material Explode
{
technique
{
pass
{
lighting off
scene_blend alpha_blend
depth_write off
texture_unit
{
anim_texture explozhin1.png explozhin2.png explozhin3.png explozhin4.png explozhin5.png explozhin6.png explozhin7.png explozhin8.png explozhin9.png explozhin10.png explozhin11.png explozhin12.png explozhin13.png explozhin14.png explozhin15.png 0.8
tex_address_mode clamp
}
}
}Code: Select all
StarWars1
{
quota 1
material Explode
particle_width 22
particle_height 22
cull_each false
renderer billboard
billboard_type point
emitter Point
{
angle 51.65
colour 1 1 1 1
direction 0 0 0
emission_rate 2
position 0 5 0
velocity 1
velocity_min 1
velocity_max 1
time_to_live 1
duration 0.5
}
affector Rotator
{
rotation_range_start 90
rotation_range_end 90
rotation_speed_range_start 0
rotation_speed_range_end 0
}
}
As for the explosion particle in general - I would like to know if you could point me for the example of good military explosion, not simple one (one in the Particle Editor), it would help me greatly!
Thanks in advance!
Igor.
- Falagard
- OGRE Retired Moderator

- Posts: 2060
- Joined: Thu Feb 26, 2004 12:11 am
- Location: Toronto, Canada
- x 4
- Contact: