Dokonałem mężnej próby złamania kodu źródłowego doom 3. Jedną z rzeczy, na które natknąłem się, jest klasa macierzy używana w całej reszcie rozwiązania. To dość prosty kod do naśladowania, ale podjęto decyzję, której nie byłem w stanie pojąć. Zdecydowali się na zmieszanie kolumn i Major Major Majorors w różnych rozmiarach.Dlaczego Doom3 zamienił główne macierze kolumn i wierszy?
- 3x3 Matrix jest kolumna głównym
- Każda inna matryca jest rząd głównym (myślę - nie je wszystkie zaznaczone)
Czy ktoś wie dlaczego ta decyzja mogła być wykonana? Ponieważ OpenGL jest kolumną główną, myślę, że byłoby sensownym po prostu użyć kolumny głównej?
Nie jestem programistą graficznym, ale myślę, że wiersz główny jest bardziej typowy w kodzie, który widziałem, który manipuluje tablicami 2d. Więc może jest to wyłącznie do utrzymania. –
Jak to jest [tag: C] powiązane? – bitmask
Row-major/column-major mają bardzo różny wpływ na zachowanie pamięci podręcznej, w zależności od tego, jakie typy operacji są wykonywane na macierzach. –