Lorenz Ostwald
Maschinenfabrik
About Me
Connect
LOCATION
Not Specified
WEBSITE
Houdini Skills
Availability
Not Specified
My Gallery
Recent Forum Posts
material instance creation June 5, 2023, 3:04 p.m.
However, the system does not automatically create new instances when it encounters new values for the material instance parameters.
Yes that seems to be the problem! I gave up trying to get it working solely using houdini engine. At the moment I am creating the material instances with a python in editor script in unreal after my static meshes have cooked...it's not the "one click solution" I was hoping for but it does work for now
material instance creation May 17, 2023, 4:30 a.m.
I'm having difficulties creating multiple material instances and overriding the textures with the one my HDA creates for every mesh I generate.
No matter what I try I only get one instanced material and it does not set the corresponding texture for it.
I tried using the split attr on the unreal_material_instance attribute but I guess it only works for instanced copy to points geometry? I added a copy to points to see if it would make a difference but sadly it does not.
My current setup;
I am using a TOP network to load in the geometry and textures. I process every workitem with this for the file importand assign a different material on each iteration which works although I have the feeling I am doing some really hacky things to get the hda to create a different material with textures for each mesh which was also a pain to get working.
I have this python script in my topnetwork to fill the texture paths;
I get a material with textures for every processed mesh but I don't get more than one material instance
I also unsure if this is the right way to go. If anyone has any ideas or could take a look I would very much appreciate some help
No matter what I try I only get one instanced material and it does not set the corresponding texture for it.
I tried using the split attr on the unreal_material_instance attribute but I guess it only works for instanced copy to points geometry? I added a copy to points to see if it would make a difference but sadly it does not.
My current setup;
I am using a TOP network to load in the geometry and textures. I process every workitem with this for the file import
`pdginput(0,"file/geo",0)`
I have this python script in my topnetwork to fill the texture paths;
# Executes a Python script, either in process or as a job # # The following variables and functions are available in both case: # work_item # graph # intData, floatData, strData, # intDataArray, floatDataArray, strDataArray # # In addition to the above, in-process scripts can also access: # self - the current PDG node # parent_item - the parent work item, if it exists import hou matnetRef = hou.node("../../matnet1") #children = matnetRef.children() #if(matnetRef.children()!=0): # for n in matnetRef.children(): # n.destroy(True) pdgInput = parent_item.inputFiles[1] wedgeindex = work_item.intAttribValue("wedgeindex") material = hou.node("../../matnet1/principledshader"+str(wedgeindex)) #material.parm("basecolor_useTexture").set(1) material.parm("basecolor_texture").set(str(pdgInput[0])) materialName = str(material) #work_item.setStringAttrib("materialNodeName",materialName) work_item.addEnvironmentVar("materialNodeName",materialName)
I get a material with textures for every processed mesh but I don't get more than one material instance
I also unsure if this is the right way to go. If anyone has any ideas or could take a look I would very much appreciate some help
PDG material textures problem May 11, 2023, 6:07 a.m.
Hi I am currently working on an HDA to process multiple incoming 3d scan files and I'm having trouble assigning the right texture to each workitem. Ultimately I want to import the hda to unreal to automatically process hundreds of scans and assign the right texture to each one inside of unreal.
my current approach looks like this;
I am creating an attribute "extension2" for the texture files in jpg format
and then I feed that attribute with the rest of the filepath into the hda which is connected to my basecolor inside the shader of the HDA
What I don't understand is why the HDA processor seems to load the geo correctly with the expression but cannot do the the same for the texture files
Since I am a total beginner with tops and pdg I would greatly appreciate if anyone could take a look and help.
my current approach looks like this;
I am creating an attribute "extension2" for the texture files in jpg format
and then I feed that attribute with the rest of the filepath into the hda which is connected to my basecolor inside the shader of the HDA
What I don't understand is why the HDA processor seems to load the geo correctly with the expression but cannot do the the same for the texture files
Since I am a total beginner with tops and pdg I would greatly appreciate if anyone could take a look and help.