Простой, самый простой SSR в GLSL

Я экспериментирую, пытаясь реализовать "как можно более простой " SSR в GLSL. Есть ли шанс, что кто-нибудь может помочь мне установить чрезвычайно простой код ssr?

Мне не нужны (на данный момент) какие-либо расчеты шероховатости / металличности, никакого Френеля, никакого эффекта затухания и затухания, ничего необычного - я просто хочу самую простую установку, которую я могу понять, изучить и, возможно, позже улучшить.

У меня есть 4 исходные текстуры: Цвет, Положение, Нормальный, и копия изображения предыдущего финального кадра (Отражение)

attribute.position - это текстура позиции (FLOAT16F) - WorldSpace

attribute.normal - это нормальная текстура (FLOAT16F) - WorldSpace

sys_CameraPosition - это позиция глаза в WorldSpace.

должно быть направление отражения вWorldSpace

текстура (SOURCE_2, projectedCoord.xy)- это текстура позиции в текущей конечной точкекаталога- отражения

vec3 rd = normalize(reflect(attributes.position - sys_CameraPosition, attributes.normal));

vec2 uvs;
vec4 projectedCoord;

for (int i = 0; i < 10; i++)
{
    // Calculate screen space position from ray's current world position:
    projectedCoord = sys_ProjectionMatrix * sys_ViewMatrix * vec4(attributes.position + rd, 1.0);
    projectedCoord.xy /= projectedCoord.w;
    projectedCoord.xy = projectedCoord.xy * 0.5 + 0.5;

    // this bit is tripping me up
    if (distance(texture(SOURCE_2, projectedCoord.xy).xyz, (attributes.position + rd)) > 0.1)
        rd += rd;
    else
        uvs = projectedCoord.xy;
        break;
}

out_color += (texture(SOURCE_REFL, uvs).rgb);

Возможно ли это, используя координаты worldSpace? Когда я умножаю выходные данные первого прохода на viewMatrix так же, как на modelMatrix, мои легкие вычисления растут, потому что они также находятся в worldSpace...

К сожалению, в интернете нет базовых учебных пособий по SSR, которые объясняют только бит SSR и ничего больше, поэтому я подумал, что я попробую здесь, я действительно не могу разобраться в этом...

0 ответов

Другие вопросы по тегам