![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Вопрос по OpenGL [Delphi, Windows]
Trimp © (2004-12-23 18:56:00)Товарищи программисты, нужна помощь. Работаю в Delphi7 с использованием библиотеки OpenGL. На днях сделал несколько программ с использованием OpenGL. Суть в том, что есть поверхность и на неё натянута текстура. Вроде ничего, но текстуры монотонны, нет потемнений, посветлений, как в жизни. Прописывал к каждому полигону нормали, и без текстур видно что какая то грань темнее, а какая то светлее. Но при натягивании текстуры этого нет. Грани одинаковы.
Как можно организовать плавные потемнения, посветления на текстуре в зависимости от положения света? Может с помощью бликов? Незнаю. Посоветуйте, расскажите.
MeF Dei Corvi (2004-12-26 05:48:00) [1]P.S. C++ и Delphi чем-то похожи по синтаксису... Самую малость, но алгоритм понять можно.
P.P.S. Я OpenGL именно по примерам NeHe изучал, хотя кривоваты они...
П7 (2004-12-26 05:28:00) [2]
> MeF Dei Corvi © (25.12.04 15:02) [7]
Факт. И вообще, если хочешь иметь готовые алгоритмы, то учись читать С\С++. Я больше половины "стыренных" алгоритмов самостоятельно портировал с С\С++. Это очень удобно, уметь читать такой язык... (:
MeF Dei Corvi (2004-12-25 15:02:00) [3]
> XProger ссылка эта для С++ програмеров, а я пока в Delphi.
А какая разница? Алгоритмы одни и те же. Тем более, что OpenGL он и в Африке на Юниксе один и тот же.
Trimp (2004-12-25 14:47:00) [4]XProger ссылка эта для С++ програмеров, а я пока в Delphi.
XProger (2004-12-25 06:44:00) [5]http://pmg.org.ru/nehe/index.html
Тут есть всё для начала :)
Бульдозер (2004-12-25 00:03:00) [6]> Как включить АнтиАляйсинг (не знаю как правильно пишется).
А зачем он? Сделай графику побольше. Всё равно при АнтиАляйсинге (тоже не знаю как правильно пишется) рендерится экран*4 и уменьшается в экран*1 со смазыванием.
Trimp (2004-12-24 14:51:00) [7]Cпасибо Чайник, твой план сработал. Но у меня возниклая новая проблема. Как включить АнтиАляйсинг (не знаю как правильно пишется). Может кто знает?
Чайник (2004-12-24 03:45:00) [8]Правдв результат еще будет щависеть от основного внутреннего формата, задаваемого в glTexImage2D - должен быть GL_RGB или GL_RGBA
Чайник (2004-12-24 03:43:00) [9]Смотри справку по glTexEnvf:
procedure glTexEnvf (target, pname: GLenum; param: GLfloat)
Parameters :
target - Specifies a texture environment. Must be GL_TEXTURE_ENV.
pname - Specifies the symbolic name of a single-valued texture environment parameter. Must be GL_TEXTURE_ENV_MODE.
param - Specifies a single symbolic constant, one of GL_MODULATE, GL_DECAL, or GL_BLEND.
Если указать param=GL_MODULATE, то цвета текстуры будут смешиваться с цветом поверхности посте расчета освещенности.