An introduction to Raymarching

Поділитися
Вставка
  • Опубліковано 21 лис 2024

КОМЕНТАРІ • 299

  • @kishimisu
    @kishimisu  11 місяців тому +150

    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 11 місяців тому +3

      Your tutorials are so useful and inspiring thank you for teaching me so much!!

    • @codeunited5905
      @codeunited5905 11 місяців тому +4

      You are one hell of a talented person. Hope you find a good employment soon!

    • @onetwothree2617
      @onetwothree2617 10 місяців тому +3

      Your tutorials are fantastic, thank you. I like the AI voice over.

    • @jcponcemath
      @jcponcemath 10 місяців тому +2

      These tutorials are amazing! Very well explained and with lots of visuals that help a lot! All the best!

    • @likrecelineation
      @likrecelineation 10 місяців тому +2

      Can you do a video on how to add lights, shadows, and specular reflections to the scene when you do?

  • @DissentingPotato
    @DissentingPotato 27 днів тому +9

    It's literally a crime against humanity that this man has stopped making youtube videos. these videos are amazing

    • @magni6o213
      @magni6o213 27 днів тому +1

      maybe he'll come back ...

  • @krzysztofwolski9156
    @krzysztofwolski9156 9 місяців тому +25

    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 6 місяців тому +3

      I as just about to post this correction. Thanks!

    • @jacobosaldarriaga4820
      @jacobosaldarriaga4820 6 місяців тому +3

      Thank you! I was going really confused for a while, thougth of changing a bunch of stuff except that, makes sense.

  • @VerdASMR
    @VerdASMR 11 місяців тому +76

    10/10, kishimisu you are a brilliant shader artist and an equally brilliant communicator of information. Please keep sharing that gift with us ❤🙏

  • @connor43057
    @connor43057 4 місяці тому +1

    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 11 місяців тому +5

    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!

  • @someguy1428
    @someguy1428 11 місяців тому +1

    Ray marching is such a beautiful technique. Infinite objects with mathematical operations with low computational power.

  • @NeverduskX
    @NeverduskX 9 місяців тому +1

    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.

  • @2_Elliot
    @2_Elliot 11 місяців тому +9

    Man, talk about underrated! Here from your previous video, can’t wait for your next. Keep up the good work!

  • @CathodeRayKobold
    @CathodeRayKobold 11 місяців тому +18

    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 2 місяці тому +1

      I guess thats because there are no tools made to ease the creation of objects withought manually writting functions in code

  • @j-will5237
    @j-will5237 Місяць тому +1

    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 :)

  • @MashJDW
    @MashJDW 11 місяців тому +2

    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!

  • @Lavamar
    @Lavamar 11 місяців тому +6

    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.

  • @NeilMyatt
    @NeilMyatt 5 місяців тому

    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!! 🎉❤

  • @Dezomm
    @Dezomm 2 місяці тому +1

    If you continued this series it would make me so happy 🥹

  • @Apn_123
    @Apn_123 Місяць тому

    The Best Introduction of Ray marching ever

  • @gdthatbigderp2375
    @gdthatbigderp2375 11 місяців тому +2

    The legends said that some day, kishimisu will return!

  • @danycorona6788
    @danycorona6788 10 місяців тому +4

    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!

  • @Mireneye
    @Mireneye 2 місяці тому +1

    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

  • @erevanayen
    @erevanayen 10 місяців тому

    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.

  • @somewhere-else
    @somewhere-else 11 місяців тому

    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.

  • @SuboptimalEng
    @SuboptimalEng 11 місяців тому +1

    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!

  • @MrXav360
    @MrXav360 4 місяці тому

    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))

  • @MysteryPancake
    @MysteryPancake 11 місяців тому +11

    Fantastic!! I especially like the diagram at 25:18, it's a very interesting way to visualise it

  • @Darkensses
    @Darkensses 11 місяців тому +10

    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 :)

  • @januskane1978
    @januskane1978 10 місяців тому +13

    I enjoy the AI voiceover, it's calm and to-the point! Very nice!

    • @alexmijo
      @alexmijo 10 місяців тому +4

      same, had no idea it was AI

    • @najlitarvan921
      @najlitarvan921 10 місяців тому +3

      to be frank it is one of the better AI voices

  • @pekka8605
    @pekka8605 10 місяців тому

    10/10 Nothing to add. Very clear yet concise explanation and visualizations.

  • @Veptis
    @Veptis 11 місяців тому +1

    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.

  • @simgamedev6423
    @simgamedev6423 3 місяці тому +4

    I've been waiting for new videos for so long!

  • @sIippo
    @sIippo 7 місяців тому

    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.

  • @grey8_
    @grey8_ 11 місяців тому +4

    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! 🎉

  • @foxxify1
    @foxxify1 11 місяців тому +6

    This is so cool. I love the exploration into noncartesian space. You can really do so much with just a few lines of code.

  • @Sadjina
    @Sadjina 2 місяці тому

    This. Is. So. Damn. Cool! I have played around with ray marching, but the idea of modifying the rays themselves was new (and awesome)!

  • @JakeDownsWuzHere
    @JakeDownsWuzHere 10 місяців тому

    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

  • @thepurplbanana
    @thepurplbanana 11 місяців тому +32

    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 10 місяців тому

      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 9 місяців тому

    This is an absolute gem. Please keep making more of such videos

  • @ahsan2649
    @ahsan2649 11 місяців тому

    The only raymarching tutorial I ever understood.

  • @psenej
    @psenej 11 місяців тому +40

    OMG THE RETURN !!

    • @Kabodanki
      @Kabodanki 11 місяців тому

      The algorithm choosed him

  • @puntig.1187
    @puntig.1187 10 місяців тому

    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.

  • @orangebananaaaa
    @orangebananaaaa 4 місяці тому

    Seriously, the best tutorial and explanation about the ray marching. Thank you for sharing.

  • @neokortexproductions3311
    @neokortexproductions3311 7 місяців тому

    Thank you!
    You inspired me to get back into coding and creating generative art, looking forward to future tutorials🤝

  • @Cigam_HFden
    @Cigam_HFden 11 місяців тому +7

    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!

  • @PledgeBass
    @PledgeBass 9 місяців тому

    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.

  • @Elmo-uu3cb
    @Elmo-uu3cb 11 місяців тому +5

    Wow amazing! Thank you for sharing all those great lessons 😎🔥

  • @BarneyCodes
    @BarneyCodes 11 місяців тому +1

    Another great video! I've been meaning to explore raymarching for ages, so this might be the push I need to get started!

  • @bitblit
    @bitblit 11 місяців тому

    Never thought I'd learn how to become a lightbender, but this video made it so easy! Universes beware.

  • @michaelcheverie7579
    @michaelcheverie7579 11 місяців тому

    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!

  • @nathanlebon5813
    @nathanlebon5813 10 місяців тому

    GOAT Tier learning material. Thank you a lot!
    I'm seriously thinking about subscribing to your Patreon after 2 tutorials.

  • @Adam-ef6ij
    @Adam-ef6ij 4 місяці тому

    this is incredible, i am new to shaders and coding in general and this video was understandable and motivating. keep up the amazing work!

  • @futurebypatrick
    @futurebypatrick 10 місяців тому +1

    Great video with great presenting format. Really appreciate. I am not coder at all, but really interested in this type of experimenting now. 😁😁

  • @jacobbb-t7i
    @jacobbb-t7i 10 місяців тому

    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.

  • @hekuli
    @hekuli 11 місяців тому

    You really have the best tutorials on the topic. Very well done explaining complex topics in easy to understand terms.

  • @4.0.4
    @4.0.4 11 місяців тому +2

    Absolutely amazing content. I can vouch for The Art of Code too, his videos are long but very easy to follow.

  • @maninthebags
    @maninthebags 4 місяці тому

    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!!

  • @arnetriesyoutube
    @arnetriesyoutube 10 місяців тому

    I really like how much info even the description has!

  • @simonviit4982
    @simonviit4982 11 місяців тому +1

    Thank you, I hope you might consider produce "An introduction to RayTracing" in future.

  • @mutantmantish6141
    @mutantmantish6141 4 дні тому

    Hey, don't stop making videos like this!

  • @Qweze
    @Qweze 5 місяців тому +9

    time to stop raymarching and start raymaxxing

  • @loriennasarre
    @loriennasarre 10 місяців тому

    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!

  • @Nosikas
    @Nosikas 11 місяців тому

    Oh my gosh, you're back! These videos are phenomenal.

  • @juanloutech2864
    @juanloutech2864 10 місяців тому

    Very, very interesting and very well explained! Thanks for this introduction to the huge world of shaders!

  • @mlecz
    @mlecz 11 місяців тому

    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 !

  • @hordorsok
    @hordorsok 11 місяців тому

    Oh man, you are finaly here thax for video!

  • @erikjohnson9112
    @erikjohnson9112 11 місяців тому +1

    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  11 місяців тому +1

      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!

  • @aref2268
    @aref2268 9 місяців тому

    Aah shade, here we go again
    Now I have an awesome toy to procrastinate with.
    This tutorial is amazing🔥

  • @daereanlegrand2471
    @daereanlegrand2471 22 дні тому

    You're Bob Ross but for CS nerds, love you

  • @chujies
    @chujies 11 місяців тому

    Babe wake up, Kishimisu dropped a new video!

  • @alexandersedykh9280
    @alexandersedykh9280 Місяць тому +1

    I love you and your lessons

  • @sleepymushroom9403
    @sleepymushroom9403 11 місяців тому

    Funnily enough I was looking for a video to explain raymarching to me, been thinking of implementing in a project lately.

  • @thailonlucasart
    @thailonlucasart 5 місяців тому

    We miss youuu!!! Hope you produce some new shader content 🎉

  • @Napriiihm
    @Napriiihm 28 днів тому

    Like the first one, your video is so amazing ! So well explain and full of art potentials ! Thank you very much !

  • @jazzhar
    @jazzhar 10 місяців тому +1

    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.

  • @dumbo8260
    @dumbo8260 11 місяців тому

    nicely done dude. can't wait for the volumetric tutorial

  • @hldfgjsjbd
    @hldfgjsjbd 8 місяців тому +1

    I would much appreciate video about volumetric clouds and implementation in Unity

  • @Not_Even_Wrong
    @Not_Even_Wrong 11 місяців тому

    Amazing, awaiting the next videos eagerly!

  • @EZO.FUZZ.IS.OFFLINE
    @EZO.FUZZ.IS.OFFLINE 5 місяців тому

    Absolutely incredible! I hope to see more videos on shaders from you! 🎉

  • @cyberbemon
    @cyberbemon 11 місяців тому

    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!

  • @Dromeo3
    @Dromeo3 11 місяців тому

    im so glad you're making more content

  • @marvinkruger4559
    @marvinkruger4559 11 місяців тому +2

    Thank you so much for another wonderful video!!

  • @viezegast1305
    @viezegast1305 11 місяців тому

    Absolute unit of a channel

  • @gamethecupdog
    @gamethecupdog 3 місяці тому

    2:50 I've been working on creating a program to render SDFs myself, and that XY pattern has been what I've been using the whole time. I thought I was seeing my own program for a split second 💀

  • @mybdretaemch3409
    @mybdretaemch3409 11 місяців тому +1

    Man, I'd love to see a video series of you teaching GLSL from basics. You explain things very nicely!

  • @gaeel330
    @gaeel330 10 місяців тому

    You shouted out Leon Denise! He's the one who introduced me to raymarching. Really cool dude! He organises amazing demoparties and live-coding events with Cookie Collective, check them out if you're into all this stuff!

  • @rimonsade-jd3id
    @rimonsade-jd3id 11 місяців тому

    That is beyond great content. Truly mesmerizing.

  • @shinomitsu7798
    @shinomitsu7798 11 місяців тому

    Thank you. Can't wait for the next video

  • @MTweedC4
    @MTweedC4 7 місяців тому

    Really enjoying your videos! And have recommended them in my developers circle (:

  • @unvergebeneid
    @unvergebeneid 11 місяців тому +2

    Free you mind, Neo. What you must learn is that these rules are no different than the rules of a computer system. Some rays can be bent. Others, can be curled up like some non-physical strand of hair.
    Well, I'm pretty sure if Neo had made full use of his ability to bend the rules of a computer system, The Matrix would've been a much different movie. And much more popular with the psychedelics crowd.

  • @parkedhampster212
    @parkedhampster212 10 місяців тому +1

    We did it, fellas - we reinvented the CRT in the virtual world

  • @maximoto42
    @maximoto42 3 місяці тому

    Nice man, love your work! Keep it up ❤🧡💛💚💙💜

  • @motbus3
    @motbus3 11 місяців тому

    This is absolutely amazing.
    Please keep doing it!

  • @ben-fornefeld
    @ben-fornefeld 7 місяців тому +9

    let him cook

  • @Lazurit216
    @Lazurit216 Місяць тому

    I look forward to more videos!

  • @razu1976
    @razu1976 6 місяців тому

    This is such a good video. Well done.

  • @Shamysoza92
    @Shamysoza92 11 місяців тому +4

    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  11 місяців тому +1

      Thank you for pointing it out!

    • @Chevifier
      @Chevifier 11 місяців тому +1

      Huge thanks for this point out I was stuck here implementing it in Godot 4.2 and was wondering if I missed something.

  • @guyug6940
    @guyug6940 11 місяців тому +1

    Guess whos back
    Back again

  • @aleksej-skrypnik
    @aleksej-skrypnik 9 місяців тому

    Great content! I especially enjoyed the visualizations of every step.
    However, the music can be a bit unpleasant when watching at a higher playback speed.

  • @JunicoNRC
    @JunicoNRC 11 місяців тому

    goh damn my new shaders course

  • @KitsuneFaroe
    @KitsuneFaroe 19 днів тому

    Insta-subscribed! *Checks Channel* 2 videos and this is the last one?? What??? Teacher I need you •^•

  • @StevesMakerspace
    @StevesMakerspace 4 місяці тому

    Would love to hear about making shadows.

  • @redsprites5216
    @redsprites5216 10 місяців тому

    'Now' I subscribe. Love this!