COMMAND ENCODER (Barkar Ivan)
163 subscribers
168 photos
72 videos
17 files
108 links
Cool shading, nice ball moment
Download Telegram
итого на сегодня вот такой рендер пайплайн пока
конечно, я забыл про преобразование

m - это VP матрица света


private static Matrix4x4 ConvertMatrix(Matrix4x4 m)
{
if (SystemInfo.usesReversedZBuffer)
{
m.m20 = -m.m20;
m.m21 = -m.m21;
m.m22 = -m.m22;
m.m23 = -m.m23;
}
m.m00 = 0.5f * (m.m00 + m.m30);
m.m01 = 0.5f * (m.m01 + m.m31);
m.m02 = 0.5f * (m.m02 + m.m32);
m.m03 = 0.5f * (m.m03 + m.m33);
m.m10 = 0.5f * (m.m10 + m.m30);
m.m11 = 0.5f * (m.m11 + m.m31);
m.m12 = 0.5f * (m.m12 + m.m32);
m.m13 = 0.5f * (m.m13 + m.m33);
m.m20 = 0.5f * (m.m20 + m.m30);
m.m21 = 0.5f * (m.m21 + m.m31);
m.m22 = 0.5f * (m.m22 + m.m32);
m.m23 = 0.5f * (m.m23 + m.m33);
return m;
}


для каскадов добаавляется оффсет и скейл, но это потом
private static Matrix4x4 ApplyBiasMatrix(Matrix4x4 proj, Matrix4x4 view)
{
if (SystemInfo.usesReversedZBuffer)
{
proj.m20 = -proj.m20;
proj.m21 = -proj.m21;
proj.m22 = -proj.m22;
proj.m23 = -proj.m23;
}

Matrix4x4 worldToShadow = proj * view;

var textureScaleAndBias = Matrix4x4.identity;
textureScaleAndBias.m00 = 0.5f;
textureScaleAndBias.m11 = 0.5f;
textureScaleAndBias.m22 = 0.5f;
textureScaleAndBias.m03 = 0.5f;
textureScaleAndBias.m23 = 0.5f;
textureScaleAndBias.m13 = 0.5f;

return textureScaleAndBias * worldToShadow;
}
да в попу эти тени и Юнити туда же
Media is too big
VIEW IN TELEGRAM
ладно, пока так


half4 MainLightShadowsData; //light strength, shadowBias, normalBias

half4 _MainLightShadowDistanceFade; //max distance, fadeWidth, 0, 0,

half fade = 1.0 - saturate ((distance (IN.positionWS, _WorldSpaceCameraPos.xyz) - _MainLightShadowDistanceFade.x) / _MainLightShadowDistanceFade.y );
shadow = LerpWhiteTo(shadow, MainLightShadowsData.x * fade);
🔥1
Media is too big
VIEW IN TELEGRAM
что Юнити предлагает в
ShadowSamplingTent.hlsl
переехал на Юнити6, кажется, стало как-то красивее
был не прав в прошлый раз ( металлик всегда = 1)
Остался очень впечатлен окружением в Village

видик:
https://www.youtube.com/watch?v=Uk6bgWD5Cn0