Skocz do zawartości

OpenGL tylko że w 2D


berus4

Polecane posty

Mam ot taki mały problem. Mianowicie jako że na Mac OS X jest mało gier chcę zmienić ten stan poprzez stworzenie własnej produkcji. Jednak napotkałem pare problemów mianowicie jako że na maku pojęcie takie jak DirectX nie istnieje jedynym sposobem na tworzenie silnika do gry platformowej w 2D jest OpenGL(Quartz odpada za wolny). Jednak jest on przystosowany do tworzenia grafiki 3D a nie 2D. Tam czytałem że można wyświetlać dwuwymiarowe obrazki poprzez narysowanie czworokąta a potem nałożeniem na niego tekstury. Jednak z tym mam pare problemów mianowicie:

 

1)w OpenGL nie ma pojęcia pixel(lub jest jeśli się myle to poprawcie są jakieś jednostki) więc mam problem z wyświetleniem obrazka o określonym rozmiarze.

[cpp][/cpp]

Wiec wie ktoś jak stworzyć prosty silnik do rysowania obrazkow w openGL?

Link do komentarza
Udostępnij na innych stronach

Musisz ustawic widok na ortogonalny

KODvoid OrthoMode(int left, int top, int right, int bottom)

{

 

glMatrixMode(GL_PROJECTION);

 

glPushMatrix();

 

glLoadIdentity();

 

glOrtho( left, right, bottom, top, 0, 1 );

 

glMatrixMode(GL_MODELVIEW);

 

glLoadIdentity();

}

Narysowac quady tak jak zwykle uzywajac glVertex2f we wsporzednych podajac wspolrzedne ekranowe (np. 800,600)

i ustawic spowrotem na perspektywe:

KODvoid PerspectiveMode() // Set Up A Perspective View

{

 

// Enter into our projection matrix mode

glMatrixMode( GL_PROJECTION );

 

// Pop off the last matrix pushed on when in projection mode (Get rid of ortho mode)

glPopMatrix();

 

// Go back to our model view matrix like normal

glMatrixMode( GL_MODELVIEW );

 

}

My life for Aiur!

Link do komentarza
Udostępnij na innych stronach

Zarchiwizowany

Ten temat jest archiwizowany i nie można dodawać nowych odpowiedzi.

×
×
  • Utwórz nowe...