The Drag[en]gine is a fully customizable game engine and game development environment designed with modularity and extensibility in mind not requiring expensive licenses.

Post news Report RSS Particle System Improvements

Little time for engine work but a bunch of improvements on particle emitters.

Posted by on

A bunch of other projects (especially in real life) got in the way of development so things slowed down a bit. Nevertheless another entry on the list of remaining tasks to do for the first engine release could be complete. Now I can head over to the rest of the entries on the list and these should hopefully not be that work intensive.

Particle System Improvements

The particle system received a bunch of updates which I had on my list since some time. As a new trend I talked about recently I'm not going to write much here but instead show you over to the Particle Emitter Wiki Page containing detailed information. So here just a short list of what changed. See the Wiki page for explanation on what each of the changes does.

  • Splitting into Particle Emitters and Particle Emitter Instances similar to animators. Makes working with particle emitters simpler as you have now the definition in one Particle Emitter that you can reuse on as many Particle Emitter Instances as required.
  • Support for multiple Types. Particles emitters have now different types of particles to allow richer particle systems and easier handling by the user.
  • Support for Collision Emitters. Produces emitter instances on particle impacts allowing to cascade particle emitters.
  • Support for Trail Emitters. Maintains an emitter instance for particles acting as their trail.
  • Support for complex burst type emitters using new parameter "Particle Count" and various changes to the emitter behavior
  • Support for Mesh Casting. Supports casting particles from vertices or faces of a model
  • IGDE supports now particle emitter inside game definitions for quick usage
  • Various changes on the particle emitter to help designing and testing emitters
  • and various other changes and improvements

So without further ado a bunch of particle emitters showcasing the various changes and to give a quick overview of what can be done.


I also made a test with it a couple of days ago with another model of mine. Here the particle emitter is attached to a model bone (first example particle emitter from the previous video used here). This shows also a test with Animation Difference to do body tilting. This method is especially nice since you can do full body tilt with various similar animations using only 1 additional animation (a tilt animation).


Outlook

With this task gone the list of remaining tasks to release the engine is one less. Next step is adding the nodes support to animators and skins to add another layer of control for these cases where you want to do the really crazy and complex stuff. So stay tuned.

Post comment Comments
CMDKeen
CMDKeen - - 647 comments

Wow. I have played (and modded) a lot of games, but your particles are certainly the most advanced I have ever seen. I can already see the thousands of combinations in my mind. Great job there.

Your Charizard's animations also look pretty great. Especially at the sloped surface, it looked pretty natural (until he stuck his tail into the ground, that is). I really like how modular you are making it, one could make any FPS, RPG or even a mech game out of it, and with all those systems it will look very natural.

I dare to say you are making an indie counterpart to CryEngine here.

Reply Good karma Bad karma+1 vote
Dragonlord Author
Dragonlord - - 1,934 comments

I think UE3 still has more up it's sleeves what goes for the particle system. This system here should be enough though to support various kinds of games. Still missing beams and then it would be complete. And I've got already a test-model for doing beams with ;)

Reply Good karma+1 vote
CMDKeen
CMDKeen - - 647 comments

Well, I have never considered beams and ribbontrails in general to be particles, even when they are attached to them..

But you hit exactly the blind spot I forgot to write about. Ribbon trails.

Reply Good karma Bad karma+1 vote
Dragonlord Author
Dragonlord - - 1,934 comments

I never understood anyways what ribbon trails are supposed to be. I've seen them in the UE docs but no idea what it is.

Reply Good karma+1 vote
CMDKeen
CMDKeen - - 647 comments

Here is an example from IL-2 Sturmovik: Img215.imageshack.us

There are three types of ribbontrails in that picture.

Reply Good karma Bad karma+2 votes
Dragonlord Author
Dragonlord - - 1,934 comments

I see. So a ribbon trail is nothing else but a conventional trail. At last I see here can be done with the trail emitter in my engine. So that should be covered unless there are ribbon trails with more specific properties not covered here.

Reply Good karma+1 vote
CMDKeen
CMDKeen - - 647 comments

Ribbon trail is just the correct technical term for it, though a standard trail can be assigned multiple chains (allowing to change color/width of different parts of the trail), max chain elements variable (how many polygons are put into the trail) and a bool if it disappears instantly after it's parent is destroyed. There may be more, but I can't really remember any right now.

Reply Good karma Bad karma+1 vote
Crystan
Crystan - - 139 comments

The ptl engine is indeed awesome. Nice work!

Reply Good karma Bad karma+1 vote
Sph!nx
Sph!nx - - 722 comments

Very nice!!

Reply Good karma Bad karma+1 vote
SinKing
SinKing - - 3,119 comments

You must be a genius to do all this work. The engine has a very special feel to it and it's getting better every time I see it. Well done!

Reply Good karma Bad karma+1 vote
AniCator
AniCator - - 178 comments

Hope to see more soon. :)

Reply Good karma Bad karma+1 vote
Post a comment

Your comment will be anonymous unless you join the community. Or sign in with your social account: