I don’t mind where you reply, could be here or on reddit. Thanks for any help you can give!
I think it is because you store your attribute on points, (on the surface of your geometry) but volume does not have a surface or points/verts, so volume nodes do not know what to do with the attribute.
But you can create effects using the position output of the “geometry” node and plug that into the density of the volume shader and that works, so you’re able to use point information in that case.
So, what is the alternative? Because I know you can create such density effects with the “geometry” shader node, so I feel like there must be a simple fix.
The “geometry shader node”'s position is the position world space, so it does give values from the world origin 0,0,0 to any point in space.
The position of the points in geometry nodes are the positions of the verts on the surface geometry (local space), where there is no point there is no value.
Okay. Is there any way to get a position of a single point in world space from geometry nodes into shader nodes for volumes. Here’s my hypothetical scenario:
I’ve got a geometry nodes setup with a primitive ico sphere node connected to a set position, moved up in the z axis by let’s say 1 metre.
I want a spherical gradient of volume density from high density in the middle of the icosphere outwards.
Normally I would just use Object coordinates as the vector for the gradient texture, but that doesn’t work because I think it sets the 0,0,0 coordinates to the origin of the object, which is in this case different from the middle of the icosphere.
the reason I want it to come from geometry nodes and not just add 1 metre to the object coordinates is because I want to be able to change the height from a geometry nodes setup that will get more complex as time goes on, but I want the gradient to obviously remain relative to the icosphere.
Any ideas?
I dont think that is possible at the moment. Volumes in geo nodes are eather unfer developed st the moment.
Besides turninf stuff into a volume and back into meshed or points thete is not that muvh you can do in geo nodes.
It would be great to get a couple more ways to manipulate volumes or at least to join multiple oned into one
But at the moment there is not much you csn do.
That works for density, any idea how I could get this gradient to use as a factor for a mix shader for emission strength within a volume?
Oh!!! Thankyou! Let me test!
Note that I set the mapping node to texture!
If set to point you have to displace by -0.5.
That works, thankyou!!
Like this:

Uh oh! It works for the sphere preview but not for my icosphere!
I know why though. The geometry is joined with a cyllinder below it in geometry nodes, even though only the icosphere has the material set to the volume.
Is there any way to have this gradient without having to separate the objects into two separate objects?
Just set the material before joining the geo and give the stalk a different material.
If you joined the geo before entering the GN setup that will make things more tricky.
Edit
Ok maybe this is your problem, I was using instances.
If you have a setup like this;
You would have to convert either the orb or the wand into an instance so the bounding box does not mix when you join the geo.
Brilliant! Thankyou so much!










