In Animation Node, there are many ways to control an object's location. The most commonly used ways are using vectors and matrices. Anyway, I do not understand clearly how one might be more advantageous than the other. I want to understand in what situations one should use matrices over vectors and vise versa.

up vote 1 down vote accepted

Matrices---Or Transformation Matrices in this context---are advantageous if other types of transformations are used. A transformation matrix hold much more information that a simple 3D vector. To understand what I mean, lets look at some examples.

If one wants to translate an object along a circle whose center is $(1,1,0)$ using only vectors, one would use a parametric equation as follows.

vector

As one might expect, artists will find this solution rather complicated for its outcome. In order to translate an object in a circular path, one has to use trigonometry. Had the translation been along a linear path, using vectors would be most appropriate.

Now lets look at how matrices handle this problem.

Matrix

The combine matrix node multiply the input matrix list, so the node tree can be read as follows. Move the object one unit along the x axis (First Matrix) then rotate it around the origin (Second Matrix) then move it one unit in both the x and y direction (Third Matrix). Which is very intuitive from the perspective of artists and no explicit math or trigonometry had to be done.

If you still can't understand how the transformation was done, add a cube at the center of the world, set the cursor at its location, and set the pivot to the cursor. Now perform the same instructions we explain above for any angle, you will see that the the object end up in the same location.

In conclusion, use matrices if rotations and scaling is required, if not, then vector should be used.

  • thanks, Omar Ahmad^^. Your answers are very helpful for me, thanks sincerely. – Ethan Liu Aug 11 at 5:04

Your Answer

 
discard

By clicking "Post Your Answer", you acknowledge that you have read our updated terms of service, privacy policy and cookie policy, and that your continued use of the website is subject to these policies.

Not the answer you're looking for? Browse other questions tagged or ask your own question.