Particle Color Based on Parent Generated (Procedural Texture) Color

Hello everyone,

I’ve found an answer about image texture being assigned to a parent object material here. But what if the material is fully procedural? Is it possible inherit a color without baking, unwrapping, etc.?

It kind of depends on how you’re looking up that color. If you’re using something other than UV coords as inputs to your procedural materials, then you’ll get per-particle versions of those instead, which is not what you want.

However, it’s really easy to create UV coords that act like generated or object coords. You can get UV of your generated coords with 2 UVs, each projected from view (bounds) on an orthogonal axis. Object coords are similar to generated coords, but with some important distinctions that are only relevant sometimes, and which can maybe be worked around (not sure if you could work around dynamic scale from the emitter without using a driver, and getting coords post-modifier should be possible with a UV project modifier, not sure that will work properly for particles though.)

Bandages,

Thank you for your reply!

It looks like I found a solution: using the same base part of material (which may be grouped, for convenience) for both (the particles and the parent) just coordinates should be taken differently (by location for the particles and by object for the parent).

No, that’s no good. Try picking up the cube and moving it and see what happens for hair particles, or let emitter particles run a few frames and see what happens.

For hair, for the cube you’ve shown, you could just use object coords from the cube for the particle. For emitter particles, that’s unlikely to do what you want.

You’re right. But for my static object with static particles, it was OK.

For moving objects, it looks like drivers can help. At least this article makes me think so.