Yunus Balcioglu
animatrix_
About Me
Senior FX Technical Director @ Industrial Light & Magic | Feature film credits include The Lord of the Rings: The Rings of Power, Marvel's Eternals, Star Wars: The Rise of Skywalker, X-Men: Dark Phoenix, X-Men: Apocalypse, Aquaman, Alien: Covenant, Pirates of the Caribbean, Justice League and many m... more
Senior FX Technical Director @ Industrial Light & Magic | Feature film credits include The Lord of the Rings: The Rings of Power, Marvel's Eternals, Star Wars: The Rise of Skywalker, X-Men: Dark Phoenix, X-Men: Apocalypse, Aquaman, Alien: Covenant, Pirates of the Caribbean, Justice League and many more. less
専門知識
Technical Director
業界:
Film/TV
Houdini Engine
ADVANCED
プロシージャルワークフロー | Digital Assets | Mantra | Pyro FX | Fluids | 説明 | VEX | Python
INTERMEDIATE
Realtime FX
Availability
Not Specified
My Gallery
My Talks
Recent Forum Posts
New hotkey: Display Nearest Node 2026年1月3日9:34
coccarollaanimatrix_
This is 2026 version from Houdini supercharged extension:_EXCLUDE_DISPLAY = {"Driver", "Shop", "Vop"} _EXCLUDE_RENDER = {"Object", "Driver", "Dop", "Shop", "Chop", "Vop", "Lop", "Cop"} def toggleNodeDisplayFlag(node, context): if context not in _EXCLUDE_DISPLAY and hasattr(node, "setDisplayFlag"): node.setDisplayFlag(not node.isDisplayFlagSet()) def toggleNodeRenderFlag(node, context): if context not in _EXCLUDE_RENDER and hasattr(node, "setRenderFlag"): node.setRenderFlag(not node.isRenderFlagSet()) def findNearestNode(editor): pos = editor.cursorPosition() currentPath = editor.pwd().path() nodes = hou.node(currentPath).children() nearestNode = None dist = 999999999.0 for node in nodes: d = (node.position() + (node.size() * 0.5)).distanceTo(pos) if d < dist: nearestNode = node dist = d return nearestNode def displayNearestNodeInEditor(): editor = hou.ui.paneTabUnderCursor() editortype = editor.type() if editortype == hou.paneTabType.NetworkEditor: nearestNode = findNearestNode(editor) if nearestNode and editor.pwd().isEditable(): with hou.undos.group("Display Nearest Node"): context = nearestNode.type().category().name() toggleNodeDisplayFlag(nearestNode, context) toggleNodeRenderFlag(nearestNode, context)
Very grateful, thank you! Although for some reason it still doesn't work. Nothing happens when I press the keys. I see you define some functions but if I'm not mistaken they're not called.
Oh yes I didnt include the call because that depends on how you want to use them. So you can just include a simple function call at the end of the code like this if you want to use them from shelf tool via a hotkey for example:
displayNearestNodeInEditor()
New hotkey: Display Nearest Node 2026年1月3日0:50
This is 2026 version from Houdini supercharged extension:
_EXCLUDE_DISPLAY = {"Driver", "Shop", "Vop"} _EXCLUDE_RENDER = {"Object", "Driver", "Dop", "Shop", "Chop", "Vop", "Lop", "Cop"} def toggleNodeDisplayFlag(node, context): if context not in _EXCLUDE_DISPLAY and hasattr(node, "setDisplayFlag"): node.setDisplayFlag(not node.isDisplayFlagSet()) def toggleNodeRenderFlag(node, context): if context not in _EXCLUDE_RENDER and hasattr(node, "setRenderFlag"): node.setRenderFlag(not node.isRenderFlagSet()) def findNearestNode(editor): pos = editor.cursorPosition() currentPath = editor.pwd().path() nodes = hou.node(currentPath).children() nearestNode = None dist = 999999999.0 for node in nodes: d = (node.position() + (node.size() * 0.5)).distanceTo(pos) if d < dist: nearestNode = node dist = d return nearestNode def displayNearestNodeInEditor(): editor = hou.ui.paneTabUnderCursor() editortype = editor.type() if editortype == hou.paneTabType.NetworkEditor: nearestNode = findNearestNode(editor) if nearestNode and editor.pwd().isEditable(): with hou.undos.group("Display Nearest Node"): context = nearestNode.type().category().name() toggleNodeDisplayFlag(nearestNode, context) toggleNodeRenderFlag(nearestNode, context)
Flickering Colors When Using Vex 2025年12月16日14:52
Hi Tyler,
The issue is float equality. Normals are approximate, not exact axis vectors. On some frames the components evaluate to values like 0.9999999403953552 rather than 1.0, so the == checks fail. You can see this by enabling full precision in the Details View.
So I would just do this:
The issue is float equality. Normals are approximate, not exact axis vectors. On some frames the components evaluate to values like 0.9999999403953552 rather than 1.0, so the == checks fail. You can see this by enabling full precision in the Details View.
So I would just do this:
@Cd = abs ( normalize ( @N ) );