Thought that could be valuable to someone at some point. node.cook(force_cook=True) doesn’t work in manual mode, so here’s a shitty workaround for it 🙂 “` import tempfile def get_sop_node_geometry(node): “”” Force cook a node even in manual mode
Args: node (hou.SopNode): a Sop node to compute
Returns: hou.Geometry: The frozen geometry
“”” rop_geo = hou.node(‘/out’).createNode(‘geometry’) rop_geo.parm(‘soppath’).set(node.path()) tmp_file = tempfile.NamedTemporaryFile(suffix=’.bgeosc’) try: rop_geo.render(output_file=tmp_file.name) except hou.Error: rop_geo.destroy() return hou.Geometry() rop_geo.destroy() geometry = hou.Geometry() geometry.loadFromFile(tmp_file.name) return geometry “`