Quick Links: Download Gideros Studio | Gideros Documentation | Gideros Development Center | Gideros community chat | DONATE
TNT Particles Engine for Gideros Mobile SDK PREVIEW 2 - Coming Soon - — Gideros Forum

TNT Particles Engine for Gideros Mobile SDK PREVIEW 2 - Coming Soon -

hi guys!!!

after some days of headaches and coding, coding, coding ...
finally my particle engine is almost done...

I'm really proud to show you the 2nd preview of my particle engine
(codename "TNT Particle Engine")

my main goal is not a supercharged/sexy/candy engine but a fast, light and easy to use engine
optimized for realtime mobile games...
(got 59fps on my galaxy s, 59 fps on huawei u8650 armv6 600Mhz)
not yet tested on iOs devices... sorry...

i'm really amazed by Gideros Speed... and my engine speed ;)

the key features are:

- unlimited emitters
- unlimited particle definitions
- every emitter can have unlimited particle groups
- global and local coordinate system (for emitters/particles)
- Particles speed Morph
- Particles color Morph
- Particles size Morph
- Particles alpha Morph
- Particles rotation Morph
- Particles directions Morph
- Particles displacement
- controllable particles loops (infinite or user defined)
- Particles gravity (not yet implemented)
- raise events when emitter start, ends, etc (not yet implemented)

- user definible effects... (not yet implemented)
- and many more... (not yet implemented ??) ;)


hope you like it
here is the video:





....coming soon....

next days i'm adding missing features, cleaning code, writing some other examples and writing simple docs
then i'll release it!


ciao ciao
Gianluca.
TNT ENGiNE for Gideors Studio - Particle Engine, Virtual Pad, Animator Studio, Collision Engine - DOWNLOAD NOW !!! IT'S FREE!!! -
www.tntengine.com
+1 -1 (+9 / -1 )Share on Facebook
«13

