OpenGL

Из Википедије, слободне енциклопедије

OpenGL (енгл. Open Graphics Library) је стандардна спецификација која описује вишеплатформски програмски интерфејс за писање програма који раде са дводимензионалном и тродимензионалном рачунарском графиком. Интерфејс чини преко 250 различитих функција које се могу користити за израду комплексних тродимензионалних сцена од једноставних елемената. OpenGL је развијен од стране Силикон Графикс (енгл. Silicon Graphics Inc., SGI) 1992. године и популаран је у индустрији видео игара где је пандан Мајкрософтовом Direct3D. Поред овога, много чешће се користи у научне сврхе, код CAD-програма, у пројектима виртуелне стварности као и у разним симулаторима.

Пример[уреди]

Графички приказ описане сцене

Следи једноставан пример једне OpenGL сцене са коментарима. На слици је приказан излаз нацртан директно у OpenGL.

glClear(GL_COLOR_BUFFER_BIT);

Чишћење фрејма пре почетка цртања. Цео фрејм ће бити обојен у подразумевану боју која је у овом случају црна.

glMatrixMode(GL_MODELVIEW);
glLoadIdentity();

Наглашавање да ће матрица за приказ тродимензионог модела бити трансформисана и њено подешавање на идентичну матрицу.

glTranslatef(0,0,-5);
glRotatef(45,0,1,1);

Транслација за -5 јединица по Z оси (помоћу glTranslatef) и ротација за 45° око вектора (0,1,1) (помоћу glRotatef). Ове трансформације се врше на претходно изабраној матрици.

glBegin(GL_POLYGON);
	glColor3f(1,0,0); glVertex3f(-1,-1,0); // црвено теме
	glColor3f(0,1,0); glVertex3f(-1, 1,0); // зелено теме
	glColor3f(0,0,1); glVertex3f( 1, 1,0); // плаво теме
	glColor3f(1,1,0); glVertex3f( 1,-1,0); // жуто теме
glEnd();

Следи цртање модела. Биће исцртан квадрат у XY равни са тачкама у (±1,±1) (задатим са glVertex3f), чија темена редом имају боје (задате са glColor3f): црвена, зелена, плава, жута. Због претходних трансформација над матрицом којом се координате квадрата трансформишу, исти ће бити приказан у пројекцији.

Види још[уреди]

Спољашње везе[уреди]


Викиостава
Викимедијина остава има још мултимедијалних датотека везаних за: OpenGL