Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Игры";
Текущий архив: 2006.03.19;
Скачать: [xml.tar.bz2];

Вниз

Glscene & Gl_Ext_Separate_Specular_color   Найти похожие ветки 

 
Dgt   (2005-08-15 21:00) [0]

Сдрасте, Мастера..
Хочу чтоб в Глсцене рисовались блики на текстурированных объектах..
Двух проходной алгоритм из Краснова для игр тормозной, так что
я использую расширение 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 Видеокарта поддерж. данное расширение.


 
XProger ©   (2005-08-16 03:47) [1]

Рисуем текстуру с бликом.
Рисуем объект с мультитексом (основаня, блин)
Координаты текстуры блика генерируем сферически...


 
Dgt   (2005-08-16 21:13) [2]

Мне не через мультитекстурирование блики нужны , а через
Gl_EXT_Separate_Specular_color.


 
Zer0 ©   (2005-08-16 22:27) [3]

можно пойюзать пиксель-шейдеры.


 
Dgt   (2005-08-17 14:28) [4]

Хм.. на Riva TNT ?


 
Zer0 ©   (2005-08-17 20:09) [5]

как вариант - рисовать поверх еще один полигон: смешение SRC_ONE + DEST_ONE


 
Conferno   (2005-08-19 02:17) [6]


> Dgt   (15.08.05 21:00)  
> Сдрасте, Мастера..
> Хочу чтоб в Глсцене рисовались блики на текстурированных
> объектах..


А ты глубоко копаешь... Вообще эффекты свечения и бликов - мои любимые... Если будет такая реализация в глсцене, подкинеш кодик, окей? ;)


 
Zer0 ©   (2005-08-20 15:23) [7]

обычно вместо бликов для блестящих поврехностей (типа навазелиненых авто) используют enviropment texture mapping (а таких примеов в инете навалом: http://www.sulaco.co.za/opengl2.htm )
особенно рекомендую к просмотру  http://www.sulaco.co.za/opengl5.htm (Specular SpaceShip)


 
ConferNo   (2005-08-22 02:17) [8]


> обычно вместо бликов для блестящих поврехностей (типа навазелиненых
> авто) используют enviropment texture mapping

По-моему, это не то, что хочет Dgt.
Он хочет бликов, а не переливания текстуры. Вот, если ты играл в kkrieger(сделана демосценерами в 96к), там этих эффектов было навалом... Щас попробую закачать скрин...


 
ConferNo   (2005-08-22 02:32) [9]

Попробуйте посмотреть здесь:
http://invent-design.narod.ru/Trash/Bliks.JPG


 
Dgt   (2005-08-22 19:52) [10]


> А ты глубоко копаешь... Вообще эффекты свечения и бликов
> - мои любимые... Если будет такая реализация в глсцене,
> подкинеш кодик, окей? ;)

Вообще в Glscene я знаю одну нормальную реализацию бликов\освещ.
- PhongShader. Правда он не всеми видеокартами поддерживается
(и моей :( ), да и FPS упадет.
Интересно , как  в Hitman Contracts сделали такие эффектные
блики от выстрелов.


 
Conferno   (2005-08-23 01:41) [11]

Я в Hitman не играл, не знаю... :(
А вот в Prince of Persia(1,2) или SWAT4 или Area51 - вот там вот были и блики и свечение. ФонгШэйдер у меня не идет, скорее всего нужна поддержка 2й версии шейдеров. Смотрел у друга. Не больно то и эффектно, честно говоря... Но блики заметно появляются(как в MaterialEditor, на каком-нить слоте с выской яркостью и бликами(в 3dsMax)).
Так это все же не то, что я имел ввиду выше(см. ссылку)


 
Dgt   (2005-08-23 20:39) [12]

Ну там картинка как в максе отрендеринанная , круто.


 
Conferno   (2005-08-24 01:24) [13]

Ээ, я про эффект свечения - тот или нет, что ты хотел?
Это демосцена TheVeryPopularDemo называется


 
Coriolis   (2005-09-05 22:12) [14]

Дак как юзать в GLScene Gl_EXT_Separate_Specular_color ?!!
Никто так и не ответил... :(


 
Zer0 ©   (2005-09-06 16:50) [15]

Блики и свечение (glow) это две разные весчи.


 
Conferno   (2005-09-10 02:08) [16]

А можно ли реализовать данный эффект(glow) в GLScene?


 
Dgt   (2005-09-11 14:47) [17]

Glblur тебе в помощь...


 
Conferno   (2005-09-11 19:14) [18]


> Glblur тебе в помощь...

Ну это-то да, только этот эффект не совсем такой, какой я хотел бы видеть... эмм... ну как было в kkrieger, как опять же в SWAT4, Nexuiz, The Suffering и даже не знаю еще где... В СВАТ4 эффект свечения достигается с помощью шейдеров... А как на глсцен?...


 
Dgt   (2005-09-12 18:18) [19]

Может Glsillouette поможит : строишь силует , масштабируешь ,
натягиваешь тестуру.


 
A22 ©   (2005-09-12 18:42) [20]

пример использования этого расширения был в каком-то из номеров погибшего "Программиста". возможно, есть еще в и-нете архивы?

вообще, я не силен в OpenGL, но
glLightModelfv(GL_LIGHT_MODEL_AMBIENT, FAmbientColor.AsAddress);
причем здесь Ambient? Ambient - фоновое освещение, тебя интересует Specular, нет флага на него?


 
Dgt   (2005-09-13 17:19) [21]


> вообще, я не силен в OpenGL, но
> glLightModelfv(GL_LIGHT_MODEL_AMBIENT, FAmbientColor.AsAddress);
> причем здесь Ambient? Ambient - фоновое освещение, тебя
> интересует Specular, нет флага на него

Все нормально... Самое интересное , что если использовать
раширение в примере Краснова (То бишь на чистом API) -
там все работает..


 
A22 ©   (2005-09-13 17:51) [22]

на чистом апи. а ты где используешь?



Страницы: 1 вся ветка

Форум: "Игры";
Текущий архив: 2006.03.19;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.5 MB
Время: 0.013 c
4-1135861779
FireMan_Alexey
2005-12-29 16:09
2006.03.19
Подскажите как добавить свой пункт в контекстное меню Explorer-a


6-1134163974
Змей
2005-12-10 00:32
2006.03.19
ошибка при закрытии программы


15-1140960701
grisme
2006-02-26 16:31
2006.03.19
Метал - навсегда!


1-1139909937
nastya
2006-02-14 12:38
2006.03.19
ActiveX -EIntfCastError


15-1140848766
rezya
2006-02-25 09:26
2006.03.19
АТ команды для телефона





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский