I am trying to make 2 material shader get a smooth transfer (blend or mix)
so i add a “mix” in SHOP>VOP, then i write use a channel editor to edit the keyframe.
But it doesn't work , when i render , the value didnt change at all,
and the OP got a yellow border mean error on it
how should i do ? or is it VOP cannot use CHOP ??
VOP cannot use CHOP
3856 6 1- freesign
- Member
- 104 posts
- Joined: March 2008
- Offline
- tamte
- Member
- 8635 posts
- Joined: July 2007
- Offline
you cannot animate vops directly, because they are being compiled to the vex code
what you need to do is create a parameter VOP and connect it to bias input (or middle click on bias input and choose Create Parameter Node)
the Parameter VOP will be promoted to the shader parameters and you can animate it there
what you need to do is create a parameter VOP and connect it to bias input (or middle click on bias input and choose Create Parameter Node)
the Parameter VOP will be promoted to the shader parameters and you can animate it there
Tomas Slancik
FX Supervisor
Method Studios, NY
FX Supervisor
Method Studios, NY
- edward
- Member
- 7766 posts
- Joined: July 2005
- Offline
- freesign
- Member
- 104 posts
- Joined: March 2008
- Offline
thanks for answering
and what about if I wan't to set a keyframe ?
i wan't the expression working while frame == 100 .
i try to write a while expression like that :
while($F > 100 && $F<200 ) # to select the keyframe
$F* 0.1 # the promote value
end # end
but look like it doesn't work , can I know more tips about animate VOP please?
thanks!!
and what about if I wan't to set a keyframe ?
i wan't the expression working while frame == 100 .
i try to write a while expression like that :
while($F > 100 && $F<200 ) # to select the keyframe
$F* 0.1 # the promote value
end # end
but look like it doesn't work , can I know more tips about animate VOP please?
thanks!!
- probbins
- Member
- 1145 posts
- Joined: July 2005
- Offline
As Tomas mentioned you can not animate a parameter in vops. This is a programming environment and the code inside vops is compiled into a material before it is used.
If you wish to animate a parameter you need to promote it out to the material level, using a parameter node.
Use the MMB on an input and “Create Parameter”… this will promote that parameter out.
Because the compile is happening so quickly it can seem like you have direct, interactive access to vops.
If you wish to animate a parameter you need to promote it out to the material level, using a parameter node.
Use the MMB on an input and “Create Parameter”… this will promote that parameter out.
Because the compile is happening so quickly it can seem like you have direct, interactive access to vops.
“gravity is not a force, it is a boundary layer”
“everything is coincident”
“Love; the state of suspended anticipation.”
“everything is coincident”
“Love; the state of suspended anticipation.”
- tamte
- Member
- 8635 posts
- Joined: July 2007
- Offline
according to your screencap, i can see that you have created the Parameter VOP, but notice that the parameter you are trying to animate is called “1 float default” which literally means that value specified there is used as the default value of the parameter when the VOP network is compiled. The actual parameter you want to animate is located one level above on the VOP network itself.
At this level you can animate it and use expressions
(i am not sure if your question was also about expressions then this might help you anyways)
you can use “if” expression to specify conditions
like if($F>100 && $F<200, $F*0.1, 0) or more complex
also notice in graph editor that you can select curve segment between 2 keyframes
then you can specify function of that segment like linear(), bezier()…
but besides those you can write there any expression you want and it will be used only for that segment
you can use there channel variables from http://www.sidefx.com/docs/houdini10.0/expressions/_globals [sidefx.com]
to have full control
At this level you can animate it and use expressions
(i am not sure if your question was also about expressions then this might help you anyways)
you can use “if” expression to specify conditions
like if($F>100 && $F<200, $F*0.1, 0) or more complex
also notice in graph editor that you can select curve segment between 2 keyframes
then you can specify function of that segment like linear(), bezier()…
but besides those you can write there any expression you want and it will be used only for that segment
you can use there channel variables from http://www.sidefx.com/docs/houdini10.0/expressions/_globals [sidefx.com]
to have full control
Tomas Slancik
FX Supervisor
Method Studios, NY
FX Supervisor
Method Studios, NY
- freesign
- Member
- 104 posts
- Joined: March 2008
- Offline
-
- Quick Links