Anonim 680 Опубликовано 20 Декабря 2014 (изменено) @PlayMod, Если ты о ребристости, то тебе нужно увеличить кол-во семплов. #define SSH_NUM_SAMPLES float(130) // Quality. Higher is better. 32 is accebtable, 128 high quality (254 = max) Изменено 20 Декабря 2014 пользователем Anonim 2 1 Поделиться этим сообщением Ссылка на сообщение
Anonim 680 Опубликовано 20 Декабря 2014 Нужно изменить кол-во семплов, чтобы не ребрились. Есесвенно на большое количество. Поделиться этим сообщением Ссылка на сообщение
Anonim 680 Опубликовано 22 Декабря 2014 (изменено) #ifndef _SUN_SHAFTS#define _SUN_SHAFTS#include "common.h"uniform float4 common_params2;uniform sampler2D s_jitter_0;uniform sampler2D s_jitter_1;uniform sampler2D s_jitter_5;float normalize_depth(float depth) {return (saturate(depth/SS_FARPLANE));}float3 blend_soft_light(float3 a, float3 {float3 c = 2 * a * b + a * a * (1 - 2 * ;float3 d = sqrt(a) * (2 * b - 1) + 2 * a * (1 - ;return ( b < 0.5 )? c : d;}float3 calc_sunshafts(float2 tc, float3 init_color) {#ifdef USE_SUN_SHAFTSfloat3 out_color = float3(0,0,0);float sun_dist = SS_FARPLANE / (sqrt(1 - L_sun_dir_w.y * L_sun_dir_w.y));float4 sun_pos_projected = mul( m_VP, float4( sun_dist * L_sun_dir_w + eye_position, 1 ) );float4 sun_pos_screen = convert_to_screen_space(sun_pos_projected)/sun_pos_projected.w;float2 sun_vec_screen = sun_pos_screen.xy - tc;float angle_cos = dot(-eye_direction, normalize(L_sun_dir_w));float ray_fade = saturate(saturate(angle_cos)*(1 - saturate(sun_vec_screen))*saturate(length(sun_vec_screen)*1000));float2 init_tc = tc;float3 pos = tex2D(s_position, tc);float dep = pos.z;float mask = (saturate(angle_cos*0.1 + 0.9) + normalize_depth(pos.z) - 0.99999) * SS_DENSITY;sun_vec_screen *= angle_cos * SS_DENSITY / SS_SAMPLES;float depth_accum = 0;for (float i = 0; i < SS_SAMPLES; i++) {tc += sun_vec_screen;out_color += float3(0.25, 0.25, 0.25);depth_accum += saturate(1 - tex2D(s_position, tc).z*1000);}out_color *= saturate(depth_accum/SS_SAMPLES);#ifdef SS_DUSTfloat dust_size = 8/SS_DUST_SIZE;float3 jit;float2 jtc = init_tc;float2 sun_dir_e = L_sun_dir_e.xy;sun_dir_e /= sin(common_params2.x);sun_dir_e *= common_params2.y;jtc.x += sun_dir_e.x;jtc.y -= sun_dir_e.y;jtc.x = (jtc.x > 1.0)?(jtc.x-1.0):jtc.x;jtc.y = (jtc.y < 0.0)?(1.0-jtc.y):jtc.y;jit.x = tex2D(s_jitter_0, float2(jtc.x, jtc.y + timers.x*0.01*SS_DUST_SPEED)*dust_size).x;jit.y = tex2D(s_jitter_1, float2(jtc.x + timers.x*0.01*SS_DUST_SPEED, jtc.y)*dust_size).y;jit.z = tex2D(s_jitter_5, jtc).x;jit.z = saturate(jit.z + SS_DUST_DENSITY - 1);float3 dust = saturate(float3(jit.x, jit.x, jit.x)*float3(jit.y, jit.y, jit.y)*float3(jit.z, jit.z, jit.z));float len = length(dust);dust *= SS_DUST_INTENSITY;dust = lerp(0, dust, (1 - saturate(dep * 0.2)) * (1 - saturate((0.001 - dep)*10000.0)));dust += float3(1,1,1);#elsefloat3 dust = float3(1,1,1);#endifout_color *= 2.0 * ray_fade / SS_SAMPLES * dust;out_color = init_color + out_color * L_sun_color * (SS_INTENSITY - init_color);out_color = blend_soft_light(out_color, L_sun_color * mask * -0.1 + 0.6) - init_color;return out_color;#elsereturn 0;#endif}#endif /////////////////////////////////////////////////////////////// Саншафты ака GodRays#define USE_SUN_SHAFTS // включить лучи от солнца#define SS_FARPLANE 180 // менять не стоит#define SS_DENSITY 0.7 // плотность семплов или длина лучей#define SS_INTENSITY 0.45 // "заметность" лучей#define SS_DUST // включить пыль в саншафтах#define SS_DUST_SPEED float(0.4) // скорость частиц пыли#define SS_DUST_INTENSITY float(4.0) // яркость пылинок#define SS_DUST_DENSITY float(1.0) // плотность частиц пыли#define SS_DUST_SIZE float(0.7) // размер пылинок// Качество#ifndef SS_QUALITY#define SS_SAMPLES int(0) // кол-во семплов для "откл"#else#if SS_QUALITY==1#define SS_SAMPLES int(50) // кол-во семплов для "низко"#else#if SS_QUALITY==2#define SS_SAMPLES int(60) // кол-во семплов для "средне"#else#if SS_QUALITY==3#define SS_SAMPLES int(70) // кол-во семплов для "высоко"#endif#endif#endif#endif Делайте копи-паст в свои файлы с заменой. Изменено 22 Декабря 2014 пользователем Anonim 3 Поделиться этим сообщением Ссылка на сообщение
Anonim 680 Опубликовано 22 Декабря 2014 (изменено) Ещё кое-что о ребристости. #ifdef SS_BLUR float blur_delta = 2 * (.5f/1024.f);out_color += (tex2Dlod(s_image, float4(tc + blur_delta,0,0)) + tex2Dlod(s_image, float4(tc - blur_delta,0,0))) * (1.f/2.f) * SS_BLEND_FACTOR;#elseout_color += float3(0.3, 0.3, 0.3);#endif Изменено 22 Декабря 2014 пользователем Anonim 1 1 Поделиться этим сообщением Ссылка на сообщение
Anonim 680 Опубликовано 23 Декабря 2014 Киньте мануал по шейдерам в сталкере. Ты серьёзно? 1 Поделиться этим сообщением Ссылка на сообщение
Anonim 680 Опубликовано 25 Декабря 2014 (изменено) Зачем его комбинировать с блумом? Вот пример на ТЧ. #ifdef USE_LENS_DIRT float3 lens_dirt = (pp_sunshafts * tex2D(sampler_dirt, center)); img += (lens_dirt * 2); #endif Эффект сам по себе простой - делаешь текстуру, в любом канале делаешь "пятна" по принципу "чем белее, тем лучше видно". Вот и весь ленс дёрт. Изменено 25 Декабря 2014 пользователем Anonim Поделиться этим сообщением Ссылка на сообщение
Anonim 680 Опубликовано 25 Декабря 2014 (изменено) оно не только от солнечных лучшей будет проявляться? С чего бы это? Если указаны лучи, значит будет в лучах, но так как лучи падают от солнца... Дальше можно додумать. Возьми мой вариант и замени pp_sunshafts на другой световой эффект который у тебя есть. Вот и всё. sampler_dirt - имя семплера Изменено 25 Декабря 2014 пользователем Anonim Поделиться этим сообщением Ссылка на сообщение
Anonim 680 Опубликовано 25 Декабря 2014 Я реализовываю это на движке ЗП и правлю его сам, потому имя семплера у меня s_lens_dirt Я не навязывал тебе имя своего . Я просто пояснил, чтобы тебе было легче. Поделиться этим сообщением Ссылка на сообщение
Anonim 680 Опубликовано 25 Декабря 2014 (изменено) Блюм же как бы идет от них, соответственно это тоже эффект освещения, потому наверное имеет смысл на него и навешивать Lens Dirt Да, смысл есть, но если переборщить с блюмом эффект будет появлятся от пересвеченной стены. Так что тут нужно аккуратно. Изменено 25 Декабря 2014 пользователем Anonim 1 Поделиться этим сообщением Ссылка на сообщение
Anonim 680 Опубликовано 25 Декабря 2014 (изменено) @PlayMod, Правь движок. Ну или жди тройку ОГСЕ. Изменено 25 Декабря 2014 пользователем Anonim Поделиться этим сообщением Ссылка на сообщение
Anonim 680 Опубликовано 25 Декабря 2014 (изменено) @tatarinrafa, Движок нужно править, а именно добавить новый вид семплера для капель на стекле. Но в Рентген расширениях есть правка по добавлению своих семплеров в combine_2_xxx. Изменено 25 Декабря 2014 пользователем Anonim Поделиться этим сообщением Ссылка на сообщение
Anonim 680 Опубликовано 26 Декабря 2014 (изменено) out_color += float3(0.3, 0.3, 0.3); Эту строку, замени на #ifdef SS_BLURfloat blur_delta = 2 * (.5f/1024.f); out_color += (tex2Dlod(s_image, float4(tc + blur_delta,0,0)) + tex2Dlod(s_image, float4(tc - blur_delta,0,0))) * (1.f/2.f) * SS_BLEND_FACTOR; #else out_color += float3(0.3, 0.3, 0.3); #endif И добавь соответствующие дефайны, можешь в начало фала, а можешь в конфиг файл #define SS_BLUR #define SS_BLEND_FACTOR 0.9 Изменено 26 Декабря 2014 пользователем Anonim 1 Поделиться этим сообщением Ссылка на сообщение
Anonim 680 Опубликовано 26 Декабря 2014 (изменено) Блюр не для этих саншафтов, а для этих: http://www.amk-team.ru/forum/index.php?showtopic=12673&p=902084 Адаптация шейдеров RMA+Shadows Addon к шейдерам KD87 (вода,частицы,лучи,волны). Камблю Фантомная зона https://yadi.sk/d/QziIA9LZdh3yj Изменено 29 Декабря 2014 пользователем Dennis_Chikin Поделиться этим сообщением Ссылка на сообщение
Anonim 680 Опубликовано 8 Января 2015 (изменено) @DDamian724, Perhaps you meant lens dirt? Изменено 8 Января 2015 пользователем Anonim Поделиться этим сообщением Ссылка на сообщение
Anonim 680 Опубликовано 8 Января 2015 (изменено) Этот эффект уже давно есть в доступе. Версия 1.2. Изменено 8 Января 2015 пользователем Anonim 1 Поделиться этим сообщением Ссылка на сообщение
Anonim 680 Опубликовано 8 Января 2015 @DDamian724, coming soon. Поделиться этим сообщением Ссылка на сообщение
Anonim 680 Опубликовано 8 Января 2015 (изменено) Шейдерпак Ссылка/Link: https://yadi.sk/d/xEogbsFGdrJH7 Консолки: r2_sun_shafts on/off r2_soft_particles on/off r2_soft_water on/off Файл: shaders\r2\_shaders_config.h Текстуры: textures\eoc3\lens.dds textures\water\water_foam.dds Чьи работы были использованы: KD87 Sky4CE cj yaho Codemaker Shadows А так же Рентген Расширения. Макрон сана забыл macron Изменено 8 Января 2015 пользователем Anonim 5 Поделиться этим сообщением Ссылка на сообщение
Anonim 680 Опубликовано 8 Января 2015 (изменено) @DDamian724, To your notice. Shaders version is not yet final . Изменено 8 Января 2015 пользователем Anonim Поделиться этим сообщением Ссылка на сообщение
Anonim 680 Опубликовано 9 Января 2015 (изменено) 1) accum_base.ps ничем не отличается от оригинала. Аналогично не отличаются _все_ шейдеры accum_***, а также файлы bloom_luminance_2, bloom_filter, lmape.ps. 2) bloom_luminance_3.ps по факту ничем не отличается от оригинала. Да, в версии из пака удалена строчка, однако, эта строчка написана с опечаткой и по факту в игре и так не работает. Пожитки Shadows'а, точнее Shadows Addon RMA. Я их даже не трогал. 3) combine_2.ps не используется в сталкире, правка этого шейдера бессмысленна на 100%. Тоже его рук дело . 4) назначение cross_color.ps для меня загадка. В движке он не вызывается, из шейдеров тоже. Всё работает, прицел теперь полупрозрачный. 5) идиотская попытка реализовать детальный бамп. Какой он детальный, если данные берутся из обычного бампа, да еще и полностью убито наложение детальной текстуры? Какой ещё детальныйй бамп? Кроме глосса я ничего не менял. И то, брал из шейдерпака Макрона файлик. А детальный бамп где-то валялся, для 7 патча. - Удалены лишние файлы по совету KD87 - Некоторые оптимизации - Добавил билдовскую погоду - Немного исправлений Ссылка\Link: https://yadi.sk/d/T-olrGpjdrkgQ Изменено 9 Января 2015 пользователем Anonim 4 Поделиться этим сообщением Ссылка на сообщение
Anonim 680 Опубликовано 9 Января 2015 (изменено) Я про sload.h, конечно. Там ужас. Кроме глосса я ничего не менял. И то, брал из шейдерпака Макрона файлик. Надо с ним поработать. Интересует кое-что: Есть у меня шейдеры за твоим авторством, для 7 патча. Там есть POM, но что-то он не собирается работать. Может подскажешь что-нибудь? Там ужас ещё с оригинала вроде Ну дак собирал-то ты Собирал, отмазыватся не буду . Просто сильно не вникал в это, упор делал на лучики и боролся с грязью линзы. Кстати, спасибо за совет по добавлению новых семплеров, а то я бы и дальше тупил . Изменено 9 Января 2015 пользователем Anonim Поделиться этим сообщением Ссылка на сообщение