karpik.realtime
818 subscribers
60 photos
28 videos
6 files
250 links
CG трюки на грани вменяемости.
хостед бай @karpik
Download Telegram
Channel created
Channel photo updated
Сюда я буду скидывать статьи и лайфхаки о рендеринге, которые слишком задротские для окружающего мира, а так же делиться своими промежуточными успехами. Велкам!
Нормальных слайдов не нашлось, есть только статьи - абстракты. Но просто посмотрите на это, выглядит чисто как работа мэттпейнтера. Когда плойка композит лучше тебя :)

https://dl.acm.org/doi/pdf/10.1145/3388767.3407358
https://dl.acm.org/doi/pdf/10.1145/3388767.3407359
https://dl.acm.org/doi/pdf/10.1145/3388767.3407349
https://dl.acm.org/doi/pdf/10.1145/3388767.3407393
https://ciechanow.ski/lights-and-shadows/ На первый взгляд ничего особенного, но в этой странице есть нюанс - автор написал все демки на ЧИСТОМ js/webgl, соответственно все шейдера доступны в коде. Вот эти вот эреа лайты, которые уже выглядят отлично, но ещё не заставляют видеокарту взлетать на околоземную орбиту!

#shader #lighting
https://www.microsoft.com/en-us/research/wp-content/uploads/1996/03/arealights.pdf так же в исходнике странице есть ссылка на эту чудесную пдфку, которая мне ровесница и которую, кажется, нужно понять, чтобы вытворять подобное.
karpik.realtime pinned «Сюда я буду скидывать статьи и лайфхаки о рендеринге, которые слишком задротские для окружающего мира, а так же делиться своими промежуточными успехами. Велкам!»
Милые облака через обычное запекание вертексов + нойз шейдер:
UPD: это не просто разработчик, а разработчик Sky: Children of the Light, которая прямой наследник Journey!
http://astroukoff.blogspot.com/2019/09/clouds-shader-breakdown.html
https://twitter.com/AlexStrook/status/1306943306505613312
Разработчик из Нвидии рассказывает как сократить вычисление god rays в 16 раз и замазать получившийся гигантский бэндинг с помощью blue noise

UPD: у автора дикое количество статей в блоге и, помимо этого, самые внятные мысли о soft skills, что я встречал на просторах интернета https://twitter.com/Atrix256/status/1259706514828177408
В этом никому не советую разбираться, ни одного коммента и treejs в котором всё свалено в кучу; но давайте запомним что риалтаймовые преломления без явного шума это вполне себе реальность, привет нотчу :)
https://twitter.com/Domenico_brz/status/1287102501318283264
Зато есть милая и несложная статья, которую можно повторить в таче, только eyeVector нужно достать так:
vec3 cam_pos = uTDMats[0].camInverse[3].xyz;
vec3 eyeVector = normalize(iVert.worldSpacePos.xyz - cam_pos);
(всё это во фрагмент шейдере GLSL материала)

https://tympanus.net/codrops/2019/10/29/real-time-multiside-refraction-in-three-steps/
Tyler Hobbs сделал кайфовую имитацию акварели на Processing, можно реализовать на glsl используя sdf для создания шейпов https://tylerxhobbs.com/essays/2020/how-to-hack-a-painting
Вообще у него несколько крутых лекций на ютубе, прям тру медиа артист
суматошное дополнение к посту про преломления - там нужны UV - координаты экрана рендера (чтобы сэмплить задний фон), их можно достать вот так
vec4 camSpace = uTDMats[iVert.cameraIndex].cam * vec4(iVert.worldSpacePos, 1.);
vec4 clipSpace = uTDMats[iVert.cameraIndex].proj * camSpace;
clipSpace.xyz = clipSpace.xyz/clipSpace.w;
vec4 screenSpace = clipSpace*0.5 + 0.5;
vec2
uvNew = screenSpace.xy;