0

3957

0
Автор публикации grifin85
При написании 3d шутера обычно необходимо знать на какой высоте от земли( ландшафта) находится камера. Предположим, что мы смогли загрузить или сгенерировать ландшафт (см. пред. статью). То есть у нас есть сетка связанных треугольников, мы знаем к какому тайлу и к какому треугольнику принадлежит данная точка.
Читать дальше...

0

3746

0
Автор публикации grifin85
Довольно привычно стало создавать ландшафт, считывая из файла картинки синюю, красную или зеленую составляющую. Потом, в соответствии с этим значением задаём высоту точки. Главное преимущество такого метода является простота и скорость загрузки ландшафта. Но картинки плохо сжимаются, а при распространении в сети это создает “неудобства”. Кроме того, такой ландшафт будет все время одинаковым, что доволько быстро надоедает. Наверное, уже понятно, к чему я веду? Да! В этой статье я разберу как сгенерировать ландшафт!!
Читать дальше...

0

2854

0
Автор публикации grifin85

Много тысяч лет тому назад наш прапрапрадедушка собрал травы и минералы и сделал из них краски. Рисовал он пальцами или использовал некое подобие кисти неизвестно. Но то, что создал этот первобытный Мастер до сих пор поражает воображение. Стремление человека выразить себя, рассказать о том, как прекрасен мир в котором он живет, до сих пор обитает во многих из нас. Времена изменились, появились новые технологии, но все еще не перестают удивлять нас звездное небо и краски восходящего солнца.

Читать дальше...

0

2861

0
Автор публикации grifin85

Я думаю, вы, как и я, смотрели на эти OpenGL'ные демки, как двигаются по экрану полигоны, меняются различные эффекты и так далее. Также, вполне вероятно, вы не очень сильны в математике и не хотите самостоятельно выводить все эти математические синусоидальные процедуры. OpenGL - это классная библиотека, которая позволит вам создать 3D-вселенную очень быстро, двигать ее и наложить серию спецэффектов, используя простую концепцию API.

Читать дальше...

0

2521

0
Автор публикации grifin85
Используя список функций из предыдущего упражнения, нарисуйте эти фигуры в два столбца. Слева - проволочные. Справа - сплошные.
     Примечание: тут хочу заметить, что в версии glaux.lib от фирмы Microsoft имеется следующий баг: цилиндр и конус рисуются всегда либо проволочными, либо сплошными. Если вы первый цилиндр/конус в программе нарисовали проволочным, то далее все цилиндры/конусы будут проволочными. Соответственно, если первой была сплошная фигура, то далее все будут сплошные. Поэтому, не стоит паниковать. Это ошибка Microsoft. Могу также вас порадовать, что ниже я расскажу, как обойти эту проблему.
Читать дальше...

0

2704

0
Автор публикации grifin85

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

Читать дальше...

0

2692

0
Автор публикации grifin85

Замените функцию auxSolidSphere на функцию, из указанных ниже с соответсвующими параметрами. Значения параметров устанавливайте порядка единицы - 0.5-1.7. Если вы укажете слишком маленький размер, фигуру будет плохо видно; если слишком большой, то она получится урезанной. Это связано с тем, что ее край, как бы вылезет из монитора.

Читать дальше...

0

2579

0
Автор публикации grifin85
Самым простым объектом, с помощью которого можно увидеть всю мощь OpenGL, является сфера. Давайте попытаемся ее изобразить. Для этого надо создать новый проект в VisualC++, выполните следующие действия:
Читать дальше...

0

3016

0
Автор публикации grifin85

Начнем с самого главного, установим необходимое программное обеспечение. Я предполагаю, что Windows у Вас уже установлен и работает, в противном случае, вы купили не ту книгу. Во-первых, установите MSVisualC++6.0 и jdk113 или выше, если вам интересно узнать о написание java-апплетов с использованием OpenGL. Впрочем, java понадобится вам только в седьмой главе. Во-вторых, нам понадобится реализация библиотеки OpenGL. Она входит в поставку Windows95/NT - это билиотеки opengl32.dll & glu32.dll. Вы также можете взять библиотеки OpenGL от Silicon Graphics. Инструкция по установке там прилагается. Вам придется скопировать opengl.dll и glu.dll в windowssystem и положить opengl.lib, glu.lib в подкатолог Lib, где установлено MSVisualC++. В-третьих, вам понадобятся четыре моих программы-шаблона, которые представляют собой начальный скелет, который мы потом будем наполнять функциональностью. Где взять OpenGL от Silicon Graphics, Magician, jdk и мои программы-шаблоны, смотри в приложении 'А'.

Читать дальше...

0

4478

0
Автор публикации grifin85

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

Читать дальше...