Форум программистов, компьютерный форум CyberForum.ru
Наши страницы

OpenGL, работа с освещением - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Вывод символа из таблицы ASCII http://www.cyberforum.ru/cpp-beginners/thread932209.html
Всем добрый вечер! Небольшой ступор Пытаюсь в консоли вывести символ - 156 Это символ фунта (денежная единица). #include <iostream> .... cout << '\x9C' << endl; ....
C++ Математическая задачка В качестве f(x) использовать по выбору: sin(x), х , ех http://www.cyberforum.ru/cpp-beginners/thread932180.html
Задание вычислить за минимальное число операций C++
Дано действительное число х. Не пользуясь никакими другими арифметическими операциями, кроме умножения, сложения и вычитания, вычислить за минимальное число операций 2х4 - Зх3 + 4.х2 - 5х + 6.
C++ Вычислить по формуле
Вычислить по формуле: 2^(-x) - cos(x) + sin(2xy)
C++ Классы в структуре http://www.cyberforum.ru/cpp-beginners/thread932175.html
Добрый вечер. Вопрос первый: какой из контейнеров STL наиболее целесообразней использовать, если предполагаются частые операции поиска в этом контейнере? Вопрос второй: полагаю, что ответ на...
C++ Подключение wininet.h к проекту Добрый день, в рамках самообразования мне захотелось изучить С++. Поставил Visual Studio Express 2012, в течении дня в промежутках между работой было прочитано 78 страниц старого самоучителя 2003... подробнее

Показать сообщение отдельно
PazDim
5 / 5 / 0
Регистрация: 08.08.2011
Сообщений: 93
02.08.2013, 10:27  [ТС]
Эээ... Это значит, что позиция источника света задается относительно пожения камеры, я правильно понял? Вот как я задаю источник света:
C++ (Qt)
1
2
3
4
5
6
7
8
GLfloat m_Position[] = {0.0f,5.0f,0.0f,1.0f};
    GLfloat m_Attenuation = 1.0f;
    GLfloat m_LinAttenuation = 0.01f;
    GLfloat m_QuadAttenuation = 0.01f;
    glLightfv(GL_LIGHT0, GL_POSITION, m_Position);
    glLightf(GL_LIGHT0, GL_CONSTANT_ATTENUATION, m_Attenuation);
    glLightf(GL_LIGHT0, GL_LINEAR_ATTENUATION, m_LinAttenuation);
    glLightf(GL_LIGHT0, GL_QUADRATIC_ATTENUATION, m_QuadAttenuation);
Вроде как должен получиться точечный источник света в позиции с координатами (0;5;0) относительно камеры, так? Получается - вокруг меня светло, а дальше освещение падает(хотя если смотреть вертикально вниз, то пол затемняется). Но при попытке сделать так:
C++ (Qt)
1
GLfloat m_Position[] = {10.0f,5.0f,10.0f,1.0f};
ерунда получается: источник вроде бы должен переместиться относительно меня и начать освещать небольшую область, а вокруг меня будет темно. На самом деле он как бы остается надо мной, но интенсивность света падает...
0
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru