Модераторы: Rickert, Alexeis, BorisVorontsov
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Часть 3D рисунка не отображается 
:(
    Опции темы
Mamont
Дата 27.2.2005, 13:56 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 61
Регистрация: 9.1.2005

Репутация: нет
Всего: нет



Постараюсь обьяснить проблему:

Чертится координатная плоскость ввиде линий изходящих из точки (0,0,0).

Код

glClear(GL_DEPTH_BUFFER_BIT ^ GL_COLOR_BUFFER_BIT);
 glPolygonMode(GL_FRONT_AND_BACK, GL_LINE);
 glBegin(GL_LINES);
   glColor3d(1,0,0);
   glVertex3d(0,0,0);
   glVertex3d(5,0,0);
   glColor3d(0,1,0);
   glVertex3d(0,0,0);
   glVertex3d(0,5,0);
   glColor3d(0,0,1);
   glVertex3d(0,0,0);
   glVertex3d(0,0,5);
 glEnd();


Затем чертятся два четырехугольника в плоскости (x,y) и (x,z) соответственно.

Код

glPolygonMode(GL_FRONT_AND_BACK, GL_FILL);
 glBegin(GL_QUADS);
   glColor3d(1,0,0);
   glVertex3d(0,0,0);
   glVertex3d(1,0,0);
   glVertex3d(1,1,0);
   glVertex3d(0,1,0);

   glColor3d(0,1,0);
   glVertex3d(0,0,0);
   glVertex3d(1,0,0);
   glVertex3d(1,0,1);
   glVertex3d(0,0,1);
 glEnd();


Задается комера в точке (0.5 , 0.5 , 0.5) напреавленная в точку (0,0,0) (т.e в начало координат). При таком раскладе изображение строится корректно.

Код

glMatrixMode( GL_PROJECTION );
 gluLookAt(0.8,0.8,0.8, 0,0,0 ,0,1,0);
glMatrixMode( GL_MODELVIEW );


Проблема: Стоит " отодвинуть " камеру от начала координат в точку (0.8, 0.8, 0.8). Изображение как бы отрезается плоскостю перпендикулярной к линии направления камеры и начало координат перестает быть видимой.

То же самое происходит если камеру поставить в любую точку пространства у которой x,y,z больше 0.7 или 0.8.

В чем может быть дело? Заранее благодарен...
PM MAIL ICQ   Вверх
DENNN
Дата 28.2.2005, 13:29 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Участник Клуба
Сообщений: 3878
Регистрация: 27.3.2002
Где: Москва

Репутация: 2
Всего: 43



gluPerspective(..)
glOrtho(.....)
glFrustum(....)
Хоть что-то использованно при инициализации сцены?
PM ICQ   Вверх
Mamont
Дата 28.2.2005, 16:35 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 61
Регистрация: 9.1.2005

Репутация: нет
Всего: нет



Да использовано.

Код

glFrustum(-15,15,-15,0,15);

PM MAIL ICQ   Вверх
DENNN
Дата 28.2.2005, 17:17 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Участник Клуба
Сообщений: 3878
Регистрация: 27.3.2002
Где: Москва

Репутация: 2
Всего: 43



Гы. Странно: неужели такой код комплируется?
Код

glFrustum(-15,15,-15,0,15);

У меня MSDN говорит, что у этой функции 6 параметров.

P.S. Заодно покажи glViewPort. И уточни: пишешь OGL код сам или какие-нибудь библиотеки используешь (glut и т.п.)
PM ICQ   Вверх
Mamont
Дата 1.3.2005, 07:34 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 61
Регистрация: 9.1.2005

Репутация: нет
Всего: нет



Допустил ошибку. Использовалось:

Код

glFrustum(-15,15,-15,15,0,15);


Viewport (0,0,Width,Height);

Подключаю библиотеки:

Код

#include gl.h
#include glu.h
#include glaux.h


Это сообщение отредактировал(а) Mamont - 1.3.2005, 07:37
PM MAIL ICQ   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Вы можете найти полезным что...
Alexeis
Rickert
  • Английская документация по DirectX лежит где-то здесь.
  • Английская документация по OpenGL лежит где-то там.
  • Гейм-дев у нас обсуждают где-то тут

Ждём вас! С уважением, Alexeis, Rickert.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | C/C++: Мультимедия, OpenGL/DirectX | Следующая тема »


 




[ Время генерации скрипта: 0.1224 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.