modification for particles system

Discuss about anything related to the Irrlicht Engine, or read announcements about any significant features or usage changes.
jox
Bug Slayer
Posts: 726
Joined: Thu Apr 22, 2004 6:55 pm
Location: Germany

Post by jox »

Ok, no problem, good you're still improving things!

I'll add your fix to doParticleSystem()

About the EPSM_GLOBAL_AXIALBILLBOARD.

First, I would name it EPSM_GLOBAL_AXIAL_BILLBOARD

Then it should be no problem to add a function like this to CParticleSystemSceneNode

Code: Select all

configureAxialBillboard(core::vector3df orientation, f32 width)
What else it making it a beta version (except unknown issues that might evolve)?
calimero
Posts: 45
Joined: Sun Aug 08, 2004 4:31 pm
Location: Nice, France

Post by calimero »

jox you can name the mode as you want !!! :)
I call it beta version because I implment it this afternoon and I'm not 100% sure it's bug free. For the billboard the emitter vector and the orientation is global. I don't think about usage which may requires parameters local but who knows. I test it with a large horizontal square emitter box above the scene to make rain and it does the job. here is a screenshot but it looks better when animated
Image
bal
Posts: 829
Joined: Fri Jun 18, 2004 5:19 pm
Location: Geluwe, Belgium

Post by bal »

Omg, nice. This looks like rain in modern games, except the rings when hitting the ground :).
General Tools List
General FAQ
System: AMD Barton 2600+, 512MB, 9600XT 256MB, WinXP + FC3
Electron
Posts: 874
Joined: Sun Mar 14, 2004 12:05 am
Location: Massachusetts USA

Post by Electron »

hmm, how do they do those? Collision testing on every particle would be expensive. . .
You do a lot of programming? Really? I try to get some in, but the debugging keeps me pretty busy.

Crucible of Stars
Masdus
Posts: 186
Joined: Tue Aug 26, 2003 1:13 pm
Location: Australia

Post by Masdus »

if you watch closely you would notice that the ripples don't correspond to the location of the collisions. Generally its just a random effect on the surface. As long as people dont look to hard at it the effect is quite nice
jox
Bug Slayer
Posts: 726
Joined: Thu Apr 22, 2004 6:55 pm
Location: Germany

Post by jox »

News:

I added the fix for box emitters and the new EPSM_GLOBAL_AXIAL_BILLBOARD mode to the IrrlichNX CVS!

@Calimero could you please test the stuff? :)

I added the function:

setupAxialBillboard(f32 width, const core::vector3df orientation)

I used default values of 1.0 for witdh and (0,-1,0) for orientation. I thought these were more generic...
jox
Bug Slayer
Posts: 726
Joined: Thu Apr 22, 2004 6:55 pm
Location: Germany

Post by jox »

Calimero, we have an issue...

the box emitter fix messes up the point emitters... :cry:
They dont work anymore at all after the fix...

If you could take another close look and find a solution that both emitters get supported the same would be really cool!
nitroman

Post by nitroman »

if you watch closely you would notice that the ripples don't correspond to the location of the collisions. Generally its just a random effect on the surface. As long as people dont look to hard at it the effect is quite nice
thats's a good idea! :wink:
calimero
Posts: 45
Joined: Sun Aug 08, 2004 4:31 pm
Location: Nice, France

Post by calimero »

jox : I just make test last night with the new version of irrlichtnx but make only test with the box emitter :( . For the box emitter everything seems ok. I will take a look this evening, sorry for the inconvenience !!!
calimero
Posts: 45
Joined: Sun Aug 08, 2004 4:31 pm
Location: Nice, France

Post by calimero »

ok I just take a look at the pointemitter and i think I have good news :

in CParticlePointEmitter.cpp the position of the particle computed is not initialized. So I just add

Code: Select all

Particle.pos = core::vector3df(0,0,0);
in the CParticlePointEmitter::emitt method (for example just after Particle.startVector = Particle.vector;)

Until now I just use box emitters and I have to say that I'm a little puzzled by the point emitter code : I can't figure how it can work without the initialisation I add. Another point is that contrary to the box emitter the emitt method seems to just produce 1 particle at a time (the box emitter produces n particles). If someone can explain me that.

but to be pragmatic I think my patch is working, :D

-> Jox can you test it ?
jox
Bug Slayer
Posts: 726
Joined: Thu Apr 22, 2004 6:55 pm
Location: Germany

Post by jox »

@calimero: it seems to fix it! Thanks very much. It's integrated in NX.
Post Reply