добавляем дисторт сюда и все равно сосем, потому что...
взглянем на референс (пик2): линии у паттерна на самом деле почти всегда довольно прямые и равномерные, а вот утолщение/усиление яркости происходит оттого, что они будто изгибаются в пространстве и накладываются сами на себя. это логично, потому что волны на воде, которые отбрасывают эти блики, изгибаются блять в пространстве
взглянем на референс (пик2): линии у паттерна на самом деле почти всегда довольно прямые и равномерные, а вот утолщение/усиление яркости происходит оттого, что они будто изгибаются в пространстве и накладываются сами на себя. это логично, потому что волны на воде, которые отбрасывают эти блики, изгибаются блять в пространстве
🐳1
значит, нам нужно исказить линии в 3д пространстве и спроецировать их на плоскость. никакого реймарчинга, я не ебанутый, просто засовываем весь сэтап в луп и каждую итерацию немного искажаем с разной силой, а потом складываем все результаты. вуаля ебать, я сам ахуел, помню
🐳1
This media is not supported in your browser
VIEW IN TELEGRAM
давайте анимировать. пихаем scene time в Z и сразу сосем
если текстура 3-dimensional - на 2д плоскости проецируется ее срез, а так как шум в бледном block-based, мы наблюдаем пульсации и резкие переходы, когда двигаемся по срезу оси Z сквозь эти блоки шума. а еще ячейки становятся inconsistent size, потому что расстояние считается до точек, которые вообще не находятся в этой плоскости
если текстура 3-dimensional - на 2д плоскости проецируется ее срез, а так как шум в бледном block-based, мы наблюдаем пульсации и резкие переходы, когда двигаемся по срезу оси Z сквозь эти блоки шума. а еще ячейки становятся inconsistent size, потому что расстояние считается до точек, которые вообще не находятся в этой плоскости
🐳2
This media is not supported in your browser
VIEW IN TELEGRAM
решение: кастомный voronoi.
нам не обязательно двигать срез проекции, мы можем просто двигать в пространстве точки, из которых получатся этот паттерн. но есть нюанс...
нам не обязательно двигать срез проекции, мы можем просто двигать в пространстве точки, из которых получатся этот паттерн. но есть нюанс...
🐳2
ЭТА ЕБАНИНА ПРОСТО ОГРОМНА
это примерно 2/3 сетапа, вычисление 9 хэш-функций и получение того самого паттерна, который в блендере получается одной нодой, но не имеет самого важного блять инпута.
по факту это обыкновенный voronoi distance to edge, только все Minimum, суммирующие результат хэшей, заменены на SmoothMinimum
я очень долго разбирался, как это сделать и в итоге наткнулся на этот пост
дипсик сделал весь math heavy lifting, а потом я вырезал все лишнее и чуть чуть оптимизировал сетапа клод сожрал суточный лимит за 2 промпта MCP реальная тема чуваки
это примерно 2/3 сетапа, вычисление 9 хэш-функций и получение того самого паттерна, который в блендере получается одной нодой, но не имеет самого важного блять инпута.
по факту это обыкновенный voronoi distance to edge, только все Minimum, суммирующие результат хэшей, заменены на SmoothMinimum
я очень долго разбирался, как это сделать и в итоге наткнулся на этот пост
дипсик сделал весь math heavy lifting, а потом я вырезал все лишнее и чуть чуть оптимизировал сетап
🐳2
This media is not supported in your browser
VIEW IN TELEGRAM
финальный результат получился отменный, не хватает чуть чуть артдирекшена что бы добить до 1к1 с рефом но эта срань чудовищно медленная. оптимизации (типа урезания хэш функций и замены тяжелых нод) принесли импрув на уровне погрешности, так что у меня больше нет желания это мейнтейнить
❤3🐳1
causticlight.0.5.1.OSL.blend
292.5 KB
так что im out, а raw версию этого дерьма я отдаю на растерзание публике (в файле есть все древо нод + скомпилированный OSL код)
🐳2❤1
а удобную версию этой штуки (аппроксимацию, к сожалению) я почти допилил и когда нибудь пофикшу оставшиеся полтора бага и залью сюда тоже
в начало треда
в начало треда
🐳3
навайбкодил вот такую залупу. это самый примитивный рендер менеджер. драг н дропом добавляется бленд, самая правая иконка открывает настройки таска, можно поменять фрейм ренж и путь сохранения рендера. если не включать use custom settings, то таск отрендерится с настройками проекта. кнопка create render command создаст батник start_render рядом с проектом (один на всех если их несколько в одной папке), если нужно передать зип куда то на рендер.
bbatch.exe
12.1 MB
да, 12 мегабайт, не забывайте, я не программист и сделал это на петоне в чатжпт за 14 секунд. антивирус ругается и даже вирустотал детектит. у меня нет ста баксов на цифровую подпись по этому ставлю жопу что там нет майнеров