Перейти к содержанию

Лидеры


Популярный контент

Показан контент с высокой репутацией 23.10.2021 в Комментарии блога

  1. 1 балл
    @AgainstAllAutority ну на деле я не программист, поэтому использую уже готовый шейдер с гитхаба, но уже сам реализовал GTSO по докам активижона и свои некоторые исправления в GTAO насчет эвристики, тут дело не в толщине, а в методе 'отсечения'. в прошлом методе там использовалась линейная функция 'отсечения', после проводилась проверка с предыдущим значением. я вот таким образом реализовал 'отсечение': h.x = (h.x > H.x) ? H.x : lerp(H.x, h.x, step(Heuristic, -dPds.z)); h.y = (h.y > H.y) ? H.y : lerp(H.y, h.y, step(Heuristic, -dPdt.z)); насчет бэнт нормалей, я тут уже с другого источника (не помню какого) взял вот такую реализацию: float Hangle = 0.5f * (h.x + h.y); bentNormal += viewDir * cos(Hangle) - tangent * sin(Hangle); и уже после цикла: bentNormal = normalize(normalize(bentNormal) - viewDir * 0.5f); но если V = N, то смысла от этих бэнт нормалей нет насчет Multibounce - тут использую аппроксимацию за счет коэффициентов кубического полинома, который написан в презентации активижона на стр 78 p.s. я бы покидал парочку скринов, но размер не позволяет, а сжимать и мусорить не очень хочется
  2. 1 балл
    Ну хоть кто-то додумался, что пора бы обновить затенение. Тогда и я поделюсь неким скромным результатом. GTAO (V = N) + Multibounce : Реузльтаты все равно ещё не очень, да и вместо вектора взгляда использую вектор нормали пока-что.