Jump to content
3DCoat Forums

PBR texture workflow to Octane


Grimm
 Share

Recommended Posts

  • Advanced Member

Others have expressed an interest in this topic (Tony Nemo) so I thought I would post my experiments.  Most non-dielectric materials move over the Octane really easily, just plug in the texture maps and it looks good.  The problem comes with the metal textures, mostly because Octane doesn't support Fresnel reflections.   It's not a disaster as you can use the fall-off node to simulate it.  

 

I took a Octane material that the Otoy developer Roeland created for just this purpose and added some more input pins so you can control the diffuse, roughness, and the normal map textures (you could add one for bump too if you want).  You can read up on the material here:

 

https://render.otoy.com/forum/viewtopic.php?f=21&t=33213

 

Here are the results for a simple metal texture, I just used the steel texture stamp.  

 

3D-Coat:

post-38101-0-43919700-1428014608_thumb.p

 

Here is the result in Octane:

post-38101-0-66450300-1428014663_thumb.p

 

Now there are many differences between the two of course, Octane has shadows, full GI, and reflected light everywhere, but I'm fairly happy with the result.  For the metal texture I saved the the textures using the "Gloss/Color Specular" workflow.  I plugged in the diffuse and  normal maps in as normal.  I plugged in the color specular in to the specular slot.  The gloss map was plugged into the roughness pin and I checked the invert checkbox.  To get the look I wanted I had to play around a bit with the gamma settings for the textures.   I think it's mostly because of Octane linear workflow, but I'm not sure.  I had to set the gamma for the diffuse and roughness to 1, the others I left at the default of 2.2.  

 

Now for combined textures like metal with paint on top I had to get a little creative.  Here are the tests for that:

 

3D-Coat:

post-38101-0-76011400-1428015371_thumb.p

 

The result in Octane:

post-38101-0-19473600-1428015406_thumb.p

 

I didn't change anything with the metal texture, but to add in the paint texture I had to use a mix node.   For this to work I had to switch the texture workflow in 3D-Coat to "Gloss/Metalness" so I could export the metalness texture.  I then used that texture to control the mix node, effectively using it as a mask.   The paint textures are simply plugged into a glossy material node and hooked up to the mix node (along with the metal material). 

 

I think they came out fairly well.  Any ideas on improvements would be very much appreciated.  Here is the metal node that I modified from Roeland's, just copy the text and paste it into Octane and it will create the node for you. 

 

<?xml version='1.0' encoding='utf-8'?>
<OCS2 version='2220002'>
 <graph id='1' type='1' name='clipboard'>
  <graph id='2' type='1' name='PBR Metal' position='449 167'>
   <node id='3' type='20005' name='diffuse' position='203.722 189.027'>
   </node>
   <node id='4' type='20002' name='Float in' position='405 71'>
    <pin name='input'>
     <node id='5' type='6'>
      <attr name='value' type='8'>6 0 0</attr>
     </node>
    </pin>
   </node>
   <node id='6' type='20005' name='Color' position='479 128'>
   </node>
   <node id='7' type='20005' name='roughness' position='684 64'>
   </node>
   <node id='8' type='20005' name='normal_map' position='686.647 177.245'>
   </node>
   <node id='9' type='50' name='Falloff Texture' position='360 130'>
    <pin name='normal'>
     <node id='10' type='6'>
      <attr name='value' type='8'>0 0 0</attr>
     </node>
    </pin>
    <pin name='grazing'>
     <node id='11' type='6'>
      <attr name='value' type='8'>1 0 0</attr>
     </node>
    </pin>
    <pin name='falloff index' connect='4'/>
   </node>
   <node id='12' type='16' name='Metal' position='511 292'>
    <pin name='diffuse' connect='3'/>
    <pin name='specular' connect='13'/>
    <pin name='roughness' connect='7'/>
    <pin name='index'>
     <node id='14' type='6'>
      <attr name='value' type='8'>1 0 0</attr>
     </node>
    </pin>
    <pin name='normal' connect='8'/>
    <pin name='opacity'>
     <node id='15' type='31'>
      <attr name='value' type='6'>1</attr>
     </node>
    </pin>
    <pin name='smooth'>
     <node id='16' type='11'>
      <attr name='value' type='1'>1</attr>
     </node>
    </pin>
    <pin name='edgesRounding'>
     <node id='17' type='6'>
      <attr name='value' type='8'>0 0 0</attr>
     </node>
    </pin>
    <pin name='filmwidth'>
     <node id='18' type='31'>
      <attr name='value' type='6'>0</attr>
     </node>
    </pin>
    <pin name='filmindex'>
     <node id='19' type='6'>
      <attr name='value' type='8'>1.45 0 0</attr>
     </node>
    </pin>
   </node>
   <node id='13' type='38' name='Mix Texture' position='449 211'>
    <pin name='amount' connect='9'/>
    <pin name='texture1' connect='6'/>
    <pin name='texture2'>
     <node id='20' type='31'>
      <attr name='value' type='6'>0.8</attr>
     </node>
    </pin>
   </node>
   <node id='21' type='30007' name='Colored metal (out)' position='500 360'>
    <pin name='input' connect='12'/>
   </node>
  </graph>
 </graph>
</OCS2>

Jason

Edited by Grimm
  • Like 3
Link to comment
Share on other sites

  • Contributor

Kindly keep us informed , as this interests me as well (octane costumer).

 

Best would be to create a final shader in octane (made from the octane team) that needs only the image inputs , and thats it.

 

Well done on the shader from your side  , and thank you very much.

Edited by Michaelgdrs
Link to comment
Share on other sites

  • Advanced Member

Kindly keep us informed , as this interests me as well (octane costumer).

 

Best would be to create a final shader in octane (made from the octane team) that needs only the image inputs , and thats it.

 

Well done on the shader from your side  , and thank you very much.

 

Thanks Michaelgdrs,

 

I have posted this on the Octane forums as well and see if they can improve on it.   :)  It would be very nice for the Octane devs to add Fresnel reflections, I think that would help a lot.  

 

Jason

  • Like 1
Link to comment
Share on other sites

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.

 Share

×
×
  • Create New...