OpenGL
From Wikipedia, the free encyclopedia
Remove ads
(енгл. )[3] је стандардна спецификација која описује вишеплатформски програмски интерфејс за писање програма који раде са дводимензионалном и тродимензионалном рачунарском графиком. Интерфејс чини преко 250 различитих функција које се могу користити за израду комплексних тродимензионалних сцена од једноставних елемената. је развијен од стране Силикон Графикс (енгл. ) 1992. године и популаран је у индустрији видео игара где је пандан Мајкрософтовом . Поред овога, много чешће се користи у научне сврхе, код CAD-програма, у пројектима виртуелне стварности као и у разним симулаторима.
Remove ads
Пример
Следи једноставан пример једне сцене са коментарима. На слици је приказан излаз нацртан директно у .
glClear(GL_COLOR_BUFFER_BIT);
Чишћење фрејма пре почетка цртања. Цео фрејм ће бити обојен у подразумевану боју која је у овом случају црна.
glMatrixMode(GL_MODELVIEW);
glLoadIdentity();
Наглашавање да ће матрица за приказ тродимензионог модела бити трансформисана и њено подешавање на идентичну матрицу.
glTranslatef(0,0,-5);
glRotatef(45,0,1,1);
Транслација за -5 јединица по оси (помоћу ) и ротација за 45° око вектора (0,1,1) (помоћу ). Ове трансформације се врше на претходно изабраној матрици.
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();
Следи цртање модела. Биће исцртан квадрат у равни са тачкама у (±1,±1) (задатим са ), чија темена редом имају боје (задате са ): црвена, зелена, плава, жута. Због претходних трансформација над матрицом којом се координате квадрата трансформишу, исти ће бити приказан у пројекцији.
Remove ads
Види још
Референце
Спољашње везе
Wikiwand - on
Seamless Wikipedia browsing. On steroids.
Remove ads