I've been watching and reading a decent amount of stuff about orienting things, especially when it comes to using copytopoints. Here are some of the resources I've used:
- https://www.cgforge.com/blog/copy-to-pnts-0239751 [www.cgforge.com]
- https://www.tokeru.com/cgwiki/JoyOfVex17 [www.tokeru.com]
- https://www.toadstorm.com/blog/?p=493 [www.toadstorm.com]
- https://www.youtube.com/watch?v=MYRtwY-DQV8&ab_channel=JunichiroHorikawa [www.youtube.com]
Here's what I've gathered. There are two main options for orienting instances.
- First, use v@N and v@up to define a new axis system. The object's original Z axis becomes oriented to the v@N vector defined on the points, and its original Y axis becomes oriented with v@up. The new X axis is computed under the hood using a cross product of v@N and v@up.
- Second, use quaternions to define an axis of rotation as well as the angle of rotation around that axis. This is stored on the p@orient attribute.
Am I understanding this all correctly so far?
If p@orient is used, it overrides v@N and v@up (and I guess somehow v@v is also used for instance orientations?). The cgforge link states that p@rot is a quaternion that adds rotation in addition to the rotation already provided by p@orient. Is that correct? Why is that even useful?
Thanks!
Anson