Comments

  • Looking good.

    Mike
    What would you do for your other half?

    http://www.sharksoupstudios.com
  • Very interested in this. It's a given that most games would have a requirement for particles and I really don't want to have to roll my own if at all possible.
  • SergeykaSergeyka Member
    edited February 2012
    Gianluca, it is cool! =;
    Sorry for google translate...
  • That looks really awesome.

    So any restriction on compatabilities? What Gideros Studio supported, are there any paltform restrictions?

    Plans for licensing, pricing?
  • gorkemgorkem Maintainer
    $ whois tntparticleengine.com
    No match for "TNTPARTICLEENGINE.COM".

    \:D/
  • GregBUGGregBUG Guru
    edited February 2012
    @all
    thanks guys for the positive feedback!!! :)

    @ar2rsawseen
    developed with gideros studio beta8 and 2012.2 no platform restrictions.

    for now I have no idea if it will be free or not!!! :-/ (but i prefer donation-ware)
    i developed it only for fun! (i'm not a professional developer in real life i'm a computer/ repair technician).


    @gorkem >:) btw: i like your Signature!!! >:)

    Likes: mykyl66

    TNT ENGiNE for Gideors Studio - Particle Engine, Virtual Pad, Animator Studio, Collision Engine - DOWNLOAD NOW !!! IT'S FREE!!! -
    www.tntengine.com
    +1 -1 (+1 / -0 )Share on Facebook
  • Wow, very cool. That's really impressive "only for fun".
  • @GregBUG, if this work well, I'll be only too happy to donate if that's the route you go down. It will save me lots of time.
  • GregBUG, that is WOW!. I love the space explosion.

    Well done!
  • GregBUGGregBUG Guru
    edited February 2012
    quick update:

    just added gravity to particles engine...

    tonight new video with example 5 "magic funtain" ;)
    TNT ENGiNE for Gideors Studio - Particle Engine, Virtual Pad, Animator Studio, Collision Engine - DOWNLOAD NOW !!! IT'S FREE!!! -
    www.tntengine.com
    +1 -1 (+2 / -0 )Share on Facebook
  • here is it...
    example 5 "magic funtain" (with and without gravity) 220 particles in action at 59fps!





    now go to bed! :)
    tomorrow: raise events! and clean code (try to optimize more)

    ciao ciao
    Gianluca.

    Likes: moopf, atilim, mykyl66

    TNT ENGiNE for Gideors Studio - Particle Engine, Virtual Pad, Animator Studio, Collision Engine - DOWNLOAD NOW !!! IT'S FREE!!! -
    www.tntengine.com
    +1 -1 (+3 / -0 )Share on Facebook
  • This looks very nice ... I'm pretty excited!
  • GregBUGGregBUG Guru
    edited February 2012
    another quick update:
    Color Points example:





    or link: http://www.youtube.com/watch?feature=player_detailpage&v=6xyg5ZWRHNY

    Likes: gorkem

    TNT ENGiNE for Gideors Studio - Particle Engine, Virtual Pad, Animator Studio, Collision Engine - DOWNLOAD NOW !!! IT'S FREE!!! -
    www.tntengine.com
    +1 -1 (+1 / -0 )Share on Facebook
  • today update worklog: :D
    alpha morph in/out + displacement and colors ;;) (150 particles)





    beta testers are you ready ? :D (eh! eh! eh!)
    need to add some 3 little effects and it's ready for beta test.

    hope to finish this week-end!!!
    stay tuned!!!
    TNT ENGiNE for Gideors Studio - Particle Engine, Virtual Pad, Animator Studio, Collision Engine - DOWNLOAD NOW !!! IT'S FREE!!! -
    www.tntengine.com
    +1 -1 (+3 / -0 )Share on Facebook
  • Greg, this is beautiful. Can't wait.
  • I'm ready! Can't wait to test this :D
  • i'm working on class interfaces...
    and i try to semplify at maxiumus the use of engine...

    this is the sources of last example:
    ----------------------------------
    -- TNT Particles Engine         --
    -- By Gianluca D'Angelo         --
    -- (C) 2012 All Right Reserved. --
    -- Very Simple Example 7        --
    ----------------------------------
     
    -- Create simple particle with random speed and
    -- random direction.
     
     
    -- init program
    application:setBackgroundColor(0x000000)
    application:setKeepAwake(true)	
    -- load graphics
    local particleGFX = (Texture.new("pTexture.png"))								-- load particles sprite
     
    -- create new emitter called emitterTest_1
    emitterTest_1 = CEmitter.new(160, 30, 90, stage)							-- create emitter positioned at x 160 y 240 direction 0 degree
     
    particleTest_1 = CParticles.new(particleGFX, 150, 1.5, 1.5, "alpha")				-- create 15 particles, maxLife 1 sec, max delay 1 sec using alpha blending
    -- create particles...
    particleTest_1:defineRandomColors(0, 0, 0, 255, 255, 255)
    particleTest_1:defineSpeed(150,390)										-- define particles speed min 150 pixel/sec max 350 Pixel/sec
    --particleTest_1:defineDirection(0, 45)										-- define random particles direction from 0 to 360 angle
    particleTest_1:defineDisplacement(320, 0)
    particleTest_1:defineSize(1, 2.5)
    particleTest_1:defineAlpha(0, 20)
    --particleTest_1:setAlpha(0)
    particleTest_1:defineAlphaMorphIn(255, 0.4, 0, 8)
    particleTest_1:defineAlphaMorphOut(0, 0.3, 0.7)
     
    -- assign particles...
    emitterTest_1:assignParticles(particleTest_1)								-- assign particle to emitter
     
    -- start emitter
    emitterTest_1:start()														-- start emitter
     
    function onEnterFrame(event)
    	emitterTest_1:update(event.deltaTime)									-- update emitter every frame...
    end
     
    stage:addEventListener(Event.ENTER_FRAME, onEnterFrame)						-- add event listner "onEnterFrame"
    what do you think ?
    it's easy or i need to semplify more ?


    TNT ENGiNE for Gideors Studio - Particle Engine, Virtual Pad, Animator Studio, Collision Engine - DOWNLOAD NOW !!! IT'S FREE!!! -
    www.tntengine.com
  • First thought is that I like that emitters and particles are separate like this - I presume it's easy to change the particles used by the emitter once the emitter is setup?

    The only thing that seems a little odd is that you need to add an event listener to update the particles - surely the particle system should take care of that?
  • gorkemgorkem Maintainer
    Easy - so that one can implement in his own screen in 5 minutes; detailed so that one can change many parameters to suit her needs.
  • @moopf
    First thought is that I like that emitters and particles are separate like this - I presume it's easy to change the particles used by the emitter once the emitter is setup?
    yes emitter and particles are separate.
    you can assign as many particles definition to emmitters and you can have many emitter you like.

    for now at run time you can change emitters postition, angle (and all attached particles) and for particles
    position (local to emitter) rotation, direction, speed. but i plat to add major control for every particle.

    The only thing that seems a little odd is that you need to add an event listener to update the particles - surely the particle system should take care of that?
    yes, you need to add

    emitterTest_1:update(event.deltaTime)
    in your main game loop (for every emitter in the scene)
    i plan to add something like "emitter:updateAll(deltaTime)"
    to update all the active emitters in the scene. but i'm not sure.

    now thinking to add the option to uptade emitters by particles system.
    you think is better ?

    @gorkem.
    thanks i try to make as easy possible. but i need you feedback and tips.
    TNT ENGiNE for Gideors Studio - Particle Engine, Virtual Pad, Animator Studio, Collision Engine - DOWNLOAD NOW !!! IT'S FREE!!! -
    www.tntengine.com
  • Oooh, multiple particles per emitter - I like that a lot! You're really ticking all the boxes on functionality there.

    I do think that the particle system should update the emitters, yes. It's generally a good thing to keep the updating enclosed in the "black box", so as a user I just use start(), stop() etc. to control the particles - I shouldn't have to add my own updating setup once I've done start(), the particle system should take care of that for me. Much more user-friendly.
  • GregBUGGregBUG Guru
    edited February 2012
    Oooh, multiple particles per emitter - I like that a lot! You're really ticking all the boxes on functionality there.

    I do think that the particle system should update the emitters, yes. It's generally a good thing to keep the updating enclosed in the "black box", so as a user I just use start(), stop() etc. to control the particles - I shouldn't have to add my own updating setup once I've done start(), the particle system should take care of that for me. Much more user-friendly.
    yes you are right... :-bd

    mmm... new work for me @-)

    ok. i try to add this... (tonight because now i'm at work!!!)

    [edit]
    just added!!
    thanks @moopf for the tips!
    :D

    now sources look like this:
    ----------------------------------
    -- TNT Particles Engine         --
    -- By Gianluca D'Angelo         --
    -- (C) 2012 All Right Reserved. --
    -- Very Simple Example 2        --
    ----------------------------------
     
    -- Create simple particle with random speed and
    -- random direction.
     
     
    -- init program
    application:setBackgroundColor(0x000000)
    application:setKeepAwake(true)	
    -- load graphics
    local particleGFX = (Texture.new("pTexture.png"))								-- load particles sprite
     
    -- create new emitter called emitterTest_1
    emitterTest_1 = CEmitter.new(160, 30, 90, stage)							-- create emitter positioned at x 160 y 240 direction 0 degree
     
    particleTest_1 = CParticles.new(particleGFX, 150, 1.5, 1.5, "alpha")				-- create 15 particles, maxLife 1 sec, max delay 1 sec using alpha blending
    -- create particles...
    particleTest_1:defineRandomColors(0, 0, 0, 255, 255, 255)
    particleTest_1:defineSpeed(150,390)										-- define particles speed min 150 pixel/sec max 350 Pixel/sec
    --particleTest_1:defineDirection(0, 45)										-- define random particles direction from 0 to 360 angle
    particleTest_1:defineDisplacement(320, 0)
    particleTest_1:defineSize(1, 2.5)
    particleTest_1:defineAlpha(0, 20)
    --particleTest_1:setAlpha(0)
    particleTest_1:defineAlphaMorphIn(255, 0.4, 0, 8)
    particleTest_1:defineAlphaMorphOut(0, 0.3, 0.7)
     
    -- assign particles...
    emitterTest_1:assignParticles(particleTest_1)								-- assign particle to emitter
     
    -- start emitter
    emitterTest_1:start()
    and you can stop, hide, pause with emitterTest_1:stop(), pause(), etc..

    ciao!
    Gianluca-
    TNT ENGiNE for Gideors Studio - Particle Engine, Virtual Pad, Animator Studio, Collision Engine - DOWNLOAD NOW !!! IT'S FREE!!! -
    www.tntengine.com
  • here is an apk of last example...

    if some one can test and feedback on performaces... (really interessed on cheap devices)
    (sorry only android!)

    here is it:
    zip
    zip
    getting_start4.apk.zip
    2M
    TNT ENGiNE for Gideors Studio - Particle Engine, Virtual Pad, Animator Studio, Collision Engine - DOWNLOAD NOW !!! IT'S FREE!!! -
    www.tntengine.com
  • Works a treat here on my Acer A100 tablet (it's a cheap 7" tablet)
  • @moopf thanks.
    (hey your tablet is a1GHz dual-core Nvidia Tegra 2 processor) it's very powerful!! :D
    TNT ENGiNE for Gideors Studio - Particle Engine, Virtual Pad, Animator Studio, Collision Engine - DOWNLOAD NOW !!! IT'S FREE!!! -
    www.tntengine.com
  • haha, is it? I just got the cheapest Android tablet I could that was 7" (to test a different screen density and ratio). Got it from Amazon, about 250 GBP if I remember rightly. It's OK, it's not as smooth as the iPad and the battery life is rubbish :D I didn't want anything powerful, looks like I didn't pay enough attention to specs!
  • Got one LG Optimus One (P500), the cheapest you can get, but don't have it on my hands right now (been sick and home all week) so probably will get my hands on it next week, if you're still interested in feedback.
  • @ar2rsawseen

    yes i'm interested. when you can test please tell me the results.

    thanks.
    Gianluca.
    TNT ENGiNE for Gideors Studio - Particle Engine, Virtual Pad, Animator Studio, Collision Engine - DOWNLOAD NOW !!! IT'S FREE!!! -
    www.tntengine.com
Sign In or Register to comment.