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

4.4 Прозрачность

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

     С помощью четвертого компонента цвета можно получать различные эффекты наложения объктов друг на друга, наложения цветов и т.п. Здесь я расскажу о наиболее нужном и распрострененном эффекте - прозрачности объектов. Для того, чтобы разрешить обрабатывать четвертый компонент цвета вы должны вызвать функцию glEnable с аргументом GL_ALPHA_TEST. Для получения требуемого эффекта прозрачности нужно разрешить наложение […]

     Доработайте код, приведенный выше, чтобы в первой строке показывались три сферы. Цвет и стили(GLU_POINT, GLU_LINE и GLU_FILL) должны быть разными. В следующих трех строках должны быть цилиндры, диски и частичные диски. Исходный файл смотрите здесь. Исполняемый файл здесь.

3.7 Уражнение:»Многогранники»

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

Реализуйте проволочные многогранники с помощью проволочных треугольников, многоугольников и линий.

3.6 Уражнение:»Примитивы»

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

Изобразите точки, линии, треугольники, многоугольники в одном окне, как показано ниже. Исходный файл смотрите здесь. Исполняемый файл здесь.

     Четырехугольники рисуются вызовом функции glBegin с параметром GL_QUADS или GL_QUAD_STRIP. Для первого случая каждые четыре вершины определяют свой четырехугольник. Во втором случае рисуются связанные четырехугольники. Первая, вторая, третья и четвертая вершина определяют первый четырехугольник. Третья, четвертая, пятая и шестая вершина - второй четырехугольник и т.д. (2n-1), 2n, (2n+1) и (2n+2) вершины задают n-ый четырехугольник. […]

3.4 Треугольники

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

     Для треугольника можно задавать те же параметры, что и для линии, плюс есть еще одна функция glPolygonMode. Она устанавливает опции для отрисовки многоугольника. Первый параметр может принимать значения - GL_FRONT, GL_BACK и GL_FRONT_AND_BACK. Второй параметр указывает, как будет рисоваться многоугольник. Он принимает значения: GL_POINT(рисуются только точки), GL_LINE(рисуем линии) и GL_FILL(рисуем заполненный многоугольник). Первый параметр […]

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 этим параметром. Последние […]

2.10 Резюме

04 Авг 2008, zombie. Рубрика:
Комментарии к записи 2.10 Резюме отключены

На этом эта глава книги закончена. Вы научились рисовать трехмерные объекты и делать интерактивную анимацию, используя эти объекты. Этого, в общем-то, достаточно для написания примитивных программ. В следующей главе мы научимся рисовать примитивные объекты: точки, линиии, ломаные и многоугольники.

2.9 Упражнение:» Игра Арканоид»

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

Напишите игру "Arconoid" - летающий шарик, снизу подставка, пользователь стрелками или мышкой управляет подставкой и отбивает шарик. Исходный файл смотрите здесь. Исполняемый файл здесь.