Setting Particle Systems to Local Coordinates?

Got problems with your models? Struggling with textures? Get help with your custom assets.

Setting Particle Systems to Local Coordinates?

Postby Zanarias on Thu Mar 17, 2011 6:48 pm

Pretty much the title. Is there a way to set up particles to operate based on local coordinates according to the info_particle_system placed, or do I honestly need to adjust particles each time based on their position in the world? Any help would be appreciated.
Zanarias
Member
Member
 
Joined: Wed May 14, 2008 2:46 am

Re: Setting Particle Systems to Local Coordinates?

Postby Jangalomph on Thu Mar 17, 2011 7:51 pm

They should emit from where ever the info_particle system is.

I am having a problem where i have electricity particles that spawn continuously.. and they all go to the center of the map from info_particle_system >> to center.. which really ruins the effect.

But i don't understand your question.
http://www.nomoreroominhell.com
I don’t know whether I was right or wrong, I guess I’ll never know… But I made it. And I guess I should be thankful for that. - Strelok
Has anyone really been far even as decided to use even go want to do look more like?
User avatar
Jangalomph
Forum Goer Elite™
Forum Goer Elite™
 
Joined: Wed Jun 25, 2008 3:19 pm
Location: Sumter, SC

Re: Setting Particle Systems to Local Coordinates?

Postby Zanarias on Thu Mar 17, 2011 9:02 pm

Particle effects don't rotate based on the orientation of info_particle_system entity as far as I'm aware. It would be great if they did and I want to know if there's a way to enable this without having to edit the core particle itself.
Zanarias
Member
Member
 
Joined: Wed May 14, 2008 2:46 am

Re: Setting Particle Systems to Local Coordinates?

Postby Jangalomph on Thu Mar 17, 2011 9:34 pm

Ah.. i've run into this problem too with steam particles. Im not entirely sure there is a way to change it. Just make variations of the particle :/ Thats your best bet.
http://www.nomoreroominhell.com
I don’t know whether I was right or wrong, I guess I’ll never know… But I made it. And I guess I should be thankful for that. - Strelok
Has anyone really been far even as decided to use even go want to do look more like?
User avatar
Jangalomph
Forum Goer Elite™
Forum Goer Elite™
 
Joined: Wed Jun 25, 2008 3:19 pm
Location: Sumter, SC

Re: Setting Particle Systems to Local Coordinates?

Postby Terr on Tue Mar 22, 2011 11:40 pm

Try using "Control Points" for the particles. These are values on the particle_system coordinates which you set inside Hammer, and different particle modifiers can use them differently. Try using an info_target or (if it never changes after the map is made) an info_null entity.

For example, I have a system of "water sprinkler" particle effect, and I want to make them fall until the place where the roof is. So set CP1 as a map-entity which is positioned at the correct spot.
Terr
Sir Post-a-lot
Sir Post-a-lot
 
Joined: Mon Oct 12, 2009 11:35 pm

Re: Setting Particle Systems to Local Coordinates?

Postby Jangalomph on Tue Mar 22, 2011 11:43 pm

Terr wrote:Try using "Control Points" for the particles. These are XYZ coordinates which you set inside Hammer, with something like an info_target or (if it never changes after the map is made) an info_null entity.

For example, I have a system of "water sprinkler" particle effect, and I want to make it end right where the water surface is. So set CP1 as a map-entity which is positioned at the correct spot.


Elaborate on this. I've used control points for particles on my electricity, if i set it to a different control point, does that means it emits from the emitter but goes to the info_target? If so, thats the answer to my problems! And it very well could be used to change steam around! Why didn't i think of that! :-D
http://www.nomoreroominhell.com
I don’t know whether I was right or wrong, I guess I’ll never know… But I made it. And I guess I should be thankful for that. - Strelok
Has anyone really been far even as decided to use even go want to do look more like?
User avatar
Jangalomph
Forum Goer Elite™
Forum Goer Elite™
 
Joined: Wed Jun 25, 2008 3:19 pm
Location: Sumter, SC

Re: Setting Particle Systems to Local Coordinates?

Postby Terr on Wed Mar 23, 2011 8:18 am

jangalomph wrote:Elaborate on this.


In the Particle Editor:

  • Create some basic particle which emits a "stream" of particles that are limited in how old they can be, resulting in them popping into and out-of existence at a relatively constant rate. (There are better guides for this.)
  • Add a "Movement Basic" operator, and set gravity to "0 0 -1000" for downwards movement.
  • You should now have a lines of "dripping" particles. The particle might stop traveling eventually, but if so it's due to a time-limit on the "life" of each particle.

In Hammer:
  • Create an info_particle_system as you normally would, using the new system you already defined.
  • Put a thin "table" brush half-way underneath it.
  • If you compile and preview it at this point, you should see a "dripping", but it'll drip through the table, and perhaps through the floor until some arbitrary point.
  • Create an an info_target entity at a specific height (like on top of a table) and name it "bob". (Could be any kind of entity, technically.)
  • Go to the info_particle_system, click on "Control Point 1", and use the eyedropper or textfield to enter "bob".

Back in the particle editor:
  • Add a "Cull When Crossing Plane" operator. Set the "Normal" to "0 0 -1", forming a horizontal plane.
  • Change "Control Point For Point" to "1".
  • Look at the "Preview" pane. There is a tab called "Ctrl Pts". "Pt #0" is where your particle system starts. "Pt #1" is the coordinates that (in the real game) will come from entity "bob".
  • Change "Pt #1" to something like "0 0 -500". Experiment with different values, and you will see that it determines where your dripping particles abruptly stop.

Compile the map, and "bob" should be an adjustable rough boundary for how far (vertically) the drips move before stopping. (Finer tuning due to particle sprite size can be done with "Cull Plane Offset" setting.)

Other thoughts:
  • There are a bunch of operators and other things which use Control Point settings, not just "Cull When Crossing Plane".
  • I think you can use a dynamic/moveable Control Point entity (like a physics prop) as a control point, so you could have a lighting-beam that always connects two objects in a room.
  • I think you can switch the value for "Control Point X" with the I/O system so that you can swap which value is being given for a Control Point.
  • If you parent the control point to the info_particle_system entity, then you may be able to move the whole thing around as a unit.
Terr
Sir Post-a-lot
Sir Post-a-lot
 
Joined: Mon Oct 12, 2009 11:35 pm

Re: Setting Particle Systems to Local Coordinates?

Postby Zanarias on Mon Apr 25, 2011 8:54 pm

Sorry for a rather useless and contentless bump, but just wanted to say thanks for helping out, Terr. I'll try what you said when I hop back over to particles, thanks a bunch.

EDIT: Additionally there seems to be an Operator or Initializer (I forgot already, hark) that gives you the option to orient the effects to a specified control point. Surprised I didn't see this before. Thanks again!
Zanarias
Member
Member
 
Joined: Wed May 14, 2008 2:46 am

Return to Custom Asset Help

Who is online

Users browsing this forum: No registered users