| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > C/C++: Мультимедия, OpenGL/DirectX > [OpenGL] Цвет и GL_FRONT_AND_BACK. |
| Автор: Elfet 10.2.2010, 15:11 | ||||
| Всем привет! Подскажите, пожалуйста, почему у меня разукрашивается только одна сторона треугольника?
А остальная остаётся чёрной? Хотя я указываю GL_FRONT_AND_BACK? И ещё как понять где расположен источник света? Мне нужно что бы он был там где и камера.
Заранее спасибо! |
| Автор: kemiisto 10.2.2010, 15:25 |
Если ты работаешь со стандартным OpenGL, то какая нафиг камера? Если есть свой класс обёртка для камеры - в студию. Хотя... Если пишешь на Qt и нужна камера-трекбол - используй http://www.libqglviewer.com/. Базовые потребности он удовлетворяет. |
| Автор: Elfet 10.2.2010, 15:58 | ||
| Да, я использую Qt. Но мне нужно бы самому бы всё сделать. Камера у меня немного другая будет. Вот мой код:
|
| Автор: kemiisto 10.2.2010, 16:30 | ||
| Я когда-то тоже http://forum.vingrad.ru/forum/topic-254020.html занимался. Впустую, замечу. Фуф, так. Ну, насколько я вижу, надо перенести, всё что связано со светом из initializeGL() в paintGL() после всех glRotated(). Но могу и ошибаться. Т.е. надо повернуть систему координат и уже в изменённой поставить свет. Вроде так. Попробуй. Добавлено через 8 минут и 3 секунды Странноватый код у тебя в paintGL()... Обычно:
Не нравиццо мне glPushMatrix(); / glPopMatrix(); в коде для отрисовки. Попробуй убрать их, а свет не переносить. Добавлено через 11 минут и 5 секунд Последняя моя мысль кажеться мне правильной. Откуда дровишкикод? |
| Автор: Elfet 10.2.2010, 22:33 |
| Код из примеров по работе с opengl из qt-та Если их убрать, то всё начинает лихорадочно вращаться Добавлено через 1 минуту и 26 секунд Цвет есть у стороны если ось z смотрит на камеру, и чёрный полигон, если она смотрит против. |
| Автор: Elfet 10.2.2010, 22:44 | ||
Добился того что полигон одинакового цвета, перенеся определение источника цвета на ось z. Но это не очень удобно, мне же нужно задать источник света там где камера.
Добавлено через 7 минут и 26 секунд Странно, что цвет есть только с одной стороны, куда нормаль смотрит: glNormal3d(0,0,-1); Но я ведь указываю GL_FRONT_AND_BACK!!! Может косяк какой? |
| Автор: Quartz 20.2.2010, 23:40 | ||
? |