Форум: "Игры";
Текущий архив: 2009.11.22;
Скачать: [xml.tar.bz2];
ВнизКак засветить часть экрана. Найти похожие ветки
← →
@!!ex © (2007-07-04 00:36) [0]делаю взрыв.
Нужно в некотором радиусе всю геометрию осветлить...
Как это можно сделать?
Есть быстрый алгоритм... Но я его не знаю. :\
← →
Jkot © (2007-07-04 06:27) [1]бальшой белый круг с альфой от центра к краям накладываем сверху вот и всё.
← →
RzCoDer © (2007-07-04 10:13) [2]шейдеры рассматривал?
← →
@!!ex © (2007-07-04 10:14) [3]> [1] Jkot © (04.07.07 06:27)
Он получается не засвеченный, а белесый. :((
> [2] RzCoDer © (04.07.07 10:13)
Как это реализовать шейдерами?
← →
antonn © (2007-07-04 11:26) [4]для начала бы сказал, чем хоть графику выводишь...
← →
@!!ex © (2007-07-04 11:33) [5]> [4] antonn © (04.07.07 11:26)
OGL, но это без разницы.
Мне принцип нужен, а не готовый код.
Хотя против готового кода тоже ничего не имею. :)
← →
RzCoDer © (2007-07-04 12:03) [6]
> @!!ex ©
скачай с сайта ati прогу rendermonkey - визуальный редактор шейдеров, если не ошибаюсь там бол похожий пример
← →
@!!ex © (2007-07-04 12:15) [7]Манка у меня есть, а вот примера не вижу. :\
← →
antonn © (2007-07-04 13:23) [8]
> OGL, но это без разницы.
если канвас - разница есть%)
← →
Jkot © (2007-07-05 06:09) [9]@!!ex Если ты мне разжуёш что значит засвечанный то могу на GLSL такое сделать....
← →
Sapersky (2007-07-05 09:48) [10]http://developer.nvidia.com/object/Volumetric_Explosions.html
Думаю, шейдерные методы работают примерно так же. Ну то есть грубое отсечение того, что не попадает во "взрывной объём" можно делать на CPU (в мировых координатах), а расчёт текс. координат - в шейдере.
Можно попробовать использовать объёмную текстуру вместо обычной (и расчёт текс. координат по мировым, а не экранным координатам), хотя не уверен, что это даст какую-то выгоду.
← →
@!!ex © (2007-07-05 10:48) [11]> [9] Jkot © (05.07.07 06:09)
Пример:
Поверхность цвета 0.3 0.5 0.2
Часть из нее подсвечена. Тоесть цвет там скажем 0.5 0.7 0.4
← →
@!!ex © (2007-07-05 10:50) [12]> [10] Sapersky (05.07.07 09:48)
Не. Я не это имел ввиду.
Хотя материал тоже интересный. Спасибо.
← →
Sapersky (2007-07-05 13:40) [13]Поверхность цвета 0.3 0.5 0.2
Часть из нее подсвечена. Тоесть цвет там скажем 0.5 0.7 0.4
Может быть, [1], но установить аддитивный блендинг (Dst = Src1 + Src2), а не альфа (Dst = Src1 * Alpha + Src2 * (1 - Alpha))?
← →
@!!ex © (2007-07-05 14:16) [14]> [13] Sapersky (05.07.07 13:40)
Ок! Я думал над этим, но не догонял как сделать.
← →
@!!ex © (2007-07-06 17:56) [15]делаю так:
glBlendFunc(GL_SRC_COLOR,GL_DST_COLOR)
получается фигня.
← →
Sapersky (2007-07-06 18:39) [16]Формула блендинга:
Dst = Src * K1 + Dst * K2
glBlendFunc задаёт коэффициенты K1 и K2, поэтому для аддитивного нужно использовать GL_ONE, GL_ONE.
← →
@!!ex © (2007-07-06 19:57) [17]Тема. Что что надо. Спасибо!
Страницы: 1 вся ветка
Форум: "Игры";
Текущий архив: 2009.11.22;
Скачать: [xml.tar.bz2];
Память: 0.48 MB
Время: 0.007 c