COMMAND ENCODER (Barkar Ivan)
163 subscribers
168 photos
72 videos
17 files
108 links
Cool shading, nice ball moment
Download Telegram
This media is not supported in your browser
VIEW IN TELEGRAM
ну раз сегодня день компьютов, вот вам мой
на счет визуализации пересечений света с фрустумами тайлов я не уверен (квадратные :С)
да я вообще не уверен пока если честно, может вы чего увидите противоестественного )
они делают рим оффсетом глубины
 

//world normal
float3 wNor = normalize(i.wNor);
//view normal
float3 vNor = mul(UNITY_MATRIX_V, float4(wNor, 0.0)).xyz;
//screen pos
float2 scrPos = i.scrPos.xy / i.scrPos.w;
scrPos += vNor.xy * _Width * 0.001;//uv offset
float depthTex = SAMPLE_DEPTH_TEXTURE(_CameraDepthTexture, scrPos);
float depth = LinearEyeDepth(depthTex);//view space depth
float rim = saturate((depth - i.scrPos.w) / max(0.001, _Spread * 0.01));//稍作缩放, 可以不要
rim = smoothstep(min(_MinRange, 0.99), _MaxRange, rim);
однажды тоже город сделаю
как-то я потратил лето на воссоздание в гудини генерации зданий через словарь фасадов, прям как в демке по Матрице. Сегодня с ГПТ, думаю, можно быстрее. Штука правда специфическая.

(да до сих пор в Ф4 играю и еще не все видел)
заявка на победу в tiled deferred shading

не без косяков пока и нормали глючат, но получилос!
2🔥1
обрезанная аттенуация это вот отсутствующий знак минус прии расчете дальней плоскости

float4 c4 = float4(0.0f, 0.0f, -1.0f, 0.0f);

на краю - это из-за render scale, где-то нужно это учесть
испытывает меня...
В прографоне показали. С 18 минуты. Они будто градиентом модулируют френель. Прикольно.
This media is not supported in your browser
VIEW IN TELEGRAM
Energie-conversion wrapped diffuse

saturate((dot(normalDirection, lightDirection) + _WrappedDiffuseValue) / pow(1 + _WrappedDiffuseValue, 2))

Не очень понимаю этот «конверсион» в данном случае. Свет распался на диффуз и некоторый рефлекс штоле. Халф-ламберт тоже «конверсион», дифуз и спекуляр?