Houdini and Substance Painter

   14534   17   3
User Avatar
Member
3 posts
Joined: Jan. 2015
Offline
A quick question, how on earth do you export meshes from Houdini with texture sets for use in Substance Painter?
User Avatar
Member
378 posts
Joined: Dec. 2006
Offline
Right click on node and Save Geometry?
User Avatar
Member
3 posts
Joined: Jan. 2015
Offline
I think my question may have been unclear. I'm trying to assign multiple materials to a single mesh. In Substance Painter it reads it in as texture sets. I've tried layers to no avail, as well as the Material SOP in several ways and I cant seem to crack the code! Thanks for your time though SreckoM!
User Avatar
Member
702 posts
Joined:
Offline
I wrote a script that will take an obj file from houdini and create the mtl file needed by substance painter

place the shelf tool in your home houdini folder or documents houdini15 (win )

houdini15/toolbar

to use it:

group your geos into the material sets
use a material sop to set the materials
use a geometry rop to write it to an obj
select the rop and click the shelf tool

Attachments:
objModify.shelf (2.9 KB)

User Avatar
Member
3 posts
Joined: Jan. 2015
Offline
That works perfectly! Thank you so much sidenimjay!
User Avatar
Member
702 posts
Joined:
Offline
You are most welcome ! Glad to help
User Avatar
Member
4 posts
Joined: Jan. 2016
Offline
hi there

i think this is exactly what I am after, but I am struggling to implement the shelf tool.

I have placed in the relevant directory as objModify.shelf, and on restarting houdini I get a ‘New Shelf’ but it is empty

any thoughts very much appreciated

(on mac, H15)

many thanks!
User Avatar
Member
236 posts
Joined: March 2015
Offline
I've also been using Substance Painter with Houdini. I haven't used the custom shelf tool posted above as using the fbx export worked for me.

It's a very similar process to the above;

- Group your geos into the material sets
- Use a material sop to set the materials
- Export as FBX

Importing the FBX into Substance Painter creates texture sets from the material sets. I don't know if the shelf tool does something extra/differently but this method works for me.

Rob
User Avatar
Member
4 posts
Joined: Jan. 2016
Offline
thanks so much! ill try that

very much appreciated
User Avatar
Member
45 posts
Joined: Jan. 2016
Offline
robsdesign
creates texture sets from the material sets

This did not work for me. Maybe I am misunderstanding. When you say “Group your geos into the material sets” do you mean to create groups with the group sop ie. primitive or point group etc. and then use a material sop to set materials using those groups? Or is there a way to create material sets? This is what i have tried without any luck. Guidance here will be much appreciated. thanks!
User Avatar
Member
236 posts
Joined: March 2015
Offline
Hi Nathan,

Yes, create groups using the group sop, then use material sop to set materials using those groups.
In H16, this will work with SHOP materials but I think I read somewhere on the forum that it won't work with the new MAT materials. (Most likely a bug which may or may not be fixed in a daily build)

hope that helps
Rob
User Avatar
Member
11 posts
Joined: March 2015
Online
Hello,
i need to export .obj models with assigned base materials on sections, but i have some problems to run this shelf script.. i create models, assign it to groups, assign basic material to groups via SOP and when i start shelf script with selected rop i got this message:

Traceback (most recent call last):
File “fixObj”, line 96, in <module>
File “fixObj”, line 29, in fix_obj
File “/opt/hfs16.5.473/houdini/python2.7libs/hou.py”, line 11178, in attribValue
return _hou.Prim_attribValue(*args)
ValueError: invalid null reference in method ‘Prim_attribValue’, argument 2 of type ‘HOM_Attrib &’

any idea how i make it work?
thank
User Avatar
Member
76 posts
Joined: July 2006
Offline
Hi Build 17.0.409 FBX with groups and material worked fine again.
I export FBX with 3 groups and 3 materials separate and Substance Painter recognize.
I tried different with 3 groups and 1 material with 3 nested groups and Substance Painter recognize the 3 material as well.
User Avatar
Member
11 posts
Joined: Oct. 2018
Offline
I was looking for that either and found the solution. The easiest way I found is here in attachment that I made to demonstrate

Attachments:
EXPORT_SUBSTANCE1.hip (654.0 KB)

User Avatar
Member
1258 posts
Joined: March 2014
Offline
Any new information on this front?

I decided to give Substance a go after years of using 3dCoat.
So far I am not impressed.

Here is my problem. I have one object with 18 groups for various parts. I also set up 8 UDIM tiles. Object parts are scattered over these UDIM tiles based on UVLayout SOP.
1. I have to create 18 dummy materials (which I won't use in the end as I use UDIM's)
2. Create a material SOP and link all the groups to these 18 dummy materials. This takes way to long. Must find alternative method.
3. Import into Substance Painter WITHOUT using UDIM's as texture sets.
5. I have the correct texture sets in substance for all 18 part.
6. Export textures just to realise that I now have textures for 18 texture sets that I will have to combine in comp per channel (that is 90 textures) to get back to my 8 UDIM tiles.

Compare this to 3dCoat.
1. Export the same mesh as is with 18 groups.
2. Get 18 paint objects in 3dCoat all ready to paint on over 8 UDIM tiles.
3. Export to get 5 maps per UDIM tiles.

I must be doing it wrong…
Edited by Werner Ziemerink - April 30, 2020 06:02:08
Werner Ziemerink
Head of 3D
www.luma.co.za
User Avatar
Member
184 posts
Joined: May 2017
Offline
No Werner, sounds about right.
They have been announcing UDIMs for 3 years at this point, and in January 2020 the closed alpha allegedly started. As per how it progresses, I have no idea apart from the classic “tremendous feedback” marketing phrases.
https://twitter.com/oossoonngg [twitter.com]
User Avatar
Member
806 posts
Joined: Oct. 2016
Offline
This is one of the many reasons why I concluded my years-long “retesting substances” with a “what a waste of time”. Lack of performance on “normal” resolutions (8k and up), lack of painting across seams, problems with 16bit Int/32bit Float support (which seems to be there now but I couldn't get a linear workflow to work for me) …

Werner, you *could* do most of your pipeline with a few scripts: Converting UDIM (offsets) to material (tags/attributes) and back from those to UDIM offsets works nicely with the FBX import pipelines I have been experimenting with. You could even create an HDA that handles the Substance export/import with a single click per direction.

Marc
---
Out of here. Being called a dick after having supported Houdini users for years is over my paygrade.
I will work for money, but NOT for "you have to provide people with free products" Indie-artists.
Good bye.
https://www.marc-albrecht.de [www.marc-albrecht.de]
User Avatar
Member
339 posts
Joined: June 2017
Offline
Varomix's lamp tutorial devotes hours on using substance painter with Houdini.
  • Quick Links