View Full Version : set particle colour at birth

11-11-2008, 08:25 PM
Hi All,

I'm having a beast of a time trying to figure stuff out in TP and Expresso.

I'm trying to create an audio driven particle system, where the audio drives stuff like particle size, which I can do no problem.

I can't quite figure out how to set the particles base colour in its material at birth, and get it to stay the same colour from then on. So eventually I end up with a stream of particles whose colour and size reflects the audio value.

Everything I try ends in tears.

I'm trying to add channels here, pgetdata there... whatever. Its driving me f*&^ng crazy.

Anyone got any pointers?

11-12-2008, 06:07 AM
You can only set the particle color by either choose a different shape that has the different material assigned, or by a tricky setup using an animated texture tag and a direct control over the particles age. I would recommend the first one if you haven't to many varying colors.

11-12-2008, 07:47 AM
Thanks for getting back to me Björn.

I thought it might be tricky!

I spent all day yesterday banging my head against a wall trying to find a solution and got nowhere.

I managed to get the sound effector to drive the particle size through the SetData node, but couldn't figure out how to do the colour. I added a data channel in the Thinking particle settings, but this didn't seem to do anything!

It totally bummed me out.

I'm trying to do the same thing in tandem in After Effects with Particular, and I can set the colour at birth with that no problem, but there are so many other limitations with this method that I thought I'd try a 'true' 3D route - but hit this wall almost immediately.

Basically the colour needs to be driven by the audio, so there may be up to 100 different shades of one colour. I'm using the brightness value linked to the audio, so if the frequency is high the colour is bright, and if the frequency is low the colour is darker.

I'm not sure which method you suggest would be best.

If I go for the first I'd need 100 different particles / materials if I was going to map the value from 0 - 100%.

If I go for the second, I don't see how the age of the particle can be used to keep the same assigned colour that the audio dictated at the particles birth.

So many questions!

11-12-2008, 08:41 AM
Store the control information at birthtime in a data channel and reapply it during animation to set the particles age. That way you always set the particles age and therefore the animation state of the texture tag depending on the original control information.

11-13-2008, 08:56 PM
Hey Björn,

Well, after a couple of days of futzing around...I'm seem to be getting somewhere (I think)

But its still not there.

The particles are born all over the place, and it seems to be driven by the audio!

They change colour, which is not driven by the audio :rolleyes:

Is there any chance you could help a guy out and take a look at my project?

I'd really appreciate it, I'm getting a nose bleed here.

I've keyframed between my two materials and attached it to my object thats being emitted.

I then created a null and added user data to it, which I then connected my sound effector via the sample effector node.

I then attached this node to a PsetData nodes Age port via some math node.

Its doing something, but I don't know what!

warmest regards (on knees)

I'm not sure about attachments here, so I put a copy on my site...



11-14-2008, 01:19 AM
Hi, instead of using the Particle Geometry object you can use a Mograph Cloner object to place your geometry on the particles. Set the cloner to object mode and drag the particle group from the thinking particles settings into the link box, you can then use affectors directly on the clones. The sound effector has a frequency colour control.


11-14-2008, 11:53 AM

I'm afraid thats not making much sense either.

I think I've gotta go back to TP MoG 101 tutorials and start again. There's something fundamental here I'm not getting.

Is it me, or is this stuff really hard?

Its making me feel like a dunderhead. :cry:

11-14-2008, 04:16 PM
Have a look at this example. Actually it's quite hard to get the exact control you need, but with a bit of tweaking you may get what you want.

CGTalk Moderation
11-14-2008, 04:16 PM
This thread has been automatically closed as it remained inactive for 12 months. If you wish to continue the discussion, please create a new thread in the appropriate forum.