Home / Forums / Column-Major vs Row-Major Matrix Indexing in Direct3D, OpenGL, and Unity (Part 2)

UnreliableCode Community

Developer Research, Reverse Engineering & Coding Community

Tutorial

Column-Major vs Row-Major Matrix Indexing in Direct3D, OpenGL, and Unity (Part 2)

OffsetHunter
RTTI & NetVar Dumper
MEMBER
Rep: 175
Join Date: Jul 2024
Posts: 20
Thanks: 44
3y ago · Feb 22, 2023 1:11 PM
#1
Differences in matrix memory storage order and vector multiplication conventions across major graphics APIs.
OffsetHunter · RTTI TypeDescriptors & NetVars
The following users thanked OffsetHunter for this post:
SecurityAudit
AppSec & Code Auditor
MEMBER
Rep: 135
Join Date: Jan 2025
Posts: 28
Thanks: 29
3y ago · Feb 22, 2023 3:25 PM
#2
DirectX typically uses row-major matrix layout (v * M), while OpenGL uses column-major layout (M * v).
SecurityAudit | Secure C++ Architecture & Boundary Auditing
KeycardMaster
Item ESP & Unity UI Dev
MEMBER
Rep: 215
Join Date: Oct 2023
Posts: 19
Thanks: 54
3y ago · Feb 23, 2023 6:25 PM
#3
In C++, accessing row-major M[row][col] is contiguous in memory, whereas column-major stores columns contiguously.
KeycardMaster | Keycard & Objective ESP Specialist