Karma XPU materials (materialX) in Houdini



Karma XPU materials (materialX)

in /mat context add Karma Material Builder node and dive inside delete the mtlxsurface and input nodes add Mtlx Standard Surface node and feed it into surface-output node

base-color

add Mtlx Image node and select a texture image here signature: color feed into Base-color of Mtlx Standard Surface node

roughness map

add Mtlx Image node and select a texture image here signature: float feed into specular-roughness of Mtlx Standard Surface node

normal map

add Mtlx Image node and select a texture image here signature: vector 3 add Mtlx Normal Map node mtlx imge --> (in) mtlxnormalmap (out) --> (normal) mtlx standard surface

to quickly create a normal map (from black and white tex)

go to /img context add file node and load some texture add labs normal from greyscale node add rop file output node or just use mtlx height to normal node

bump map

add Mtlx Image node and select a texture image here signature: float add Mtlx bump node feed img into height and out into normal

height map (displacement)

add Mtlx Image node and select a texture image here signature: float feed into mtlx displacement node adjust scale in mtlx displacement node: 0.02 (use mtlx remap node to remap range)

using noise nodes

first add mtlx position node then mtlx multiply node, then mtlx 3d noise node plug into base color channel of mtlx standard node start increasing values on multiply node first (feed into the mtlx displacement node)

subsurface scattering

plug mtlx image node (with the base-color) into subsurface-color and subsurface-radius on mtlx standard surface node go to Subsurface Tab Subsurface: 0.5 (if set to 1 it cancels out the normal map, maybe use displacement map additionally) Subsurface Scale: 0.03

display karma material preview in viewport (obj context)

add Karma Material builder inside set up a Karma Material, then go back one up (to /mat context) right click on karmamaterial -> Parameters and Channels -> Edit... add folder name it "See Tex" add toggle name it "Use diffuse" click Build-in Tags find Use Diffuse Map # add file image name it "diffuse map" click Build-in Tags find Texture #

pass point color

(add color nodes on geo) add mtlx geometry color node

or

add geometry property value node signature: color geomprop: displayColor plug into base-color of mtlx standard surface node

IOR (index of refraction) of materials

air 1 water 1.33 ice 1.309 white wine 1.338 red wine 1.3443 beer 1.34 orangejuice 1.351 PET 1.575 plastic 1.460 glass 1.5 milk 1.350 oil 1.470 wood 1.52 (all others too!)

glass material

add karma material builder node and dive inside select mtlxstandard_surface node specular tab: roughness: 0 index of refraction (IOR): 1.5 (or 1.4) transmission tab: transmission: 1

black surface (black spots) when rendering refractive materials

increase the refraction limit! so it can pass through more refractive surfaces! karma render settings: rendering -> limits -> refraction limit: 6

water material

add karma material builder node and dive inside select mtlxstandard_surface node specular tab: roughness: 0 index of refraction: 1.33 transmission tab: transmission: 1

red wine material

make sure glass object and wine fluid overlapp slightly (use peak node with distance 0.001 to push fluid out a bit) add karma material builder node and dive inside select mtlxstandard_surface node specular tab: specular: 0.2 roughness: 0 index of refraction: 1.34 transmission tab: transmission: 1 color: dark red depth: 0 stage context -> karmarendersettings -> renderings -> limits -> refraction limit: 20

src

https://www.youtube.com/watch?v=FB5-zOhiHgs https://pixelandpoly.com/ior.html https://vimeo.com/850635920 https://vimeo.com/850635969 https://www.sidefx.com/tutorials/solaris-is-sweet/



Published: November, 2023