3D Renderer in Minecraft

Поділитися
Вставка
  • Опубліковано 1 тра 2024
  • How do computers display 3D objects on a 2D raster? Today we explore this subject by creating a 3D Rendering Pipeline in Minecraft.
    Source code:
    github.com/TheCymaera/minecra...
    A text-based 3D renderer I made:
    heledron.com/misc/ascii3d/dem...
    All my links:
    heledron.com/links/
    Inspired by:
    3D Wireframe Renderer in Minecraft 1.14 by SethBling
    • 3D Wireframe Renderer ...
    Music & Sound:
    Rubedo - Minecraft Nether Update (Original Game Soundtrack) by Lena Raine
    Chrysopoeia - Minecraft Nether Update (Original Game Soundtrack) by Lena Raine
    Stone sliding sound - • Stone Slide Sound Effects
    Tools Used:
    Davinci Resolve - Editing
    Krita - 2D Graphics
    Blender - 3D Graphics
    DrawIO Integration (VSCode Extension) - Pipeline diagram
    CodeSnap (VSCode Extension) - Pseudo-code snippets
    Minecraft
    Resources that helped me:
    Explaining Homogenous Coordinates (Brendan Galea):
    • The Math behind (most)...
    Affine Transformations Visualization (Wikipedia):
    en.wikipedia.org/wiki/Transfo...
    WebGL Tutorial (Indigo Code):
    github.com/sessamekesh/Indigo...
    OpenGL Tutorial (The Cherno):
    • Welcome to OpenGL
    Chapters:
    0:00 - Intro
    1:30 - Gradient Triangle
    2:23 - Cube
    5:50 - Water
    6:14 - Renderer Internals
  • Ігри

