So we have our various image planes in pyro.
Smoke Color - Seems to be everything combined (aka beauty pass)
Smoke Mask
Fire Color
Fire Mask
Scatter
Im not really clear if there is a "proper" way to composite these things. What is the proper math..
I would imagine in general you want Beauty = (Smoke + Fire + Scatter )... basically
But then there is this business with the masks. I was hoping Smoke Color would just be the lighting and shading for just the smoke itself without any fire or scattering effects. But that is not the case.
Do i have to modify the shader to export smoke only or am I just thinking about this wrong?
-A
proper way to composite pyro image planes.
Started by anupamd, Jul 11 2012 11:20 PM
7 replies to this topic
#1
Posted 11 July 2012 - 11:20 PM
#2
Posted 12 July 2012 - 01:03 AM
Ok I looked into this further. Looks like what I need to do is modify the pyroShader so that it exports Smoke Color without any influence from fire. Thinking this was straight forward
I dove into the shader and realized I cannot dive into the PyroShade node. Is this a locked node? Is there a place where the shader code exists or a place where I can get access to a full VOP based pyroshader?
I dove into the shader and realized I cannot dive into the PyroShade node. Is this a locked node? Is there a place where the shader code exists or a place where I can get access to a full VOP based pyroshader?
anupamd, on 11 July 2012 - 11:20 PM, said:
So we have our various image planes in pyro.
Smoke Color - Seems to be everything combined (aka beauty pass)
Smoke Mask
Fire Color
Fire Mask
Scatter
Im not really clear if there is a "proper" way to composite these things. What is the proper math..
I would imagine in general you want Beauty = (Smoke + Fire + Scatter )... basically
But then there is this business with the masks. I was hoping Smoke Color would just be the lighting and shading for just the smoke itself without any fire or scattering effects. But that is not the case.
Do i have to modify the shader to export smoke only or am I just thinking about this wrong?
-A
Smoke Color - Seems to be everything combined (aka beauty pass)
Smoke Mask
Fire Color
Fire Mask
Scatter
Im not really clear if there is a "proper" way to composite these things. What is the proper math..
I would imagine in general you want Beauty = (Smoke + Fire + Scatter )... basically
But then there is this business with the masks. I was hoping Smoke Color would just be the lighting and shading for just the smoke itself without any fire or scattering effects. But that is not the case.
Do i have to modify the shader to export smoke only or am I just thinking about this wrong?
-A
#3
Posted 12 July 2012 - 09:50 AM
The Pyro Shade VOP is a coded VEX Builder Type VOP node. To modify it RMB on the tile and choose the "Type Properties..." option to open up the Edit Operator Type Properties.
If you go to the Code tab, you will see the vex code there.
The Input/Output tab is where you declare all the input and output tabs that you can read and write to in the Code section with $ prefixes to make sure that the variables are uniquely named when the VEX compiler runs.
The Parameters that you wish to raise as user controls are added in the Parameters tab and if these are to tie in to the variables in the code and the Input/Output input/outputs, they have to have the same name and type as those.
This VOP has two includes in the outer code section. You can find these files in $HFS/houdini/vex/include directory to see all the functions.
I wouldn't edit this VOP Asset directly. I would make a copy of this asset then modify the copy. To do this, RMB on the VOP and choose the "Operator Type Manager.." option. This opens up the Operator Type Manager dialog with the current asset highlighted. RMB on this highlighted asset and choose the "Copy" option. You now get the familiar dialog when you first create an asset from scratch where you specify your own name, label and location where to save the asset. Do this. Then after you complete this, you now have a copy of the asset both on disk and installed in the scene file. Tab-type add your new copied version of the existing asset and merrily start editing away without fear of corrupting the shipped Pyro Shade VOP.
If you go to the Code tab, you will see the vex code there.
The Input/Output tab is where you declare all the input and output tabs that you can read and write to in the Code section with $ prefixes to make sure that the variables are uniquely named when the VEX compiler runs.
The Parameters that you wish to raise as user controls are added in the Parameters tab and if these are to tie in to the variables in the code and the Input/Output input/outputs, they have to have the same name and type as those.
This VOP has two includes in the outer code section. You can find these files in $HFS/houdini/vex/include directory to see all the functions.
I wouldn't edit this VOP Asset directly. I would make a copy of this asset then modify the copy. To do this, RMB on the VOP and choose the "Operator Type Manager.." option. This opens up the Operator Type Manager dialog with the current asset highlighted. RMB on this highlighted asset and choose the "Copy" option. You now get the familiar dialog when you first create an asset from scratch where you specify your own name, label and location where to save the asset. Do this. Then after you complete this, you now have a copy of the asset both on disk and installed in the scene file. Tab-type add your new copied version of the existing asset and merrily start editing away without fear of corrupting the shipped Pyro Shade VOP.
There's at least one school like the old school!
#4
Posted 12 July 2012 - 09:53 AM
There is no VOP based version of the Pyro Shade VOP at this time.
There's at least one school like the old school!
#5
Posted 13 July 2012 - 01:53 PM
ok thanks for the info. I will try your steps.. sounds straight forward.
-A
-A
#6
Posted 14 July 2012 - 05:01 AM
here I am to bring you the "el cheapo" dirty hint just in case you are in a hurry
I created two takes, smoke and fire, and for each one I emptied the other density field on the pyro shader.
Obviously, you loose the scattering (which I don´t know now, but a few months ago it wasn´t working properly anyway), and is not a proper production solution, but well...it´s very fast to setup
EDIT: ah, I found your thread about fake scattered emission...most interesting..
I created two takes, smoke and fire, and for each one I emptied the other density field on the pyro shader.
Obviously, you loose the scattering (which I don´t know now, but a few months ago it wasn´t working properly anyway), and is not a proper production solution, but well...it´s very fast to setup
EDIT: ah, I found your thread about fake scattered emission...most interesting..
Edited by Netvudu, 14 July 2012 - 05:06 AM.
#7
Posted 14 July 2012 - 06:38 PM
Ok, tried your steps oldschool.. and looked at the code. So no problemo looks all good huge thanks.
the only problem now that Im having is on the UI side, I want to essentially steal the UI promotions from the old pyroShader then delete the old PyroShader (Im using the Pyro2.0 shader as a skeleton)
But when I promote the parameters just as they are promoted in the original PyroShader, they do not promote to the correct tab (Shading tab). I matched all the settings in the uppromotion tab.
prefix set to shade_ ..etc.
Mabey a simpler mechanism would be to simply update the pyroShade node to use a my definition.. essentially pointing it to use a different definition. Is there a way to do that. I tried operatortypemanager->usethisdefinition but that does not seem to update/work.
im so close to getting this to work
Thanks!
-A
the only problem now that Im having is on the UI side, I want to essentially steal the UI promotions from the old pyroShader then delete the old PyroShader (Im using the Pyro2.0 shader as a skeleton)
But when I promote the parameters just as they are promoted in the original PyroShader, they do not promote to the correct tab (Shading tab). I matched all the settings in the uppromotion tab.
prefix set to shade_ ..etc.
Mabey a simpler mechanism would be to simply update the pyroShade node to use a my definition.. essentially pointing it to use a different definition. Is there a way to do that. I tried operatortypemanager->usethisdefinition but that does not seem to update/work.
im so close to getting this to work
Thanks!
-A
#8
Posted 20 September 2012 - 02:42 PM
EDIT: I thought I'd found a way to comp this together, but someone cheered too soon....It is not giving the same result as the beauty render...It seams I have to keep digging. Sorry!
Edited by Scratch, 20 September 2012 - 03:01 PM.
www.scratch-arts.net
0 user(s) are reading this topic
0 members, 0 guests, 0 anonymous users











