Hi,
It is not very intuitive for the new 3D programmers to use vector2d/3d/4d. It is confusing. For example,
When you want to do a affine transformation with translation inside over a 3D vector (not a point), we need to use THREE.Vector4d to achieve that. It is not intuitive.
I think it is good to differentiate the Vector and Point class to make the concepts clearer.
Thanks.
@Mo1999 Thank you for your feedback.
Correct.
The library uses a single class, leaving the interpretation of the data up to the user.
The
Matrix4
class can represent an affine transformation or a projection. TheVector3
class can represent a point, vector, or direction. Directions are assumed to be normalized.Every approach has trade-offs. Whether the approach three.js uses is a “good” one is a matter of opinion.