Shader graph for particles


In order to use a custom shader graph in the particle system, I created an unlit shader graph, and enabled custom vertex streams in the Renderer module of my particle system.

The custom vertex streams allow the shader to access the particle data like the color or the lifetime, which is very useful.

But I don’t know how I can access COLOR and TEXCOORD streams in the shader graph.

I tried using a parameter, I tried using a “vertex color” node, but none worked.

Is it supported yet ?

Hello @Snowirbis,

it is indeed vertex color, which is modified by shuriken particle system, as you say.
Color property can be accessed by vertexColor.RGB and Aplha by vertexColor.A.

EDIT: Agree, that this has nothing to do with custom vertex streams, sorry, but this part is true:

Other properties like UVs, Age of the particle etc. can be accessed by adding proper Vertex stream - in the bracket, there is hint for you to know, how it can be accessed in shader.

I agree that this needs to be documented better.

@sewy that is just an overall vertex color node that doesn’t have anything to do with the custom vertex streams you can add on particle systems. As far as I can see there is no way to access the custom streams from the Shader Graph nodes. The whole HDRP and Shader Graph system seems far from done with regards to particles in general unfortunately… :frowning: