As the topic says. Im extremely curious about what it means to Orthonormalize a CFrame? I can’t exactly find any good resources to explain this is an easy to understand way.
According to wikipedia In linear algebra, two vectors in an inner product space are orthonormal if they are orthogonal (or perpendicular along a line) unit vectors. A set of vectors form an orthonormal set if all vectors in the set are mutually orthogonal and all of unit length. An orthonormal set which forms a basis is called an orthonormal basis. It is apart of linear algebra and if you really want to understand it then you would have to research really well.
According to the internet, this is the best explanation in my opinion:
Orthonormalization in the context of Roblox, and in general, is a process that involves creating a set of vectors that are all orthogonal (perpendicular) to each other and are of unit length (normalized).
In 3D space, three vectors are typically used to represent the right, up, and forward directions. When these vectors are orthonormal, it means that they are at right angles to each other (orthogonal) and each vector has a length of one (normalized).
Orthonormalization is often used in computer graphics and game development, especially in regards to object transformations and camera perspectives. It helps maintain accuracy and prevent distortions after multiple transformations are applied, such as rotation, translation, and scaling.
In Roblox, a CFrame, or Coordinate Frame, is used to represent the position and orientation of an object in 3D space. A CFrame is made up of a position (a Vector3) and a rotation (represented by 3 Vector3s). These rotation vectors are typically orthonormal to prevent distortions when the CFrame is used for transformations.
Here’s a basic example of creating an orthonormal basis:
local right = Vector3.new(1, 0, 0) -- x-axis
local up = Vector3.new(0, 1, 0) -- y-axis
local forward = Vector3.new(0, 0, 1) -- z-axis
-- These vectors are already orthonormal, meaning they are perpendicular to each other and of unit length.
So cross product would essentially come in handy to finding an axis to finish an orthonormal basis?
Yes,