Ahmed Hindy
AhmedHindy
About Me
Technical Artist @Trend VFX
EXPERTISE
VFX Artist
INDUSTRY
Film/TV
Connect
LOCATION
Cairo,
Egypt
WEBSITE
Houdini Skills
Availability
I am available for Full Time Work
Recent Forum Posts
Mipmapped textures and Karma Feb. 6, 2026, 4:35 p.m.
I have a lot of .tx files generated from Arnold, due to storage constraints, I would like to use .tx files with Karma without having a second .rat file sitting next to the .rat file.
Can I expect the same performance and first class support in Karma XPU for both? I am houdini 20.5.445 btw.
Can I expect the same performance and first class support in Karma XPU for both? I am houdini 20.5.445 btw.
How to export volumes that appear-disappear to a USD file? Sept. 20, 2025, 6:57 a.m.
nvm I wrote a python script that can be dropped in a python LOP node after the volume LOP:
I hope that helps.
from pxr import Usd, UsdGeom, UsdVol import hou node = hou.pwd() stage = node.editableStage() def hide_volumes_without_vdb(stage, root="/", verbose=True): """Hide Volume prims that don't contain any OpenVDBAsset children. Args: stage (Usd.Stage): Editable USD stage (e.g., from a Python LOP). root (str): Path under which to search; "/" scans the whole stage. verbose (bool): If True, print what was hidden. Returns: list[str]: Paths of Volume prims whose visibility was set to invisible. """ if root == "/": start_prim = stage.GetPseudoRoot() else: start_prim = stage.GetPrimAtPath(root) if not start_prim: if verbose: print(f"[hide_volumes_without_vdb] Root '{root}' not found.") return [] hidden_paths = [] for prim in Usd.PrimRange(start_prim): # Check prims typed as Volume if not prim or not prim.IsValid(): continue if not prim.IsA(UsdVol.Volume): continue # Look for active OpenVDBAsset children directly under the Volume has_openvdb_child = any( child.IsActive() and child.IsA(UsdVol.OpenVDBAsset) for child in prim.GetChildren() ) if not has_openvdb_child: img = UsdGeom.Imageable(prim) img.GetVisibilityAttr().Set(UsdGeom.Tokens.invisible) hidden_paths.append(str(prim.GetPath())) if verbose and hidden_paths: print("[hide_volumes_without_vdb] Set invisible:", *hidden_paths, sep="\n ") elif verbose: print("[hide_volumes_without_vdb] No empty Volume prims found.") return hidden_paths node = hou.pwd() stage = node.editableStage() hide_volumes_without_vdb(stage, root="/", verbose=True)
I hope that helps.
How to export volumes that appear-disappear to a USD file? Sept. 20, 2025, 6:38 a.m.
Houdini 21.0.440 and that behavior still hasn't changed. Any tips on how this is solved?