An introduction to Raymarching

  Рет қаралды 166,880

kishimisu

kishimisu

Күн бұрын

Пікірлер: 319
@kishimisu
@kishimisu Жыл бұрын
I hope you'll find this tutorial to be a useful starting point for learning more about raymarching! You can support these tutorials on Patreon: www.patreon.com/kishimisu See you in the next one!
@CREATUREwithEnergy
@CREATUREwithEnergy Жыл бұрын
Your tutorials are so useful and inspiring thank you for teaching me so much!!
@codeunited5905
@codeunited5905 Жыл бұрын
You are one hell of a talented person. Hope you find a good employment soon!
@onetwothree2617
@onetwothree2617 Жыл бұрын
Your tutorials are fantastic, thank you. I like the AI voice over.
@jcponcemath
@jcponcemath Жыл бұрын
These tutorials are amazing! Very well explained and with lots of visuals that help a lot! All the best!
@likrecelineation
@likrecelineation Жыл бұрын
Can you do a video on how to add lights, shadows, and specular reflections to the scene when you do?
@DissentingPotato
@DissentingPotato 3 ай бұрын
It's literally a crime against humanity that this man has stopped making youtube videos. these videos are amazing
@magni6o213
@magni6o213 3 ай бұрын
maybe he'll come back ...
@DissentingPotato
@DissentingPotato Ай бұрын
@@magni6o213 dude has literally just the two videos and 50k subs, there is definitely demand for videos like this.
@ecrandomarts7198
@ecrandomarts7198 26 күн бұрын
Those videos seem super complex to record and edit. I burnout just trying to imagine how that person did it.
@puchingballz
@puchingballz 19 күн бұрын
@@ecrandomarts7198 with maths...
@rgw5991
@rgw5991 10 күн бұрын
POTATO
@VerdASMR
@VerdASMR Жыл бұрын
10/10, kishimisu you are a brilliant shader artist and an equally brilliant communicator of information. Please keep sharing that gift with us ❤🙏
@krzysztofwolski9156
@krzysztofwolski9156 11 ай бұрын
Thanks a lot for this video. IT's great and easy to comprehend. I just spotted one mistake, so I'll share with people if they get stuck: 26:55 - When doing the time-dependent offset of the cubes the line q=fract(p) - 0.5; should be changed to q=fract(q) - 0.5;
@benxtan
@benxtan 9 ай бұрын
I as just about to post this correction. Thanks!
@jacobosaldarriaga4820
@jacobosaldarriaga4820 8 ай бұрын
Thank you! I was going really confused for a while, thougth of changing a bunch of stuff except that, makes sense.
@CYB3Rsynth
@CYB3Rsynth 8 күн бұрын
Thankye kindly
@psenej
@psenej Жыл бұрын
OMG THE RETURN !!
@Kabodanki
@Kabodanki Жыл бұрын
The algorithm choosed him
@danycorona6788
@danycorona6788 Жыл бұрын
A just became a supporter at patreon because of this video. I think you nailed the perfect balance giving just enough information to understand what’s going on without getting bogged with details while providing external resources to drill down. The visual explanations are great too. Looking forward to dig in with your next tutorials!
@2_Elliot
@2_Elliot Жыл бұрын
Man, talk about underrated! Here from your previous video, can’t wait for your next. Keep up the good work!
@Lavamar
@Lavamar Жыл бұрын
Amazing tutorial once again! Your first video inspired me and many others to start experimenting with shader code. This video made basic 3d graphics easily understandable, previosuly to me a daunting task. I also love how you briefly explain several sub-concepts in their simplest forms, prompting a lot of creative exploration. Really appreciate your style, pacing and looking forward to your future videos.
@connor43057
@connor43057 6 ай бұрын
I really hope you make another tutorial soon. Your two videos are the BEST shader & raymarching content I've ever seen, and I've worked professionally as a graphics programmer.
@seanloughran6714
@seanloughran6714 Жыл бұрын
Had to pause in the middle of the video and say, that Milky Way comparison was amazing, funny and instructional. This is an awesome video, well done!
@NeverduskX
@NeverduskX Жыл бұрын
This video was so dense with information yet so well-explained. I'm going to rewatch this a few times just so I can absorb everything.
@MashJDW
@MashJDW Жыл бұрын
This is a fantastic introduction into Ray Marching. Wonderful video. I've started this journey myself a few months ago, and your visualizations will really help others conceptualize these seemingly complicated operations!
@simgamedev6423
@simgamedev6423 5 ай бұрын
I've been waiting for new videos for so long!
@Darkensses
@Darkensses Жыл бұрын
Thank you kishimisu! you're a true inspiration for me! Shaders are a very complex topic but with your help, this kind of programming is begin become easier :)
@CathodeRayKobold
@CathodeRayKobold Жыл бұрын
The biggest flaw with ray marching, in my opinion, is that it can be difficult or tedious to design certain arbitrary structures purely with math. It's not a very artist-friendly technique.
@miguelpereira9859
@miguelpereira9859 4 ай бұрын
I guess thats because there are no tools made to ease the creation of objects withought manually writting functions in code
@grey8_
@grey8_ Жыл бұрын
Awesome video! I was occasionally checking your channel to see if you had a new video since you said you're working on a new video on Instagram. You did a really great job! Especially because it was a topic I wanted to checkout anyway. I'm looking forward to more raymarching and seeing your channel evolve, I think you'll succeed easily! Good luck! 🎉
@sIippo
@sIippo 10 ай бұрын
Great video! You started small and worked up to some really cool demonstrations. Thank you for doing this all in shadertoy too, so I could quickly try it out for myself.
@SuboptimalEng
@SuboptimalEng Жыл бұрын
I wish this video existed when I started learning Ray Marching (earlier this year) because it would've saved me weeks of self-studying. Really amazing work!
@j-will5237
@j-will5237 3 ай бұрын
Very good job. All is very clear; Probably the best introduction to the raymarching. Thank you very much ! I hope there will be a sequel :)
@Veptis
@Veptis Жыл бұрын
I am still working on my shader generation evaluation for language models, but your videos have been a great aid to help people explain what shadercode is and how you might interpret code as art.
@gdthatbigderp2375
@gdthatbigderp2375 Жыл бұрын
The legends said that some day, kishimisu will return!
@BarneyCodes
@BarneyCodes Жыл бұрын
Another great video! I've been meaning to explore raymarching for ages, so this might be the push I need to get started!
@Cigam_HFden
@Cigam_HFden Жыл бұрын
Excellent run down of a lot of concepts and aspects of ray-marching. I have been experimenting with raymarching and SDF shapes in the godot engine. I am not sure how performant that will be, because I am still working at making the code for it. However, I will definitely be looking forward to your future videos. Cheers!
@Mireneye
@Mireneye 5 ай бұрын
Seconding the people who wish to see more, this was a brilliant video & I hope you'll come to a point in life to have the ability and want to make more
@MrXav360
@MrXav360 7 ай бұрын
OMG thank you so much for making your first two videos! It answered sooooooooooo many questions I had about psychedelic arts and gave me the push to learn GLSL and generate animations from C++. If I may add, the distortion effect is actually from an error in the concept of the rd variable. It should be vec3 rd = normalize(vec3(uv0, abs(ro.z))), since we want the direction of the pixel from the camera (we thus need to take into account where the camera is placed, otherwise the cone of rays isn't projected from the camera, but from a point at (0, 0, -1))
@memofie
@memofie Ай бұрын
damn the journey is extremely interesting, I watched a half of an hour straight without skipping anything. nice presentation man
@symbolenjoyer
@symbolenjoyer Жыл бұрын
Great video! I toyed with fragment shaders before, but this video made want to go back and properly learn some GLSL and create a couple shader programs! As a point of criticism, I think the code you provide would be easier to follow along and more readable if you were to use proper variable names for values you hardcoded -- using something like `scalingFactor` instead of 4., for example.
@kimmyera174
@kimmyera174 Жыл бұрын
Yes. This is a general coding practice called magic numbers. Eventually, constants that never change or one off values, may need to be understood by anyone revisiting the code in the future... that also means yourself :p This was a good tip from professors when I went to college for programming. Also keep up the vids, I'm subscribed for the incredibly easy to follow, guided visual examples that help explain what's fundamentally going on, step-by-step. Keep it up ^^
@randomystic218
@randomystic218 11 ай бұрын
This is an absolute gem. Please keep making more of such videos
@PledgeBass
@PledgeBass Жыл бұрын
Thank you so much for all of the effort put into this. I don't have time to dive into shaders right now but it's something I've been wanting to do for a while.
@Nosikas
@Nosikas Жыл бұрын
Oh my gosh, you're back! These videos are phenomenal.
@Adam-ef6ij
@Adam-ef6ij 7 ай бұрын
this is incredible, i am new to shaders and coding in general and this video was understandable and motivating. keep up the amazing work!
@Dezomm
@Dezomm 5 ай бұрын
If you continued this series it would make me so happy 🥹
@nathanlebon5813
@nathanlebon5813 Жыл бұрын
GOAT Tier learning material. Thank you a lot! I'm seriously thinking about subscribing to your Patreon after 2 tutorials.
@puntig.1187
@puntig.1187 Жыл бұрын
I just decided to get into shaders, as a self-taught "creative coder". Your videos are absolutely stunning, highlighting an incredible production value. Be sure that I am going to follow your every move ;) I think you just convinced me to become a Patreon.
@JakeDownsWuzHere
@JakeDownsWuzHere Жыл бұрын
double thumbs up for the Quaternion videos you linked, they're invaluable in understanding what at first can be a very opaque and confusing construct
@loriennasarre
@loriennasarre Жыл бұрын
Dude I was really waiting for you to drop another video. I am getting into the world of 3D graphics and shaders and your insight is very appreciated!
@someguy1428
@someguy1428 Жыл бұрын
Ray marching is such a beautiful technique. Infinite objects with mathematical operations with low computational power.
@orangebananaaaa
@orangebananaaaa 7 ай бұрын
Seriously, the best tutorial and explanation about the ray marching. Thank you for sharing.
@pekka8605
@pekka8605 Жыл бұрын
10/10 Nothing to add. Very clear yet concise explanation and visualizations.
@neokortex_neokortex
@neokortex_neokortex 9 ай бұрын
Thank you! You inspired me to get back into coding and creating generative art, looking forward to future tutorials🤝
@MysteryPancake
@MysteryPancake Жыл бұрын
Fantastic!! I especially like the diagram at 25:18, it's a very interesting way to visualise it
@NeilMyatt
@NeilMyatt 7 ай бұрын
This blew my mind. I thought those 3d shaders were just beyond the scope of my tiny brain, but you just unlocked a million doors for me! Unfortunately my maths will still be a major limit for me, but luckily there’s all those prebuilt functions for rotation etc. thank you!! 🎉❤
@januskane1978
@januskane1978 Жыл бұрын
I enjoy the AI voiceover, it's calm and to-the point! Very nice!
@alexmijo
@alexmijo Жыл бұрын
same, had no idea it was AI
@najlitarvan921
@najlitarvan921 Жыл бұрын
to be frank it is one of the better AI voices
@jacobbb-t7i
@jacobbb-t7i Жыл бұрын
Fantastic video! Looking forward to more in this series. I'm a big fan of the 64K demoscene and the creative and technical uses of raymarching, but never could give myself a starting off point to try my hand at my own. You just unlocked a whole universe of exploration for me.
@Apn_123
@Apn_123 3 ай бұрын
The Best Introduction of Ray marching ever
@hekuli
@hekuli Жыл бұрын
You really have the best tutorials on the topic. Very well done explaining complex topics in easy to understand terms.
@arnetriesyoutube
@arnetriesyoutube Жыл бұрын
I really like how much info even the description has!
@foxxify1
@foxxify1 Жыл бұрын
This is so cool. I love the exploration into noncartesian space. You can really do so much with just a few lines of code.
@Elmo-uu3cb
@Elmo-uu3cb Жыл бұрын
Wow amazing! Thank you for sharing all those great lessons 😎🔥
@mutantmantish6141
@mutantmantish6141 2 ай бұрын
Hey, don't stop making videos like this!
@CYB3Rsynth
@CYB3Rsynth 9 күн бұрын
Man. Wish you posted more videos. bro posted two vids and got nearly 50K subs. That says something. Good job man
@erevanayen
@erevanayen Жыл бұрын
My guy is literally teaching magic and asks nothing for it. The production and information value of this video is insane. I'm making a patreon account just to support you.
@futurebypatrick
@futurebypatrick Жыл бұрын
Great video with great presenting format. Really appreciate. I am not coder at all, but really interested in this type of experimenting now. 😁😁
@4.0.4
@4.0.4 Жыл бұрын
Absolutely amazing content. I can vouch for The Art of Code too, his videos are long but very easy to follow.
@somewhere-else
@somewhere-else Жыл бұрын
ai voice or not the effort that went into this video is obvious and it’s top notch. honestly reminds me of robert penner’s work back in the flash days.
@maninthebags
@maninthebags 6 ай бұрын
Bro i cant wait to see really cool stuff like reflections and shadows added to this. it would be sooooo cool. Very much cant wait to see more!!
@juanloutech2864
@juanloutech2864 Жыл бұрын
Very, very interesting and very well explained! Thanks for this introduction to the huge world of shaders!
@hordorsok
@hordorsok Жыл бұрын
Oh man, you are finaly here thax for video!
@Sadjina
@Sadjina 4 ай бұрын
This. Is. So. Damn. Cool! I have played around with ray marching, but the idea of modifying the rays themselves was new (and awesome)!
@michaelcheverie7579
@michaelcheverie7579 Жыл бұрын
Just this afternoon I was messing around with applying rotation matrices to conic sections in the Desmos graphing calculator. Cool to see that technique used in shaders!
@Soverthe
@Soverthe Жыл бұрын
26:54 Shouldn't the next line be "q = fract(q) - .5;"? The upward movement didn't work when I had p inside the fract
@kishimisu
@kishimisu Жыл бұрын
You're right there is a small mistake in the code!
@briansheldon9401
@briansheldon9401 11 ай бұрын
Incredible video. Could someone please explain why at 7:27 the ray direction is given as normalize(vec3(uv, 1)) and not normalize(vec3(uv, 3)) for a camera 3 units from the screen? Shouldn't the direction be normalize(vec3(uv, distanceFromScreen)) for this setup?
@mlecz
@mlecz Жыл бұрын
Fantastic Video !, The content of this material is so valuable that the participation of AI as an speaker completely does not bother me. Thank you for your work !
@johnmeow
@johnmeow Ай бұрын
There is already 11 months we need a new tutorial ❤
@jazzhar
@jazzhar Жыл бұрын
I found it incredibly easy to understand, you expertly explained not only the goal but also what individual components did without making it confusing. Although it's not shader, but could you tackle cube marching? (Procedural generation) Havent found someone that could explain it well yet.
@miyu1424
@miyu1424 Жыл бұрын
Finally! I'm so excited!
@Napriiihm
@Napriiihm 3 ай бұрын
Like the first one, your video is so amazing ! So well explain and full of art potentials ! Thank you very much !
@hldfgjsjbd
@hldfgjsjbd 11 ай бұрын
I would much appreciate video about volumetric clouds and implementation in Unity
@EZO.FUZZ.IS.OFFLINE
@EZO.FUZZ.IS.OFFLINE 8 ай бұрын
Absolutely incredible! I hope to see more videos on shaders from you! 🎉
@erikjohnson9112
@erikjohnson9112 Жыл бұрын
Great to have you back! Personally I would like to see WebGPU perhaps using wgpu (and engine that supports both desktop and web). Compute shaders & fragment shaders are my top topics (or more precisely areas).
@kishimisu
@kishimisu Жыл бұрын
I might create a video about webgpu in the future to introduce compute shaders. However it may be difficult to fit on the screen nicely as wgsl is more verbose than glsl!
@hiaaf6105
@hiaaf6105 Жыл бұрын
I was doing this with unity's compute shaders, and at 12:20, any iteration number over 68 creates a black "crosshair" pointing to the sphere. Does anyone know why?
@Shamysoza92
@Shamysoza92 Жыл бұрын
This is fantastic! I am walking through the process and I found a problem, but I am not sure if that was me, or there is something wrong with the original. at 27:01, when translating the box, inside the fract() function I noticed that using "p" as input will not work since we are currently using "q" instead. Just as a heads up to anyone following along. Please keep up the fantastic work!
@kishimisu
@kishimisu Жыл бұрын
Thank you for pointing it out!
@Chevifier
@Chevifier Жыл бұрын
Huge thanks for this point out I was stuck here implementing it in Godot 4.2 and was wondering if I missed something.
@fredbakas
@fredbakas Ай бұрын
Just chimin' in to say I love your work!
@maximoto42
@maximoto42 5 ай бұрын
Nice man, love your work! Keep it up ❤🧡💛💚💙💜
@marvinkruger4559
@marvinkruger4559 Жыл бұрын
Thank you so much for another wonderful video!!
@viezegast1305
@viezegast1305 Жыл бұрын
Absolute unit of a channel
@LuigiElettrico
@LuigiElettrico Жыл бұрын
Simple yet amazing.
@ahsan2649
@ahsan2649 Жыл бұрын
The only raymarching tutorial I ever understood.
@Dromeo3
@Dromeo3 Жыл бұрын
im so glad you're making more content
@IgneousGorilla
@IgneousGorilla 11 ай бұрын
Id like to run shaders locally, since I expect it could give me better performance (I have integrated graphics and most shaders on Shadertoy lag my PC when in fullscreen) and more control over inputs. I'd love to make interactive shaders, but on Shadertoy rotating the camera requires clicking - I havent seen a single shader that lets you rotate the camera by just moving the mouse around without clicking.. I'd also like to keep Shadertoy's editor simplicity. Does anyone know what my best options are? I'm not asking for a 100% premade tool btw, just some options (like libraries and languages well suited for this).
@bitblit
@bitblit Жыл бұрын
Never thought I'd learn how to become a lightbender, but this video made it so easy! Universes beware.
@alexandersedykh9280
@alexandersedykh9280 4 ай бұрын
I love you and your lessons
@simonviit4982
@simonviit4982 Жыл бұрын
Thank you, I hope you might consider produce "An introduction to RayTracing" in future.
@shinomitsu7798
@shinomitsu7798 Жыл бұрын
Thank you. Can't wait for the next video
@motbus3
@motbus3 Жыл бұрын
This is absolutely amazing. Please keep doing it!
@rimonsade-jd3id
@rimonsade-jd3id Жыл бұрын
That is beyond great content. Truly mesmerizing.
@MTweedC4
@MTweedC4 10 ай бұрын
Really enjoying your videos! And have recommended them in my developers circle (:
@Not_Even_Wrong
@Not_Even_Wrong Жыл бұрын
Amazing, awaiting the next videos eagerly!
@dumbo8260
@dumbo8260 Жыл бұрын
nicely done dude. can't wait for the volumetric tutorial
@aref2268
@aref2268 Жыл бұрын
Aah shade, here we go again Now I have an awesome toy to procrastinate with. This tutorial is amazing🔥
@gabismith3049
@gabismith3049 Күн бұрын
Thank you for this great tuto.
@tiagotiagot
@tiagotiagot Жыл бұрын
Is it possible to correct the space distortions mentioned in the end to avoid the artifacts?
@isma.noether
@isma.noether 9 ай бұрын
Incredible tutorial ! Thanks a lot ! Just one question, is it normal that your cartesian coordinates system at 7:01 is left-handed ? It seems a bit odd since, as I thought, the convention was right-handed cartesian coordinates system.
@thailonlucasart
@thailonlucasart 8 ай бұрын
We miss youuu!!! Hope you produce some new shader content 🎉
@razu1976
@razu1976 8 ай бұрын
This is such a good video. Well done.
@randomystic218
@randomystic218 10 ай бұрын
The ray direction should be pixel position - camera position = (vec3(uv, 0.0) - ro) right? Why is rd = vec3(uv, 1.0)?
@sleepymushroom9403
@sleepymushroom9403 Жыл бұрын
Funnily enough I was looking for a video to explain raymarching to me, been thinking of implementing in a project lately.
@samholland209
@samholland209 11 ай бұрын
When will you make your next video?
@chujies
@chujies Жыл бұрын
Babe wake up, Kishimisu dropped a new video!
@cyberbemon
@cyberbemon Жыл бұрын
Lol this video would have helped me a lot about 2 years ago when I did my computer graphics module. I was struggling to find a good video that broke down Raymarching. Still better late than never, I can use this to revise that shit properly now!
An introduction to Shader Art Coding
22:40
kishimisu
Рет қаралды 1 МЛН
Пишем свой движок 3D-графики
19:25
Onigiri
Рет қаралды 546 М.
Chain Game Strong ⛓️
00:21
Anwar Jibawi
Рет қаралды 41 МЛН
Signed Distance Functions & Ray-Marching
24:14
Sum and Product
Рет қаралды 34 М.
AI Is Making You An Illiterate Programmer
27:22
ThePrimeTime
Рет қаралды 163 М.
How Ray Tracing (Modern CGI) Works And How To Do It 600x Faster
32:06
Josh's Channel
Рет қаралды 588 М.
Introduction to shaders: Learn the basics!
34:50
Barney Codes
Рет қаралды 391 М.
How are holograms possible?
46:24
3Blue1Brown
Рет қаралды 2 МЛН
Creating My Own Custom 3D Graphics Engine
26:29
Inkbox
Рет қаралды 140 М.
How Big Budget AAA Games Render Clouds
10:45
SimonDev
Рет қаралды 286 М.
Making an SNES Game the Way Nintendo Intended
25:30
Inkbox
Рет қаралды 356 М.
Ray Marching, and making 3D Worlds with Math
6:28
SimonDev
Рет қаралды 264 М.
What Is A Graphics Programmer?
30:21
Acerola
Рет қаралды 477 М.