Found 74 posts.
Search results Show results as topic list.
Technical Discussion » Subdivide a grid into random rectangles
- element33
- 74 posts
- Offline
Technical Discussion » Subdivide a grid into random rectangles
- element33
- 74 posts
- Offline
Somebody must have solved it in Houdini before. I want to subdivide a grid into random rectangles (pic 1 below). It's not really a "packing" problem as I don't need to use rectangles with specific dimensions. I generated random-sized grids and used UV Layout (pic 2 below). It works, but bigger rectangles are near each other. I'd prefer a more random look.
Edited by element33 - 2024年1月16日 13:33:44
Technical Discussion » Euler angles from two sets of N and up
- element33
- 74 posts
- Offline
kodra
4@xform = invert(m1) * m2;
vector4 orient = quaternion(set(4@xform));
I still can't get it right. Based on my original and your first snippet, I'm trying to get
the 3 Euler angles, but they don't look right. I tried other X, Y, Z combinations, but none works.
4@xform=invert(m1)*m2; vector4 orient=quaternion(set(4@xform)); vector rad=quaterniontoeuler(orient,0); v@rot=degrees(rad);
Edited by element33 - 2023年12月14日 01:09:23
Technical Discussion » Euler angles from two sets of N and up
- element33
- 74 posts
- Offline
kodra
You can't just do orient2 - orient1. It would just substract the vector4 element by element, but quaternion rotation is a totally different beast.
Thanks, will try this.
Technical Discussion » Euler angles from two sets of N and up
- element33
- 74 posts
- Offline
I have two polys at some odd angle to each other. Each point on either poly has N and up vectors.
From these two sets (source and target) of N and up vectors, in vex, how do I compute the Euler
angles to transform the source poly to the target? What I have doesn't seem to work:
From these two sets (source and target) of N and up vectors, in vex, how do I compute the Euler
angles to transform the source poly to the target? What I have doesn't seem to work:
matrix3 m1=ident(); matrix3 m2=ident(); m1=maketransform(vector(point(0,"N",0)),vector(point(0,"up",0))); // source poly m2=maketransform(vector(point(1,"N",0)),vector(point(1,"up",0))); // target poly vector4 orient1=quaternion(m1); vector4 orient2=quaternion(m2); vector rad=quaterniontoeuler(orient2-orient1,XFORM_XYZ); // convert to degrees etc
Edited by element33 - 2023年12月13日 11:47:45
Technical Discussion » KinefX: re-orient some joints. but keep the current pose
- element33
- 74 posts
- Offline
SWestI adjusted the pivot axes manually and got it working. Odd, that there are all these SOPs with names that sound like they'd just do the job (Orient Joints. Pose Difference, Rig Match Pose), yet none of them does it in a simple, intuitive manner.
Then do what is needed manually.
Edited by element33 - 2023年10月9日 10:08:54
Technical Discussion » KinefX: re-orient some joints. but keep the current pose
- element33
- 74 posts
- Offline
I don't usually do char. rigging, but I have to fix something. I have a KineFX hand skeleton. A RigPose places the hand in a certain pose. I need to tweak the thumb a bit, but the thumb's joint axes are not properly aligned, they don't point down the thumb bones. I tried using Orient Joints (on just the thumb), Pose Difference (with "Apply Offset"), VEX code (link below), and Rig Match Pose, but I can't get it right. Either the thumb mesh is distorted with re-oriented joints, or the thumb mesh is fine, but the thumb joints are not re-oriented.
VEX solution for orient joints [www.sidefx.com]
VEX solution for orient joints [www.sidefx.com]
Edited by element33 - 2023年10月9日 10:09:59
Technical Discussion » Attrib "lost" with Filecache but not with Stash
- element33
- 74 posts
- Offline
I see an odd behavior: when I save my geometry with "Filecache", one of my attributes, called "around" (see pic), seems to get lost. In the spreadsheet, on the Filecache SOP, instead of the correct value I see -1.0. Other attributes are OK. Yes, I "Reload" the geometry after each save. I tried other filenames, to avoid any memory caching issues: same behavior. There are no attribute Filters set in the Filecache SOP. I tried both bgeo and bgeo.sc extensions, both show this odd behavior. If I use the "Stash" SOP or "Save geo..." the "around" attribute is preserved. I can work around with "Stash", I'm just curious what causes this behavior...
Edited by element33 - 2023年9月26日 07:02:02
Technical Discussion » Simple bone capture for 2D planes (no tets)
- element33
- 74 posts
- Offline
I have a character made of isolated, flat 2D polys, with no thickness. Previously, I've done tet-based biharmonic capture on 3D meshes which have a defined inside/outside. On flat 2D polys, the biharmonic method has trouble creating a meaningful geo. Is there a simple capture method, where a flat 2D poly is simply captured (as a whole) by the bone closest to it?
Edited by element33 - 2023年9月4日 02:39:51
Technical Discussion » Post-frame Python script without console (Win)?
- element33
- 74 posts
- Offline
I'm on Win, Houdini 19.5. I run a post-frame Python script from my render ROP. When it runs, a console window pops up. Can I run the script without a console?. I know pythonw.exe can do it, but in the ROP, the script language (Python or Hscript) is set from a drop-down, you don't choose the actual executable. I tried renaming the script's extension to "pyw", but the ROP gives me a syntax error on the path to the "pyw" ("py" works fine).
Edited by element33 - 2023年8月28日 16:33:49
Technical Discussion » Wireframe ghost line color
- element33
- 74 posts
- Offline
I want to darken a bit the ghosted (hidden) lines in the Wireframe Ghost shading mode, as in this thread [www.sidefx.com], 4th post. I'm using the "Dark" scheme, so I copied 3DSceneColors.dark from $HFS\houdini\config to my local Houdini dir ($HIH). I changed the values of ObjectGhostColor, ObjectGhostAlpha and even GhostFillColor, but, after restarting Houdini, I don't see any change. I tried moving the changed 3DSceneColors.dark to $HIH/config, $HIH/houdini/config, with no effect. I changed 3DSceneColors.dark in $HFS, no effect. What am I doing wrong?
Edited by element33 - 2023年5月26日 07:12:22
Technical Discussion » Import hierarchical FBX as a single piece of geometry
- element33
- 74 posts
- Offline
Thanks, it worked. The "Materials" object is also quite something: ~300 separate principled shaders. At least it's not geometry and I don't have to dive into it.
Technical Discussion » Import hierarchical FBX as a single piece of geometry
- element33
- 74 posts
- Offline
I got a model of a ship as an FBX. I'd like to keep the materials it has, but I don't need any hierarchy. I'm not sure why, but when I import the FBX (only "Geometry" and "Materials" selected in the FBX dialog), I get a huge network of 100s (maybe 1000s) of separate geometry objects. Within each one is a single File SOP. All of these objects are linked to a single "Model" object. Some of these individual "objects" are ridiculously small, e.g. pointing to just 2 polygons etc. It's too much to handle (do ships really need any hierarchy at all?). Can I import this FBX as a single geometry model, yet keep the materials? Alternatively, can I "collapse" the huge object hierarchy I have now and save it to a single geo file? There is no "Save as geometry" at the object level. I tried exporting to FBX and re-importing but I get the same huge hierarchy.
Technical Discussion » Current workflow for ropes / RBD: Vellum?
- element33
- 74 posts
- Offline
What's the current recommended workflow for ropes interacting with RBD objects? For ropes, I thought it was either Wire or Grains, but all examples on Tokeru [www.tokeru.com] say use Vellum Hair (with what I assume is the "String" preset). But on the Vellum page [www.tokeru.com] I don't see swinging-rope type examples, just rope walkers. If anyone can point me to rope/RBD examples using Vellum, please let me know. Thanks.
Technical Discussion » KineFx: fix a joint's rotation on the current frame
- element33
- 74 posts
- Offline
Technical Discussion » KineFx: fix a joint's rotation on the current frame
- element33
- 74 posts
- Offline
In a KineFX chain, can I fix a joint's rotation in place (at a certain frame) so the joint is fixed at this angle for the whole motion clip? I have a short anim imported from an FBX. I used Rig Pose to re-pose the arms. One of the arm joints has a slight wobble, probably inherited from the original anim. I want to eliminate this wobble by fixing this joint's rotation in place, so it's held throughout.
Edited by element33 - 2023年4月7日 22:46:18
Technical Discussion » KineFx node(s) to mix two anims of a character
- element33
- 74 posts
- Offline
tamteCool, thanks. I knew something like this had to exist.
https://www.sidefx.com/docs/houdini/nodes/sop/kinefx--skeletonblend.html [www.sidefx.com]
Technical Discussion » KineFx node(s) to mix two anims of a character
- element33
- 74 posts
- Offline
I don't deal with characters normally, but now I have to. I have two human animations, A & B, imported from 2 fbx files. Same character, same bone skeleton. I need to combine them: for the legs, I want to use the animation from A's legs. For the upper body, I want to use mostly B's anim, but some of A's anim, too. The fbx import created two obj-level subnetworks. In each one, there's a bone hierarchy: a "hips" null at the top, then branching nulls like "LeftLeg" (with animated channels) linked to a "LeftLeg_bone" etc. In a "Geometry" obj, there's a mesh driven by a Bone Deform. To mix the animations, I could create a new subnetwork C, by copying either A or B, then writing a Python script to copy/paste and "mix" the relevant channels into C's skeleton. But I'm wondering if there's maybe an already existing KineFx node(s) that can do this, i.e. mix anim from two imported, animated skeletons into a new one.
Edited by element33 - 2023年4月5日 06:26:45
Technical Discussion » Interpolate position in a distorted coord. system
- element33
- 74 posts
- Offline
animatrix_Thanks, it works. Seems like the "Radius" and "Max points" have to be tweaked to the specific situation to get clean results.
I would just use Point Deform SOP for this
Technical Discussion » Interpolate position in a distorted coord. system
- element33
- 74 posts
- Offline
I have a bunch of lines (A below). The lines have different lengths and angles, they're not part of any regular grid. These lines undergo a non-uniform distortion (B below), but not to the point of intersecting. I have a point with a known pre-distortion position (yellow dot in A). I want to find where its position would be in B to keep it in sync with the distortion of nearby lines. The pink arrow points to the interpolated position I want to know. I mapped lines A with rest position, uv's, then, in step B, I read and interpolate in vex with "uvsample", but the results are jerky: even if the distortion is relatively regular, the yellow dot moves in sync, but with an uneven jitter. Is there an elegant method (point cloud lookup? attribute transfer?) that gives smooth results?
Edited by element33 - 2023年2月24日 06:24:39
-
- Quick Links