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
Extract world positon matrix from SOP node (via Python)? 2024年10月6日16:28
Nodes like the Transform node can save out their transformation as a matrix, so you can combine those matrices. However, there's no built-in way to directly extract the transformation from arbitrary SOP nodes because it’s impossible to know what kind of transformation a node is performing without using something like Extract Transform SOP. For example, the Edit node allows you to rotate or modify geometry in arbitrary ways that aren't explicitly stored as a transform.
In terms of SOP-level geometry, there's no inherent "transform" to speak of, since all the transformations are essentially modifications to the point, edge, or primitive data. For example, if you have some geometry that's cached as rotating around the origin, that doesn’t mean Houdini actually knows or stores this transformation itself. It’s just the final arrangement of points, so Houdini doesn’t inherently track or retain the transform information unless explicitly told to.
The specific transformation you'd like to capture (like position, rotation, scale) can only be inferred if the transformation is explicitly applied or recorded using a node like Transform.
That's why I'd recommend using the Extract Transform SOP. You provide the source geometry (your Grid node) and the final geometry, and it will compute the transformation required to transform the source geometry to the final geometry.
In terms of SOP-level geometry, there's no inherent "transform" to speak of, since all the transformations are essentially modifications to the point, edge, or primitive data. For example, if you have some geometry that's cached as rotating around the origin, that doesn’t mean Houdini actually knows or stores this transformation itself. It’s just the final arrangement of points, so Houdini doesn’t inherently track or retain the transform information unless explicitly told to.
The specific transformation you'd like to capture (like position, rotation, scale) can only be inferred if the transformation is explicitly applied or recorded using a node like Transform.
That's why I'd recommend using the Extract Transform SOP. You provide the source geometry (your Grid node) and the final geometry, and it will compute the transformation required to transform the source geometry to the final geometry.
Node Editor Setting / Behaviour 2024年10月5日1:27
coccarolla
I have two basic questions regarding the node editor:
1. is the default spacing of nodes configurable? For example when you align nodes, where is that spacing defined vertically / horizontally?
2. is there an option to delay the middle mouse node info window? When navigating big networks with middle mouse butotn I get crashes if instead of panning it tries to display the node info window
For #2, I submitted an RFE about this, to not show the MMB info dialog if the user is panning the view, it's easy to accidentally MMB on a node with rapid panning. I am not sure if it's implemented yet.
POP Acceleration Limit 2024年9月27日3:09
Hi,
You can do it like this:
Store old vel:
Limit_acceleration:
I used this method in a lot of RBD sims on Aquaman destruction shots and LOTR: Rings of Power bridge destruction. Works a lot better than POP Speed Limit DOP.
You can do it like this:
Store old vel:
v@oldv = @v; i@has_oldv = 1;
Limit_acceleration:
if ( i@has_oldv ) { vector dv = @v - v@oldv; float accel = length ( dv ); float maxaccel = ch("maxaccel") * @TimeInc; dv *= maxaccel / accel; @v = select ( accel > maxaccel, v@oldv + dv, @v ); }
I used this method in a lot of RBD sims on Aquaman destruction shots and LOTR: Rings of Power bridge destruction. Works a lot better than POP Speed Limit DOP.