Regarding the refreshing and inspiring discussion with Feralidragon concerning particle system and due to the fact my own particle engine is going to be very complex but very efficient I'd like to share thoughts on development of that engine in an own thread.
To sum it up I can say that the Unreal Enigma Particle Engine is going to be as effective as the Unreal Cascade Particle Engine of the Unreal Engine 3, except for that there's no such Cascade Editor, you just place the emitter into the Map... et voila.
Core Features
- 99 % running in C++ on the GPU
- Linked List holding all Enigma Actors, to be fast accessable in C++ AND Unreal Script, each Enigma Actor finds the other with the blink of an eye
- internal Event System (which allows to control why, when and how particles are changed in realtime)
- no spawning of any Actors
- no spawning of any Objects
- will be integrated into all other Effect Systems (Projectiles, Special Effects, Weapon Effects etc.)
- lots of Settings to tweak the Engine using a corresponding Menu
Emitter Features
- instant in-Editor Preview Support
- easy-to-setup module-driven Variable Settings
- complex Particle System Support holding a dynamic List of SubEmitters
- Trigger, Attach, Movement Support
- Sprite-, Corona-, Mesh-, Beam-, Trail- and Spark Emitters (maybe even Fluid Emitters drawing realistic Fluids...)
- each emitter has an unlimited list of modules, so even a single emitter may render particles as if there would be multiple emitters
Particle Features
- Particle to Particle Interaction Support
- Particle Force Support
- Dynamic Particle Physics and Collision
- Event-driven Particle Actions
- Dynamic Particle Sound System
Rendering Features
- Primitive Particle Rendering: Rendering of primitive model objects like Points, Lines, Crosses as Particles (internally used for debugging, but also available as indipendent emitters)
- Sprite Particle Rendering: Allows for rendering of tons of sprite particles, with dynamic color, brightness, size (even U/V size)
- Corona Particle Rendering: Allows for rendering of tons of corona-sprite particles, with dynamic color, brightness, size (even U/V size)
- Spark Particle Rendering: Stretched particles that represent sparks / fireworks
- Beam Particle Rendering: Smoothed segmented beam particles
- Mesh Particle Rendering: Should be faster than standard mesh render, as only the mesh is rendered without any actor representing it
- Trail Emitter Rendering: Stretched ribbon particles representing trails
Expect first render pics and previews next week
Unreal Enigma Particle Engine
- Saya-chan
- Adept
- Posts: 446
- Joined: Mon Jun 02, 2008 10:46 am
- Personal rank: Former UT99 modder
- Location: Vigo, Galicia
- Contact:
Re: Unreal Enigma Particle Engine
Awesome!
OpenCL?Shadow wrote:- 99 % running in C++ on the GPU
~♥~ Bless the Cute Emperor ~♥~
- Shadow
- Masterful
- Posts: 743
- Joined: Tue Jan 29, 2008 12:00 am
- Personal rank: Mad Carpenter
- Location: Germany
- Contact:
Re: Unreal Enigma Particle Engine
No. The principle is simple. Each native function on c++ like the render functions run first on the CPU and are passed to the GPU according to the used render driver (OpenGL, DirectX), only if you would use the build-in Software Renderer the whole thing would run on the CPU.
Re: Unreal Enigma Particle Engine
This is what a mapper could benefit most from:
Send particles through spline (+ param based random transformation) (+ key-points affecting color, alpha, size).
Extremely useful for some environment effects and synchronized cinematic effects. Examples include mostly flow of water, electricity, dust, mist, wind and ect around the level geometry. If particles can have a model, then this also makes traffic possible on a serpentine road and other objects flying through the level.
Send particles through spline (+ param based random transformation) (+ key-points affecting color, alpha, size).
Extremely useful for some environment effects and synchronized cinematic effects. Examples include mostly flow of water, electricity, dust, mist, wind and ect around the level geometry. If particles can have a model, then this also makes traffic possible on a serpentine road and other objects flying through the level.
- Shadow
- Masterful
- Posts: 743
- Joined: Tue Jan 29, 2008 12:00 am
- Personal rank: Mad Carpenter
- Location: Germany
- Contact:
Re: Unreal Enigma Particle Engine
You mean sending particles on a predefined path? Cool feature suggestion Myth! I will implement it. Currently there're different Types of Forces and Movement Modifiers a user may apply on a particle system. In addition, if I manage to implement a volume system, there could be useful multiple volumes which transform the particles in partial spaces within a level, so there you would have your Keypoints that affect different settings of the particles.
Unfortunately Zone-dependant modifications don't apply on particles, only on their emitter / particle system, because the particles are just virtual objects, no unreal actors or objects as known usually.
Unfortunately Zone-dependant modifications don't apply on particles, only on their emitter / particle system, because the particles are just virtual objects, no unreal actors or objects as known usually.
Re: Unreal Enigma Particle Engine
that's cool!
Is Mobile Phone Signal Booster a Solution to Poor Signal?
An Overview of Mobile Phone Signal Booster at MyAmplifiers
An Overview of Mobile Phone Signal Booster at MyAmplifiers
- Shadow
- Masterful
- Posts: 743
- Joined: Tue Jan 29, 2008 12:00 am
- Personal rank: Mad Carpenter
- Location: Germany
- Contact:
Re: Unreal Enigma Particle Engine
The new particle engine will be definitely the featured addition to the SDK shipped with the next coming release end of september (30.09.2011) - that's now clear and official, no matter if the future of the SDK is uncertain or not...