КОМЕНТАРІ • 103

  • @jonas2955
    @jonas2955 Місяць тому +215

    Now make it run Doom

    • @cosi6669
      @cosi6669 Місяць тому +6

      I was literally just about to comment the same thing

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

      that would actually be easier

    • @BeetleDude33
      @BeetleDude33 27 днів тому

      UP

  • @gazehound
    @gazehound Місяць тому +48

    You have to be kidding me. 4 years in university CS and I learn the reason we use 4D vectors from a Minecraft video.

    • @misterrabbit-m5114
      @misterrabbit-m5114 10 днів тому

      variant A: Your university is bad.
      variant B: You are bad student.

  • @liamfinlay2039
    @liamfinlay2039 Місяць тому +112

    "now that we understand the basics..."
    Me: "uhhhh....riight...yeah"
    *Continues anyway*

  • @wiggletonthewise2141
    @wiggletonthewise2141 Місяць тому +83

    This is incredible, I feel like there is so much potential to build off of this for creating things in a 3d space in game. You could animate a movie, you could create games, or custom UIs, the possibilities are endless

    • @_MaZTeR_
      @_MaZTeR_ Місяць тому +2

      Someone already played Minecraft within Minecraft guessing with this method years ago

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

      @@_MaZTeR_No

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

      @@_MaZTeR_ where

  • @BurninButter
    @BurninButter 10 місяців тому +317

    How tf are you not more popular?

    • @unique_storm_777
      @unique_storm_777 10 місяців тому +18

      Cuz he uploads very less frequently

    • @nabir14
      @nabir14 6 місяців тому +29

      ​@@unique_storm_777but the quality of the content is great
      I mean less content doesn't mean bad conten. The contens are actually good.

    • @nabir14
      @nabir14 6 місяців тому +4

      @@MikkoMore nobody comparing popularity 💀

    • @nabir14
      @nabir14 6 місяців тому +1

      @@MikkoMore and did anyone asked you can use f word on UA-cam? BRUH

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

      @@MikkoMore I'll be honest I don't know where is Megalovania from and I am not telling you to delete your comment.

  • @Sloimay
    @Sloimay 10 місяців тому +70

    Incredibly well-explained topic and incredibly elegant video :)

  • @roxtor8473
    @roxtor8473 Місяць тому +4

    i love your videos; no yapping, no unecessary introduction (because we got it from the title), and no unecessary "like and subscribe", just what we came for. Keep it up !

  • @Giofm
    @Giofm Місяць тому +7

    Why did a minecraft video help me to solve a rendering problem? 😭

  • @TheBoringEdward
    @TheBoringEdward 11 днів тому

    Brother, you've explained 3D-rendering better than anyone else.

  • @tiddly5
    @tiddly5 6 місяців тому +28

    super well made! you explained a lot of fairly complicated 3d rendering concepts in a really easy to grasp way, keep it up

  • @spidunno
    @spidunno 10 місяців тому +15

    this video is incredibly well made and does not seem like it would come from a channel with this few subscribers and a video with this few views, great video!

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

    Dang this soundtrack is so nice. I absolutely love Rubedo. It’s so simple yet so atmospheric. Beautiful

  • @xanderdk
    @xanderdk 10 місяців тому +6

    This guy is actually a proper genius.

  • @Doodoofart725
    @Doodoofart725 Місяць тому +2

    I have a class about shader programming right now and this actually helped greatly lol

  • @xianmichaelv.gallardo2811
    @xianmichaelv.gallardo2811 7 місяців тому +1

    bro you need to be recognized

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

    This is insane

  • @youtubeaccount6548
    @youtubeaccount6548 18 днів тому

    been going down a little rabbit hole of your videos, these are FASCINATING!!

  • @SaltyBoi1030
    @SaltyBoi1030 Місяць тому +3

    Let’s get this man to the 10,000 mark

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

    I've been trying to figure out how to do this at work- thank you so much for your clear explanations. Truly brilliant.

  • @w1tre1n
    @w1tre1n 10 місяців тому +5

    Bro, this is so amazing, my brain going to smart with you, thank you for this video ❤️

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

    wow its incredible

  • @Looki2000
    @Looki2000 8 місяців тому +4

    You should be rendering the reflection camera image from the perspective of the main camera mirrored along the plane normal, not from the perspective along the plane normal.

    • @nucleargandhi2709
      @nucleargandhi2709 23 дні тому

      I kept staring at the reflection and thinking it was a little "off". Projective texture mapping definitely works using a camera reflected about the plane, and this approach of a camera looking up from the water plane *might* work, but it seems to have issues of its own.

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

    Bro is pulling out the math textbook and my sleep deprived brain is just like “Ah, yes . . . that thing”

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

    This is amazing. Your channel is underrated, math should be more popular

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

    you should try it with some sort of dithering effect for a less jarring separation between colors when drawing gradients

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

    Everything I ever wanted

  • @EY-lc3xy
    @EY-lc3xy 10 місяців тому

    Amazing!

  • @lordwillibur438
    @lordwillibur438 Місяць тому +2

    Why arent you hailed as one of the smartest people in Minecraft yet?!

  • @AlexandHuman
    @AlexandHuman Місяць тому +4

    I don't know how difficult it would be, but would it be possible to overlay 1 to 3 layers of stained glass in order to get wider range of inbetweening colors?
    I don't know at what level it'd look bad at, but I don't know, I think it'd be interesting, especially if it'd help to get textures for the rotating to look closer to say stone or something, or to provide shading to some level.
    I think it'd be cool to use an orthographic shader to make it look a bit better.

  • @user-yf1gh1bz2w
    @user-yf1gh1bz2w Місяць тому +2

    With this and create mod, you can launch Doom in Minecraft

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

    Goes hard

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

    Would love to see a raycaster-raytracer/ray marcher in Minecraft! Especially with a mesh input system, although not sure how that’d work with command blocks (assuming this isn’t using plugins)

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

    I did not understand half of what was said but I enjoyed that very much. 10/10

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

    amazing

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

    Update the sculk even more, ❤love from india

  • @Kyanite.
    @Kyanite. Місяць тому +3

    I couldn't help but notice the coloured squares were rendered at different postitions compared to actual cube through the "reflection" what is that?

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

    Good content

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

    Thanks!

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

      Wow, thanks so much! I’m glad you enjoyed.

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

    Cube game in Minecraft?

  • @BlockMasterT
    @BlockMasterT 9 місяців тому +4

    Did you use motion canvas by aarthificial to edit this video? The graphics seem similar to his.
    Anyway, thanks for the video. It made me have an ambitious idea to make a video editor in Minecraft (I’ll never do that, but I like to dream)

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

      I used Blender for a few 3D animations. The rest are drawn in Krita and keyframed in Davinci Resolve.
      That’s an interesting idea. You should try it.

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

    Understood roughly half a word, but still watched through the entire thing. Really makes me want to learn more about these sorts of things in the future!

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

    THIS CHANNEL IS WORTH KJILLION OF SUBSCRIBERS😭

  • @HeroMovies-fl4mm
    @HeroMovies-fl4mm Місяць тому

    What tech stack do you use to code all this up?

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

    Yeah, this is gonna blow up

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

      The only thing blowing up is my poor laptop.

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

    i'm not that interested in this kind of content but i'm subscribing liking and commenting because man what the fuck you need more than 20k

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

    i'm here before this video get famous

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

    3d renderer in the 3d game :skull:

  • @notdrogoon0-0
    @notdrogoon0-0 10 місяців тому +1

    i was literally just making this with datapacks lol

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

    Would have been nice to see different functions for the distortion of the water.
    Still an awesome video, though.

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

      I haven't looked much into water shaders. Do you have any functions in mind? I'd love to do a follow up video with proper water shaders.

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

    i dont understand the codes and shi but i fw it

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

    How does this not have hundreds of thousands of views.

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

      Because it's too advanced for quick popularity.

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

      Like absolutely agree that it should, and think the creator is WILD smart / awesome. But yeah, my bet would be it's too technical to get high traffic and shares. It's niche essentially.

  • @user-zh1jv6uv9g
    @user-zh1jv6uv9g Місяць тому

    I have a question, you once mentioned that if you doubled the size of the picture and it’s distance away from you, you would feel like nothing has changed..
    With that logic, if you double the size (double the blocks) and the distance, would that make the 3d image have a higher resolution?

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

    Do this with EMCL

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

    how are you running javascript code in minecraft?

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

      That’s pseudo code rewritten for simplicity. The actual plugin is written in Kotlin for Bukkit.

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

    Can it run doom

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

    Is it run JavaScript wow

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

    Damm, now I'm sad i didn't pursue science

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

    Make path tracing in minecraft

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

    very nice. Now do it in mcfunction

  • @RobinRhombus2
    @RobinRhombus2 Місяць тому +2

    But can it run DOOM?

  • @Justaperson-rz3vw
    @Justaperson-rz3vw 29 днів тому

    And i understand noting 😅

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

    make it run mario 64

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

    I know it's Minecraft music but it sounds like Interstellar music

  • @mr-weirdo-man
    @mr-weirdo-man 6 місяців тому

    remember me when your more famous

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

    Now make doom with it

  • @bolotniy
    @bolotniy Місяць тому +5

    videos like these make me sad i can't stand math

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

    why?

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

    Insta sub

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

    There's no way he's writing all of this in a data pack, right?

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

    Why haven't you made minecraft in minecraft using this yet?

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

    make minecraft in minecraft

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

    Первый

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

      Nah bro you are here before the video even starts

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

    ZWHAT