I'm just wondering how it can work with a single buffer. The reason for this is that as we process each pixel, a subset of its neighbouring pixels in the texture have already been updated to new state whereas the others still have previous state. Shouldn't we use two buffers so that each pixel can be updated based only on previous state of all neighbouring pixels?
@TheArtofCodeIsCool6 күн бұрын
The buffer we are reading from was completed the previous frame so all pixels read have already been processed.
@aalperbayram12 күн бұрын
I don't understand why multiplying x with x divided by y works so perfectly. What's the logic behind it? Or is there a formula name for it so I can look up? I currently suck at math btw.
@TheArtofCodeIsCool9 күн бұрын
You are getting the aspect ratio of the viewport by dividing the width by the height of the viewport. Then, to calculate the height, you multiply the width by this ratio.
@huseyinpehlivan607214 күн бұрын
Hi how we calculate shadow
@blueyc4rter15 күн бұрын
Can someone explain the extra stuff when you click the + symbol? i.e. BufferA, sound, common, cubemapA?
@WoWUndad15 күн бұрын
As a threejs dev, watching these webgl chads is like watching my dad get remarried to a hotter woman i get really jealous but deep inside im more than happy for you
@KaranArjun-xf3uy17 күн бұрын
Wow,nice explanation! Can I use this noise for a commercial project?
@jacobtinkle968618 күн бұрын
Great tutorial, great visualisation! Thanks a lot!
@miguelmyers892922 күн бұрын
did he stop making tutorials?!
@phatbuihong401422 күн бұрын
Thank you so much, it's very helpful.
@hightidesed28 күн бұрын
Please come back :(
@xaoaos29 күн бұрын
How to get the depth for comparison to interact mesh objects?
@pixel-eyes29 күн бұрын
21:35 "fuck it. why not add both..." 😂 ¯\_(ツ)_/¯
@mania7927Ай бұрын
@The Art of Code Hi Martijn, Just saw one of your videos . How long actually takes before you could make animated visual like 2:54 imaging you are good with softwares etc ? Thanks
@ackmansteinАй бұрын
This tutorial is great, the way you reason your way through everything so fast amazes me. I learned some stuff! Thanks a bunch!
@ChenHuangАй бұрын
Hi BigWings, I'm dying to know how those folds + abs resulted in the geometry. I know how simple folds work but ... that particular series of combination of folds and abs made no sense to me. Is there anywhere I can consult? float c = cos(3.1415/5.0), s=sqrt(0.75-c*c); vec3 n = vec3(-0.5, -c, s); p = abs(p); p -= 2.*min(0., dot(p, n))*n; p.xy = abs(p.xy); p -= 2.*min(0., dot(p, n))*n; p.xy = abs(p.xy); p -= 2.*min(0., dot(p, n))*n; float d = p.z-1.; the abs in between folds seem to be doing something ... can't wrap my head around it though
@williamiiifarquhar4345Ай бұрын
Great video! Very easy to follow.
@taylor.matsonАй бұрын
Excellent video covering a lot of the basics! Should be the first video in any Raymarching playlist ;)
@agysinАй бұрын
Fantastic explanation, clear and calm. Thank you!
@JohnnyTwoFingersАй бұрын
I would very much like to talk to you about a UI for a next gen ~"social media" platform that would have portions rendered in threeJS or some equivalent...the Terence McKenna script was just too much synchronicity haha...hopefully you read comments on your old videos.
@gregmark1688Ай бұрын
Years later, and this is still one of the absolute best shaders I have ever seen. It is, indeed, a classic. So simple, yet so profoundly and emotionally evocative. Really, just the best.
@WilliRittmann-iq5buАй бұрын
You made it with shaders... yeah, I've a long way ahead 😅
@saege1173Ай бұрын
of course it is tea
@wolpumba40992 ай бұрын
*Abstract* This video explores the use of hexagonal tiling in shader programming. It covers how to draw a single hexagon, how to create a seamless hexagonal grid, and how to manipulate individual hexagons within the grid. The video concludes by demonstrating how to use these techniques to create a visually interesting effect. *Summary* *Folding and Drawing the Hexagon (**0:22**)* * The video starts by folding the hexagon over its symmetrical quadrants to simplify the drawing process. * It then utilizes the absolute value of UV coordinates to define the boundaries of the hexagon within a single quadrant. * A dot product is used to create lines with specific angles, which are then normalized to ensure consistent size. * The video explains how to calculate the correct slope for the hexagon's edges by analyzing its internal triangles and applying the Pythagorean theorem. *Hexagonal Distance Function (**7:16**)* * A function called `hexDist` is created to calculate the hexagonal distance to a point in 2D space. * This function takes a UV coordinate as input and returns the distance to the closest edge of the hexagon. *Creating a Hexagonal Grid (**10:04**)* * The video explains how to create a hexagonal grid by offsetting two square grids. * By checking the distance to the center of each grid cell, the shader determines which grid a pixel belongs to, resulting in a hexagonal pattern. * The video then adjusts the grid dimensions to account for the non-square aspect ratio of hexagons. *Input/Output and UV Coordinates (**18:07**)* * A function called `hexCoords` is created to return both the UV coordinate and the ID of the corresponding hexagon cell. * This allows for individual manipulation of each hexagon within the grid. * The video discusses different types of UV coordinates that can be used for different effects, such as blending between cells or creating textures within each hexagon. *Example Effect (**24:37**)* * The video demonstrates how to use the developed functions to create a visually interesting effect with scaled and smoothly blended hexagons. * It emphasizes the potential for further creative exploration using these techniques. i used gemini 1.5 pro to summarize the transcript Token count 8,571 / 1,048,576
@leonardvanduuren87082 ай бұрын
Grandmaster !
@rokchoi68272 ай бұрын
wow
@moonhowler6672 ай бұрын
Since sin/cos algorithms have been optimized to Agrippa and back, wouldn't it be better to just lerp over a cos? You've essentially built an offset quarter cycle cosine, though not incredibly accurate for that purpose. If this were in any way faster than current sin/cos algos, it'd have been adapted into one by now. The upshot is, even if a given cos function is less efficient than this, you'd actually get a proper *smooth* step.
@robrau87952 ай бұрын
Thanks---that was very helpful! 🙂
@miquelsunyerroda96382 ай бұрын
wouldn't be this very useful to create "impostors"?
@GonzoGonschi2 ай бұрын
thanks a lot buddy, that you make this nerd wisdom accessible for all us mortals
@trifonstatkov4772 ай бұрын
This is one of those moments in which I am looking at a code and I am not confident that I will EVER be able to fully understand it. Massive respect! This is truly an art!
@reubenstarsky73282 ай бұрын
easy out to dance
@user-xm5px6zf8c2 ай бұрын
purely substantial content,
@bonafide90852 ай бұрын
Missing your videos master.
@MisterBr0wn2 ай бұрын
thank you!
@stefanvanderheijden44962 ай бұрын
This really helps me, thank you a lot. When you created that layer function and I started playing around with it, that was pretty mind-blowing.
@ZinnurDavleev3 ай бұрын
Куда ты пропал, мужик?!
@user-jc2lh2ob9g3 ай бұрын
Genuis is this Guy!
@vaingald4673 ай бұрын
Thank you so much <3
@alex_tahiti3 ай бұрын
Just discovered this channel, this is such a gem
@user-nv4sy4ju3w3 ай бұрын
Amazing ,you Invent a great VFX for the world !!!!!!
@peiyihou86093 ай бұрын
amazing, it's the best one in youtube
@makadi864 ай бұрын
I did not understand why we subtract ro from rd?
@mrbonono29514 ай бұрын
This is super cool good work!
@hamitaksln4 ай бұрын
Legend!
@emo666man1224 ай бұрын
ez pz
@eyupfndkl4 ай бұрын
Hi. Is this can be use as CAD boolean operation for any shapes? if it is yes , how. Could you explain please?