по моему нет никако смысла делать враппер на GL функциями.
Надо делать более высокоуровневые классы: Model, Camera, Material...
Я фанат DirectX и я залез сюда)
На самом деле над OpenGL почти невозможно сделать нормальную оболочку.
Единственная вещь, которая легко одевается в класс - это шейдер.
VBO, FBO, текстуры - настолько тесно переплетены между собой, что выделение их в отдельный сущности может лишь нанести вред.
nerezus
> Подскажите нормальную ООП оболочку для OpenGL и OpenGL ES для C++.
>
> Хочется писать на ООП-языке, а не 2.72бать мозг наследием C.
Подскажите пожалуйста НЕ нормальную оболочку для OpenGL и OpenGL ES для C++.
Ну хотябы примерчик использования нормальной оболочки, или тролль.
Или хотя бы SDK с примерами использования всех фич OpenGL 3.2.
Или хотя бы дрова под него :-)
> Потому что с такими запросами тебе дорога только к DirectX.
Ты знаешь, что такое OpenGL ES то хоть? о_О
> Вся ООП-лажа - для фанатов DirectX.
Ога, ога, а проектирование - довод жалких неудачников. Настоящая программа должна представлять собой спагетти.
> Подскажите пожалуйста НЕ нормальную оболочку для OpenGL и OpenGL ES для C++.
Сам под мостом живешь.
Не знаю ненормальных. Я тему создал с целью найти враппер, а не потроллить.
Просьба прекратить разговоры на тему DirectX совсем. Меня DX не интересует. Абсолютно не интересует.
Какой тонкий тролль.
Отмечаюсь в эпик сраче
>gl=new OpenGL(hWnd, pfd);
>gl.Begin(gl.LINES);
>gl.Vertex2f(-1.0f ,-1.0f);
>gl.Vertex2f(1.0f ,1.0f);
>gl.End();
nerezus
>X512, нет. У тебя не ООП, а набор стат. методов в классе.
Где ты видешь здесь статические методы?
Приведи кусок кода как примерно должо выглядеть то, что тебе нужно.
nerezus
> Ты знаешь, что такое OpenGL ES то хоть? о_О
Да, знаю. А ты видимо совсем не представляешь себе что такое нормальный OpenGL, когда одна функция может сидеть в нескольких расширениях и отвечать за совершенно разные действия.
Обычно все пишут свою обёртку в соответствии со своими нуждами.
Стандартная обёртка над OpenGL не может существовать по определению, потому что она будет только уродовать и ограничивать GAPI.
Я на кормёжку троллей успел?
Загугли вот "c++ opengl wrapper", там всякое есть ;)
nerezus
http://humus.name/index.php?page=3D
вверху там его framework с межгалактическим ООП.
То что тебе нужно.
>gl=new OpenGL(hWnd, pfd);
>gl.Begin(gl.LINES);
>gl.Vertex2f(-1.0f ,-1.0f);
>gl.Vertex2f(1.0f ,1.0f);
>gl.End();
O_O
gl=new OpenGL(hWnd, pfd); gl->Begin( gl.LINES); gl->Vertex2f( -1.0f ,-1.0f); gl->Vertex2f( 1.0f ,1.0f); gl->End( );
nerezus
> Ты знаешь, что такое OpenGL ES то хоть?
ну я знаю, каждый день пишу, и ЧЁ ? из всего срача что было тут навалено здравая мысль проскочила только 2 раза:
1)
LowPolyMan
> по моему нет никако смысла делать враппер на GL функциями.
> Надо делать более высокоуровневые классы: Model, Camera, Material...
2)
Executor
> Какой смысл в оборочивании ГЛьных функций в классы?
> Ты думаешь от того, что ты будешь писать texture.bind тебе будет проще в
> ОпенГЛ? Отнюдь...
я пользуюсь прекрастной ООП оберткой над OpenGL - http://www.openscenegraph.org/projects/osg
вот мой перевод книг - http://smartcamera.googlecode.com/svn/trunk/Doc/OSGSGrus.pdf
asmzx
Сценеграф это не ООП обёртка над ОпенГЛ...
Либо у нас разное понимание того, что такое ООП обёртка...
Тема в архиве.