Результаты поиска

3.3 Линии

04 Авг 2008, zombie. Рубрика:

     Для линий вы также можете изменять ширину, цвет, размер, сглаживание. Если вы зададите разные цвета для начала и конца линии, то ее цвет будет переливающимся. OpenGL по умолчанию делает интерполяцию. Так же вы можете рисовать прерывистые линии, делается это путем наложения маски при помощи следующей функции: void glLineStipple(GLint factor, GLushort pattern );      Второй […]

3.2 Точки

04 Авг 2008, zombie. Рубрика:

     Вы можете нарисовать столько точек, сколько вам нужно. Вызывая glVertex3d, вы устанавливаете новую точку. При создании точек вы можете изменять следующие параметры. Вы можете вызывать glColor3d внутри glBegin/glEnd. Размер точки можно устанавливать с помощью функции: void glPointSize(GLfloat size) Режим сглаживания можно устанавливать вызовом функции glEnable(GL_POINT_SMOOTH)      Отключается, соответственно, вызовом glDisable() c этим параметром. Последние […]

3.1 Общие положения

04 Авг 2008, zombie. Рубрика:

     Точки, линии, треугольники,четырехугольники, многоугольники - простые объекты, из которых состоят любые сложные фигуры. В предыдущей главе мы рисовали сферу, конус и тор. OpenGL непосредственно не поддерживает функций для создания таких сложных объектов, т.е. таких функций нет в opengl32.dll. Эти функции есть в библиотеке утилит glu32.dll, и устроены они следующим образом. Для того чтобы нарисовать […]

2.8 Анимация

04 Авг 2008, zombie. Рубрика:

     Давайте оживим нашего снеговика и добавим интерактивность. Для этого надо отрисовывать кадры и реагировать на внешние события от клавиатуры или мыши. Для отрисовки кадров их надо как-то различать. Для этого мы в функции display вводим переменную time типа int с модификатором static. Создайте новый проект и в функцию display введите следующее: "static int time=0;". […]

2.6 Поворот координат

04 Авг 2008, zombie. Рубрика:

     Теперь рассмотрим вращение координат. Создайте новый проект с именем Rotate. Переименуйте glaux.c в rotate.c В функцию display вставьте следующий код: glColor3d(1,0,0); auxSolidCone(1, 2); // рисуем конус в центре координат glPushMatrix(); // сохраняем текущие координаты glTranslated(1,0,0); // сдвигаемся в точку (1,0,0) glRotated(75, 1,0,0); // поворачиваем систему координат на 75 градусов glColor3d(0,1,0); auxSolidCone(1, 2); // рисуем […]

2.4 Переход к новым координатам

04 Авг 2008, zombie. Рубрика:

Продолжим рисовать трехмерные фигуры. В предыдущем параграфе вы научились рисовать примитивные трехмерные объекты. Но проблема в том, что они рисуются только в начале координат, т.е. в точке (0,0,0). Для того чтобы изобразить сферу в точке ( x0,y0,z0 ), надо переместить начало координат в эту точку, т.е. надо перейти к новым координатам. Эта процедура, довольно распространенная […]

2.2 Давайте что-нибудь изобразим

04 Авг 2008, zombie. Рубрика:

Самым простым объектом, с помощью которого можно увидеть всю мощь OpenGL, является сфера. Давайте попытаемся ее изобразить. Для этого надо создать новый проект в VisualC++, выполните следующие действия: Запустите MSVisualC++6.0 Щелкните меню File->New->Win32 Console Application. Выберете каталог и имя проекта, впишите - sphere, щелкните OK.Я все свои проекты держу на диске D в каталоге Projects. […]

Об авторе

04 Авг 2008, zombie. Рубрика:

     С раннего дества увлекался всевозможными головоломками, искал пищу для мозгов. Уже в восемь лет в пионерском лагере занял второе место по шахматам, это было одно из первых достижений. С 13 лет активно увлекся математикой. Так я попал в вечернюю школу "Авангард" при МИФИ. Через два года поступил в спецшколу при МФТИ. Надо сказать, что […]

Предисловие

04 Авг 2008, zombie. Рубрика:

     Эта книга является самоучителем по популярной библиотеке OpenGL. OpenGL - Open Graphics Library, открытая графическая библиотека. Термин "открытый" означает независимый от производителей. Имеется спецификация(стандарт) на OpenGL, где все четко задокументировано и описано. Библиотеку OpenGL может производить кто-угодно. Главное, чтобы библиотека удовлетворяла спецификации OpenGL и ряду тестов. Как следствие, в библиотеке нет никаких темных мест, […]

Книги

24 Янв 2008, admin. Рубрика:

Несколько книг которые возможно помогут вам в изучении OpenGL и С++ ... Графика трехмерной компьютерной игры на основе OpenGL Автор: А. В. Боресков Книга посвящена основам программирования трехмерной графики в играх. В ней подробно рассматривается написание графического ядра для трехмерной игры, позволяющей в реальном времени перемещаться по заданной сцене. Достаточно подробно рассматриваются математические вопросы работы […]