I would like to add datenwolf to the big answer, making it clear that the key perceived difference between OpenGL matrices and DirectX matrices is that they basically have a column format and a series of rows. (Column and row-major refers to how you write them in 4x4 format. If translations are displayed in the fourth column, that is, in the column column, on the contrary, for the row-major.)
Mathematicians will tell you that a major column is the right way to represent a matrix, primarily because it simplifies operations on them visually (on paper).
However, when it comes to OpenGL, the entire matrix is โโlaid out in memory in a 16-element array with a shift occupying the 13th, 14th and 15th elements, according to the specification . Thus, it is easy to adapt the data to the matrix format.
source share