Jump to content
art3mis

[Redshift] accessing CHOP network from inside RS vopnet

Recommended Posts

Hi
I want to use a standard chop expression ie “chop(obj/chop_network/OUT/myValue)” inside a RS vopnet to animate a shader value.

Is this possible?

What RS node should I be using?

redshift_vopnet.png

Share this post


Link to post
Share on other sites

Just make a parameter for the value, and link the parameter to the chop outside the shader itself.

Share this post


Link to post
Share on other sites

Thanks. Total novice when it comes to manipulating shader VOPs. How would I animate brightness or saturation values when the standard Redshift material has no input for those parameters?

Share this post


Link to post
Share on other sites

Yep, that is the limit of the Redshift Volume, it accepts no inputs at this time.

However, you can supply two fields to control the look. Use your CHOP value to modulate the field in question. Brightness would typically be associated with heat or temperature but you can create any custom field. 

Just think of it as a standard Houdini pyro task. How would you route brightness from CHOPs into pyro in general?

Once you have that solved and you can see the result in the viewport, write out a .bgeo.sc sequence from the DOP I/O node and assign a Redshift Volume as the material.

 

Another option would be to add a rsMaterial and connect it to the surface input. The rsMaterial does have an emission component which can accept input from an attribute. Write your CHOP value to a point attribute (scatter into a volume) then fetch the attribute in the VOP network using a rsPointAttribute node. Redshift gets a little slow on export using this technique but you should experience ok render times with points counts up to several thousand. 

For an example on routing point attributes to rsMaterial check out the Redshift procedural planet example file I posted in the thread you started for Redshift examples.

Edited by Atom

Share this post


Link to post
Share on other sites

Thanks Atom! Where I am stumbling is my understanding of

Quote

" Write your CHOP value to a point attribute (scatter into a volume)"

In the attached image you can see I have defined a new point attribute at the Obj level, and then inside at SOP level used the following VEXpression to reference the CHOP data. ` backquotes seemed to be necessary

`v@point = chop("/obj/music/LOW_OUT/low")*10`

 

And then in my RS vopnet created a ParticleAttributeLookup piped to emission_color of a RS_Material which in turn is piped to the Surface parameter (picture 3)

Am I on the right track?

attribute1.png

attribute2.png

attribute3_vopnet.png

Edited by art3mis

Share this post


Link to post
Share on other sites

Here are a couple of ways.

You can directly modulate the Source Volume Scale using a CHOP expression.

Untitled-1.jpg

That same expression can drive the Emission weight in the vopnet too. So you can skip the step of converting CHOP to an attribute and routing it through the Redshift attribute system.

ap_rs_CHOP_To_Modulate_EMIT.hiplc

ap_rs_CHOP_To_Modulate_Source_Volume.hiplc

Edited by Atom

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

×