AJ Christensen

achrist3

About Me

EXPERTISE
Technical Director

Connect

LOCATION
United States
WEBSITE

Houdini Skills

Availability

Not Specified

Recent Forum Posts

6 degree of freedom Mouse3D CHOPs network March 9, 2023, 5:40 p.m.

Leaving some breadcrumbs here for future 3d mouse users ... this network seems to do the trick. I'm no CHOPs expert, so I still need to figure out where I'm creating redundancy that makes things lag and my wrangle VEX code is a little dodgy. But I now have a full 6 degree-of-freedom continuous transformation from local coordinates flight simulator-style camera navigation.

Hat tip to this tutorial which helped me a lot with managing transforms: https://vimeo.com/307156961 [vimeo.com]

6 degree of freedom Mouse3D CHOPs network March 3, 2023, 8:39 p.m.

FWIW I did just come up with a really dumb way to answer my first question: I use multiple devicetransform nodes to accumulate values, and then pass them through, rename them, and merge the channels I need.

6 degree of freedom Mouse3D CHOPs network March 3, 2023, 8:17 p.m.

Hi all -

I know there are a few forum threads out there about similar ideas, but I'm determined to do this without too much specialized coding knowledge.

I have a 3DConnexion SpacePilot 3d mouse and I want to use it to navigate through the Houdini scene interactively. The plug-and-play behavior is 85% of what I want, but it doesn't appear to be customizable. I can get 90% of the way by playing with my system settings, but that's not sustainable or a complete solution.

My next best guess was to create a "Gamepad Camera" using the shelf tool, and then modify the CHOPS constraint network with a mouse3d node instead of the default gamepad node. However, this has two problems: (1) The devicetransform node has no camera tilt axis - the help page supposes that I would never want such a thing. But I do want it - for my purposes I need a full 6-DOF camera controller. (2) This setup appears to be using the 3d mouse data to edit the world transform of the camera, but I need it to edit the local transform of the camera. When I twist the SpacePilot puck clockwise, I want my camera to look to its right, not rotate toward the world +X axis.

Can someone who is more familiar with CHOPs help me figure out:
(1) How do I accumulate a channel's input? The devicetransform node is doing this, but there's no exposed code. If I twist the puck, I want the relevant channels to increase and stay where they are when I release the puck. Currently the mouse3d channels return to zero when I release.
(2) How do I manipulate an object's local transformations rather than its global ones? This is what the viewport translate tool is doing, so it must be possible to access that in VEX, right?

Thank you!