![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Glscene & Gl_Ext_Separate_Specular_color
Dgt © (2005-08-15 21:00:00)Сдрасте, Мастера..
Хочу чтоб в Глсцене рисовались блики на текстурированных объектах..
Двух проходной алгоритм из Краснова для игр тормозной, так что
я использую расширение Gl_EXT_Separate_Specular_color/
В модуле Glscene.pas я изменяю процедуру TGLSceneBuffer.SetupRenderingContext:
....
begin
GlLightModelI(Gl_Light_Model_Color_Control_Ext,
Gl_Separate_Specular_color_Ext);
glLightModelfv(GL_LIGHT_MODEL_AMBIENT, FAmbientColor.AsAddress);
// if roTwoSideLighting in FContextOptions then
// glLightModeli(GL_LIGHT_MODEL_TWO_SIDE, GL_TRUE)
// else glLightModeli(GL_LIGHT_MODEL_TWO_SIDE, GL_FALSE);
.....
Но блики все-равно не появляются...
P.S Видеокарта поддерж. данное расширение.
A22 (2005-09-13 17:51:00) [1]на чистом апи. а ты где используешь?
Dgt (2005-09-13 17:19:00) [2]
> вообще, я не силен в OpenGL, но
> glLightModelfv(GL_LIGHT_MODEL_AMBIENT, FAmbientColor.AsAddress);
> причем здесь Ambient? Ambient - фоновое освещение, тебя
> интересует Specular, нет флага на него
Все нормально... Самое интересное , что если использовать
раширение в примере Краснова (То бишь на чистом API) -
там все работает..
A22 (2005-09-12 18:42:00) [3]пример использования этого расширения был в каком-то из номеров погибшего "Программиста". возможно, есть еще в и-нете архивы?
вообще, я не силен в OpenGL, но
glLightModelfv(GL_LIGHT_MODEL_AMBIENT, FAmbientColor.AsAddress);
причем здесь Ambient? Ambient - фоновое освещение, тебя интересует Specular, нет флага на него?
Dgt (2005-09-12 18:18:00) [4]Может Glsillouette поможит : строишь силует , масштабируешь ,
натягиваешь тестуру.
Conferno (2005-09-11 19:14:00) [5]
> Glblur тебе в помощь...
Ну это-то да, только этот эффект не совсем такой, какой я хотел бы видеть... эмм... ну как было в kkrieger, как опять же в SWAT4, Nexuiz, The Suffering и даже не знаю еще где... В СВАТ4 эффект свечения достигается с помощью шейдеров... А как на глсцен?...
Dgt (2005-09-11 14:47:00) [6]Glblur тебе в помощь...
Conferno (2005-09-10 02:08:00) [7]А можно ли реализовать данный эффект(glow) в GLScene?
Zer0 (2005-09-06 16:50:00) [8]Блики и свечение (glow) это две разные весчи.
Coriolis (2005-09-05 22:12:00) [9]Дак как юзать в GLScene Gl_EXT_Separate_Specular_color ?!!
Никто так и не ответил... :(
Conferno (2005-08-24 01:24:00) [10]Ээ, я про эффект свечения - тот или нет, что ты хотел?
Это демосцена TheVeryPopularDemo называется
Dgt (2005-08-23 20:39:00) [11]Ну там картинка как в максе отрендеринанная , круто.
Conferno (2005-08-23 01:41:00) [12]Я в Hitman не играл, не знаю... :(
А вот в Prince of Persia(1,2) или SWAT4 или Area51 - вот там вот были и блики и свечение. ФонгШэйдер у меня не идет, скорее всего нужна поддержка 2й версии шейдеров. Смотрел у друга. Не больно то и эффектно, честно говоря... Но блики заметно появляются(как в MaterialEditor, на каком-нить слоте с выской яркостью и бликами(в 3dsMax)).
Так это все же не то, что я имел ввиду выше(см. ссылку)
Dgt (2005-08-22 19:52:00) [13]
> А ты глубоко копаешь... Вообще эффекты свечения и бликов
> - мои любимые... Если будет такая реализация в глсцене,
> подкинеш кодик, окей? ;)
Вообще в Glscene я знаю одну нормальную реализацию бликов\освещ.
- PhongShader. Правда он не всеми видеокартами поддерживается
(и моей :( ), да и FPS упадет.
Интересно , как в Hitman Contracts сделали такие эффектные
блики от выстрелов.
ConferNo (2005-08-22 02:32:00) [14]Попробуйте посмотреть здесь:
http://invent-design.narod.ru/Trash/Bliks.JPG
ConferNo (2005-08-22 02:17:00) [15]
> обычно вместо бликов для блестящих поврехностей (типа навазелиненых
> авто) используют enviropment texture mapping
По-моему, это не то, что хочет Dgt.
Он хочет бликов, а не переливания текстуры. Вот, если ты играл в kkrieger(сделана демосценерами в 96к), там этих эффектов было навалом... Щас попробую закачать скрин...
Zer0 (2005-08-20 15:23:00) [16]обычно вместо бликов для блестящих поврехностей (типа навазелиненых авто) используют enviropment texture mapping (а таких примеов в инете навалом: http://www.sulaco.co.za/opengl2.htm)
особенно рекомендую к просмотру http://www.sulaco.co.za/opengl5.htm(Specular SpaceShip)
Conferno (2005-08-19 02:17:00) [17]
> Dgt (15.08.05 21:00)
> Сдрасте, Мастера..
> Хочу чтоб в Глсцене рисовались блики на текстурированных
> объектах..
А ты глубоко копаешь... Вообще эффекты свечения и бликов - мои любимые... Если будет такая реализация в глсцене, подкинеш кодик, окей? ;)
Zer0 (2005-08-17 20:09:00) [18]как вариант - рисовать поверх еще один полигон: смешение SRC_ONE + DEST_ONE
Dgt (2005-08-17 14:28:00) [19]Хм.. на Riva TNT ?
Zer0 (2005-08-16 22:27:00) [20]можно пойюзать пиксель-шейдеры.