2013-06-12 11 views
5

Zacząłem od OpenGL i dowiedziałem się o modelu, widoku i macierzy projekcji. Z mojego rozumienia matryca projekcyjna jest potrzebna tylko do projekcji obiektu 3D na powierzchni 2D (ekran). Więc jeśli chcę stworzyć grę 2D, czy muszę nawet zadzwonić z matrycą projekcji?Używanie OpenGL do 2D

Odpowiedz

6

Nie. Kiedy mamy do czynienia wyłącznie z dwoma wymiarami, możemy pozostawić matrycę rzutowania jako matrycę tożsamości.

8

Nadal może być przyjemnie używać macierzy projekcyjnej do definiowania układu współrzędnych. Domyślnie zostanie zdefiniowane okno pomiędzy [-1,1] dla X i Y, niezależnie od rozdzielczości i proporcji obrazu. Jeśli nie naprawisz tego za pomocą macierzy projekcji, będziesz musiał zrekompensować to w inny sposób. Chcesz, aby kwadrat był renderowany jako kwadrat, a nie jako prostokąt.

W zależności od wersji GL możesz zadzwonić pod numer glOrtho, skonstruować go ręcznie lub użyć glm::ortho.

Z mojego doświadczenia wynika, że ​​praca nad domyślnym systemem [-1,1] jest wyjątkowo niepraktyczna. Na przykład: nie chcesz, aby obroty wokół osi Z deformowały geometrię.

Powiązane problemy