Jump to content

Recommended Posts

Posted

Is there any feasible way to get particle collisions? I don't care about any sort of response or velocity or where it happened, I just need to know it happened, and be able to kill that particle. Even if I could get the position of the particle I could find out collision myself.

Posted

It's possible to get the position of a particle, but only in BlitzMax at the moment. The class property for the particle position would need to be exported to the dll to be able to use it in other languages.

Ryzen 9 RX 6800M ■ 16GB XF8 Windows 11 ■
Ultra ■ LE 2.53DWS 5.6  Reaper ■ C/C++ C# ■ Fortran 2008 ■ Story ■
■ Homepage: https://canardia.com ■

Posted

As far as I'm aware ... no, on the basis that the particles (quads) themselves are all internal to Josh's engine and are not exposed to us. You could write your own particle system ;)

Intel Core i5 2.66 GHz, Asus P7P55D, 8Gb DDR3 RAM, GTX460 1Gb DDR5, Windows 7 (x64), LE Editor, GMax, 3DWS, UU3D Pro, Texture Maker Pro, Shader Map Pro. Development language: C/C++

Posted

You can't delete a single particle.

But you could move it far away, so that it's not visible anymore. You would probably need to do this in each frame until the particle is removed by the engine.

Ryzen 9 RX 6800M ■ 16GB XF8 Windows 11 ■
Ultra ■ LE 2.53DWS 5.6  Reaper ■ C/C++ C# ■ Fortran 2008 ■ Story ■
■ Homepage: https://canardia.com ■

Posted

So you can access particles individually in BMax then?

Intel Core i5 2.66 GHz, Asus P7P55D, 8Gb DDR3 RAM, GTX460 1Gb DDR5, Windows 7 (x64), LE Editor, GMax, 3DWS, UU3D Pro, Texture Maker Pro, Shader Map Pro. Development language: C/C++

Posted

You can't really move a particle on its own, either. Particles are never removed, they just get recycled in a loop.

My job is to make tools you love, with the features you want, and performance you can't live without.

Posted

I was thinking more of ending the "life" of it instantly. Not delete. I read that they are recycled and that's fine, but I'd like to end the life of a given particle instantly if it hits something so it can be recycled. If I had the position of each active, alive, whatever you want to call it, I could do some collision checks to see if they hit something.

 

I also realize that we put particles in the transparency world and the models would be in the main world, but I should still be able to check positions for what would be a collision. My idea currently it to create a rain cloud if you will. It will have raining coming from it, but I want the rain particles to stop when they collide with anything.

Posted

I think you should make your own emitter class in C++. You can then entitypick from the cloud vertically down to see where it collides. The particles would be drawn with OpenGL 3D sprites (like drawimage, but with 3D position).

Ryzen 9 RX 6800M ■ 16GB XF8 Windows 11 ■
Ultra ■ LE 2.53DWS 5.6  Reaper ■ C/C++ C# ■ Fortran 2008 ■ Story ■
■ Homepage: https://canardia.com ■

Posted

Lumooja, I use LE so I don't have to use OpenGL. ;)

You can use OpenGL commands from LE. LE doesn't have all OpenGL commands as native LE commands, so you need sometimes to use raw OpenGL commands in LE also. The most popular example is drawing 3D lines, that can be done only when using OpenGL within LE.

Ryzen 9 RX 6800M ■ 16GB XF8 Windows 11 ■
Ultra ■ LE 2.53DWS 5.6  Reaper ■ C/C++ C# ■ Fortran 2008 ■ Story ■
■ Homepage: https://canardia.com ■

Posted

Yeah, I realize that. I guess my first thought it going to always be how can I do this in pure LE first. If there is 0% chance of doing it then I'll look somewhere else.

Posted

Make a mesh out of n*2 number of triangles, and move the vertices around to make particles. That's how we all did it in the days of Blitz3D.

My job is to make tools you love, with the features you want, and performance you can't live without.

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...