Jump to content

proper way to composite pyro image planes.


anupamd

Recommended Posts

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

Link to comment
Share on other sites

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?

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

Link to comment
Share on other sites

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.

Link to comment
Share on other sites

here I am to bring you the "el cheapo" dirty hint just in case you are in a hurry :D

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 :P

EDIT: ah, I found your thread about fake scattered emission...most interesting..

Edited by Netvudu
Link to comment
Share on other sites

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

Link to comment
Share on other sites

  • 2 months later...

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...