I built a 3D RAY-TRACER using REDSTONE (Minecraft) + Download

แชร์
ฝัง
  • เผยแพร่เมื่อ 28 มิ.ย. 2024
  • My Tutorial Series: • Creating the most simp...
    (Building a Raytracer from scratch with Blender Math Nodes)
    Map Download: www.mediafire.com/file_premiu...
    (It takes like 200+ hours for one image to render, even with Carpet Mod which speeds up your game)
    Some people in the comments said that what I built is actually a Pathtracer, Raycaster and one guy thought this was Raymarching.
    I've had this discussion for years. Using the names introduced in the old original papers has become very confusing. Today, Raytracing is mostly used as a very general term, and both Pathtracing and Raycasting are listed as a subset.
    e.g. Wikipedia's page about Raytracing: "...ray tracing-based rendering techniques, such as ray casting, recursive ray tracing, distribution ray tracing, photon mapping and path tracing, ..."
    Wikipedia's page about Raycasting: "..., see ray tracing (graphics) as both are essentially the same technique under different names. Scott Roth had invented the term "ray casting" before having heard of "ray tracing". "
    Raymarching usually just means that the intersection is computed iteratively by stepping along the ray in small increments - I'm not doing that at all.
    What I built is bascially a "Raycaster" - the most important part of a "typical" Raytracer, it shoots the primary rays into the scene. The problem with calling it raycasting is that today people associate that with something that is very different from what I built. e.g. If you search for "raycasting" on google images, you only find Wolfenstein 3D stuff, which is actually only casting rays in 2D, which are used to define the height of 2D collumns to give the illusion of a 3D environment.
    What I built uses the exact same camera system as a typical Raytracer, but I do not shoot any further rays for reflections or shadows - I thought about rendering one sphere and a reflective floor plane - but that would not look good on a redstone lamp display. I need to build a better display first, that can display multiple shades of gray without dithering. I decided for rendering 8 spheres in a cube formation so that it can be compared well to rasterization.
    The main motivation for me was to learn binary arithmetic, and building a simple programmable computer. And Minecraft Redstone is perfect for learning such things.
    This build is actually not that complex, the only reason why nobody built a Raytracer before is that it's super slow and you can get better looking images with traditional 3d rendering (rasterization).
    This was my first time actually using Redstone for something more complex than opening a door. A lot of things could be optimized... especially the individual components like the adder and multiplier are not synced so a lot of time is wasted in between instructions.
    Big thanks to ‪@mattbatwings‬ for their amazing Redstone Tutorial series.
    Many parts of my build are based on these tutorials.
    Music at the Beginning: Giving Up - JVNA (TH-cam Audio Library)
    Chapters:
    0:00 - Intro & Reveal
    1:31 - Traditional Rendering vs Raytracer
    3:31 - Building it in Minecraft
    4:27 - Redstone Computer Explanation
    6:20 - Implementation in Minecraft

ความคิดเห็น • 385

  • @mattbatwings
    @mattbatwings ปีที่แล้ว +1436

    This is seriously amazing dude! The presentation and build is top notch, you deserve way more attention! I just watched your other videos and when I saw the blender nodes representation, I knew it would be a great fit for redstone because it instantly reminded me of how I draw redstone schematics, lol. I'm glad my tutorials could help, and I can't wait to see more!!

  • @CraftyMasterman
    @CraftyMasterman ปีที่แล้ว +961

    Dude this is crazy for one of your FIRST redstone builds??? Everything was explained so simply and the graphics you had to accompany made it so easy to follow!

    • @ECanDo
      @ECanDo ปีที่แล้ว +6

      I could have not said it better

    • @Scratchfan321
      @Scratchfan321 ปีที่แล้ว +4

      He's cracked at redstone

    • @Nombrenooriginal
      @Nombrenooriginal ปีที่แล้ว +8

      What you mean first 💀?

    • @yoshin6465
      @yoshin6465 ปีที่แล้ว +5

      @@Nombrenooriginal first showcased redstone build

    • @ethymith
      @ethymith 3 หลายเดือนก่อน

      @@yoshin6465 everyone's first showcase build is the one they think is a magnum opus

  • @lewismassie
    @lewismassie ปีที่แล้ว +100

    4:45 Unironically I think you just taught me something about physical computer architecture that noone else has managed to teach me in 8+ years

    • @Alphalaneous
      @Alphalaneous ปีที่แล้ว +3

      Unironically same

    • @alfred0231
      @alfred0231 ปีที่แล้ว

      If your interest is still whetted check out "But How Do It Know". Written for average people, it goes from a light switch to how a whole simple computer works. Logic gates, ALU, memory, clocks, instruction decoders .. etc.

    • @-Name-here-
      @-Name-here- ปีที่แล้ว

      Same lol. Makes more sense now

    • @ads1035
      @ads1035 ปีที่แล้ว +1

      Sure enough, that's the concept of a bus!

    • @maiky8869
      @maiky8869 ปีที่แล้ว

      i had a test where i had to use that yet this is for the first time i realised how it works xDD

  • @Zuchii
    @Zuchii ปีที่แล้ว +475

    The rest of the Minecraft community is trying to figure out what a Sculk Sensor is and georg just built a Redstone Ray Tracing machine in a version of Minecraft that doesn't even support Ray Tracing

    • @roykale9141
      @roykale9141 ปีที่แล้ว +23

      *officially

    • @309electronics5
      @309electronics5 ปีที่แล้ว +7

      Rest of the mc community? Don't forget the other redstoners who also build big builds

    • @Treetrain1
      @Treetrain1 ปีที่แล้ว

      @@roykale9141 what do you mean

    • @manitoba-op4jx
      @manitoba-op4jx ปีที่แล้ว +1

      1.7.10 is the best version
      for modding

    • @StrangerOnTheWeb
      @StrangerOnTheWeb ปีที่แล้ว +5

      @@Treetrain1 There are shaders with raytracing

  • @DigitalJedi
    @DigitalJedi ปีที่แล้ว +227

    My man is taking Minecraft RTX to the next level. Truly an insane build.

    • @captainpolio867
      @captainpolio867 ปีที่แล้ว +18

      "Java doesn't have native ray-tracing? We'll see about that!"

  • @blitzar8443
    @blitzar8443 ปีที่แล้ว +32

    We've seen people download RAM but now you can download RTX too. Truly incredible

    • @o0julek0o
      @o0julek0o ปีที่แล้ว +1

      We really live in the future 😂

  • @roboltamy
    @roboltamy ปีที่แล้ว +70

    Always cool to see someone pushing the boundaries of redstone graphics

    • @torinmorris6648
      @torinmorris6648 ปีที่แล้ว +2

      boundaries with current hardware

    • @skysho7867
      @skysho7867 ปีที่แล้ว +2

      If only they optimize the redstone.

  • @Sloimay
    @Sloimay ปีที่แล้ว +29

    Absolutely insane build, and very smart approach of using a "special case CPU" for such computations, it's not an approach we see often. :)

  • @sammyuri
    @sammyuri ปีที่แล้ว +33

    yoooo this is crazy dude
    have you heard of MCHPRS? it's like carpet mod except the speedup is more on the order of 10,000x (so builds of this size can run within a reasonable amount of time), definitely recommend if you're gonna be making more stuff like this

    • @blinking_dodo
      @blinking_dodo ปีที่แล้ว +3

      Yeah, he should seriously use the MineCraft High-Performance Redstone Server, it really speeds things up to awesome levels.
      I joined the test server when they were first testing it.
      It was funny to see how fast things could go if you ignore everything except the redstone itself...

    • @heatshield
      @heatshield ปีที่แล้ว

      I’ve been thinking of going there with my build. Are there any requirements like minimum release versions, time constraints, build size etc?

  • @lucaswatt5274
    @lucaswatt5274 ปีที่แล้ว +13

    Seriously impressive, especially for one of your first redstone builds! You earned my like and sub :)

  • @JoshBlueMoon5
    @JoshBlueMoon5 ปีที่แล้ว +5

    This has to be one of the most insane things ive seen in my 12 years of playing this game, good job

  • @charliebewsey6872
    @charliebewsey6872 ปีที่แล้ว +2

    This is going to feature on one of those "top 10 craziest redstone builds" alongside the other mental cases making this type of stuff, great job man! wish i had the mental capacity for it myself

  • @Friedslick6
    @Friedslick6 ปีที่แล้ว +14

    Could records in shulker boxes help compress and simplify the build? That is, each record outputs a specific signal strength and each shulker box can hold 27 records, so you could make larger transfers of data quickly and even create solution tables for instant calculations.

  • @LordPfrog
    @LordPfrog ปีที่แล้ว

    This was an awesome project and your video describing it was great! I really appreciated the insights into how to prevent just chaining pieces because that gets really confusing really quickly. Instead, having this instruction set feed and your explanation on the way you'd like the adder and multiplier etc, really helped me understand how to think about this kind of project! The blender recreation was really cool too! Thank you!

  • @algorithm-artisan
    @algorithm-artisan ปีที่แล้ว +1

    That's insane, some hard-core madness right there. Congrats man, amazing content.

  • @-Name-here-
    @-Name-here- ปีที่แล้ว

    That’s really cool, and you explained it very well. Unironically taught me something about actual everyday computers I didn’t get. Good job!

  • @top_misha
    @top_misha ปีที่แล้ว

    This is so cool! Good luck in new projects!

  • @russianyoutube
    @russianyoutube ปีที่แล้ว

    That is awesome! Good luck in future projects

  • @LightslicerGP
    @LightslicerGP ปีที่แล้ว +1

    This is underhyped, the amount of effort put into this and logic put behind it is immense.
    Keep up the work!

  • @TheREALLofiat
    @TheREALLofiat ปีที่แล้ว +2

    Before watching this video, the idea of a Redstone raytracer was foeign. By the end of it not only did I see it and it was functioning, but I understood how it worked. This video is one of the best videos I've seen of this topic.

  • @nekrugderzweite8298
    @nekrugderzweite8298 ปีที่แล้ว +1

    Crazy. Its all magic for me but it is incredible! Great work! And i cant imagine what wiöl be build in a few years

  • @nano_redstone
    @nano_redstone ปีที่แล้ว +1

    Very cool build I can't wait to see the future !

  • @0tter501
    @0tter501 ปีที่แล้ว +2

    This is insane, you watch one tutorial series, and then you make a perfect ray tracer, amazing but also unbelievable, maybe you could help some major mc PC project

  • @ludfde
    @ludfde ปีที่แล้ว

    Amazing clear and fast summary

  • @thexadgaming
    @thexadgaming ปีที่แล้ว

    This is amazing, I wish I could do this level of stuff. 10/10 content, keep up the AMAZING work!

  • @Iservenoodles
    @Iservenoodles ปีที่แล้ว +5

    Underrated brooo
    The people who just make a 2x2 door get way more attention rather than this masterpiece bro your on the same level as sammyuri and mattbatwings😯

  • @Oneye.
    @Oneye. ปีที่แล้ว +2

    Great high-quality content, and good explanations! Commenting for the algorithm.

  • @consuminhelium3346
    @consuminhelium3346 ปีที่แล้ว

    Amazing video! Awesome work and a very intuitive explanation :D

  • @lilv728
    @lilv728 ปีที่แล้ว

    Bro this is just unbelievable. The amount of work you probably put into this. Good on you! Great content for sure!

  • @sorean4532
    @sorean4532 ปีที่แล้ว +1

    Insane tech but what amazes me the most is the amount of passion, knoweledge, patience and effort you had to invest on this project

  • @_m6_
    @_m6_ ปีที่แล้ว

    This is amazing, great work.

  • @redstoneruleseveryday5923
    @redstoneruleseveryday5923 ปีที่แล้ว

    Awesome video dude it's insane what can truly come from redstone

  • @lemonlordminecraft
    @lemonlordminecraft ปีที่แล้ว

    Goodness gracious!!! What an excellent breakdown!

  • @The_Horizon
    @The_Horizon ปีที่แล้ว +7

    do not team up with sammyuri

    • @cheesymanbutyes
      @cheesymanbutyes ปีที่แล้ว

      Hey can you please respond to my reply 🥺

  • @mr.fishfish570
    @mr.fishfish570 ปีที่แล้ว

    Wow, awesome man!

  • @AQLV
    @AQLV ปีที่แล้ว +1

    This is so amazing considering the complexity of ray-tracing. Less than 6 years ago the first real time RT silicon chips were rolling out of TSMC... Now this. Multiple layers of software and overhead and it renders an image in under a week, when dedicated RT hardware used to render some similar 20 years ago IRL.

  • @roadddkill
    @roadddkill ปีที่แล้ว

    Never fails to amaze me how redstone can be utilized by someone, this is some seriously amazing stuff dude.

  • @playbyan1453
    @playbyan1453 ปีที่แล้ว

    I'm just speechless, just how amazing this is.

  • @jojojorisjhjosef
    @jojojorisjhjosef ปีที่แล้ว

    I actually sort of understood most of this. Great work.

  • @unknownastroid_2240
    @unknownastroid_2240 ปีที่แล้ว

    You taught me more in a video then school did in a year

  • @PNWMan
    @PNWMan ปีที่แล้ว +2

    Very interesting control scheme! It's not quite a processor in the traditional sense, it's more of like an application-specific circuit which probably makes it much faster. I wonder if you make some approximations or culling if you could get 3 or 4 bounces of the rays to do things like basic shadows and reflection in a reasonable amount of time.

  • @williamcoolchannel
    @williamcoolchannel ปีที่แล้ว +2

    This is so cool! 😊

  • @diegoabarza3069
    @diegoabarza3069 ปีที่แล้ว

    Amazing!! Nice video

  • @retroman7581
    @retroman7581 ปีที่แล้ว

    What a flex, nice work

  • @kyugokato2262
    @kyugokato2262 ปีที่แล้ว

    This is soooo cool Incredible

  • @FireJach
    @FireJach ปีที่แล้ว

    man, i feel like during a lecture. good job

  • @KjipGamer
    @KjipGamer ปีที่แล้ว

    Definitely also recommend Sebastian Lague's computer experiments, they're very informative!

  • @SamanMC
    @SamanMC ปีที่แล้ว

    redstone explains how computer codes such as 1 and 0 codes work great job btw

  • @ThunderBlastvideo
    @ThunderBlastvideo ปีที่แล้ว

    I love how you explain it, not just show it

  • @DeerJerky
    @DeerJerky ปีที่แล้ว

    This is amazing! Can't wait until ray traced minecraft somehow becomes playable in unray traceable minecraft

  • @rezaarfam1367
    @rezaarfam1367 ปีที่แล้ว +1

    a truly masterminded redstone engineer lmao

  • @Skyprex
    @Skyprex ปีที่แล้ว

    Really interesting!

  • @esaedromicroflora1247
    @esaedromicroflora1247 ปีที่แล้ว

    I'm surprised that I understood A LOT. Great content, great teacher

  • @mineless1
    @mineless1 ปีที่แล้ว

    Well done!

  • @nimiugn
    @nimiugn ปีที่แล้ว

    okay wtf THIS IS MAD IMPRESSIVE!

  • @bengineer8
    @bengineer8 ปีที่แล้ว

    Awesomely awesome and kick awesome.

  • @kylebowles9820
    @kylebowles9820 ปีที่แล้ว

    nice work! fun

  • @glitchreloaded1284
    @glitchreloaded1284 ปีที่แล้ว +2

    Hey as a by the way, to my understanding of redstone you could speed the renderer by using things like rail instant wires and observers more than redstone dust as the signal(IIRC) going through dust is slower because it needs to send the signal through each piece of dust in sequence, if this isn't the case do let me know

    • @cyborgbob1017
      @cyborgbob1017 ปีที่แล้ว

      It probably is but theres advantages to both

  • @fruittree1670
    @fruittree1670 ปีที่แล้ว

    incredible work mate! instead of using read stone lamps though, wouldn't it be possible to use command blocks to set pixels in a block display? not only could you render in colour, but the coloured rendering would make reflections work better if you ever chose to render more than one ray.

  • @realoscar91
    @realoscar91 ปีที่แล้ว

    yo this is super cool!

  • @migsy1
    @migsy1 ปีที่แล้ว

    This is so cool!!

  • @photoncraft1109
    @photoncraft1109 ปีที่แล้ว

    Great Job.
    You Deserve 1M Subs

  • @NF-pk5mo
    @NF-pk5mo ปีที่แล้ว

    Holy shit this is awesome but i like going outside 😢 hope this mans took a long break can't imagine how long that took

  • @manitoba-op4jx
    @manitoba-op4jx ปีที่แล้ว

    bro just broke down bus theory in a really beginner friendly way. i'm proud

  • @senex_0372
    @senex_0372 ปีที่แล้ว

    Wow crazy dude… Even your red stone system visually is very cool and easy to understand… (i mean how works, not to make it 😂)

  • @deliverick9695
    @deliverick9695 ปีที่แล้ว +1

    today, on stuff that i will never build, but i enjoy watching people do. xD

  • @v.i.l.7848
    @v.i.l.7848 ปีที่แล้ว +6

    О того количества механизмов в этом видео у меня глаза расширились от удивления!

  • @mrunboxeryt999
    @mrunboxeryt999 ปีที่แล้ว

    New calibrated sculk sensor is very useful to transfer a chunk of data from one place to another super efficiently

  • @LunarcomplexMain
    @LunarcomplexMain ปีที่แล้ว

    Having a signal pass through the entire system while only needing to select which part of the ALU accepts this signal was a pretty good idea

  • @c64cosmin
    @c64cosmin ปีที่แล้ว

    You should get a job for a chip manufacturer 😊 awesome job ❤

  • @imdunes
    @imdunes ปีที่แล้ว

    This is complicated on top of complicated, insane.

  • @TreeFrogOnATree
    @TreeFrogOnATree ปีที่แล้ว

    always loved seeing people go ham with redstone lol

  • @silvv.
    @silvv. ปีที่แล้ว

    such a good video ngl

  • @shadichy
    @shadichy ปีที่แล้ว

    we've all been waiting for this time
    finally, ray tracing in java edition
    (although it's not)

  • @homework8969
    @homework8969 ปีที่แล้ว +1

    One optimization would be using 0-tick logic instead of regular logic It would still be quite slow but a lot faster than what it is currently

  • @blueshoregaming1591
    @blueshoregaming1591 ปีที่แล้ว

    You are amazing.. I don't know why am I only finding you 😋

  • @thatrandomscientist1704
    @thatrandomscientist1704 ปีที่แล้ว

    Amazing video

  • @thealdoc
    @thealdoc ปีที่แล้ว

    I love how the structure looks like a giant computer , and it IS a giant computer

  • @GhostVvar
    @GhostVvar ปีที่แล้ว

    Interesting, my favorite part is when the do-hicky does the thingy with the whatchamacallit instead of a kajigger.

  • @MECKENICALROBOT
    @MECKENICALROBOT ปีที่แล้ว

    My dude!! Hex is next!

  • @randomsnow6510
    @randomsnow6510 ปีที่แล้ว +2

    Like this so he can see:
    theres a mod called MCHPRS, it compiles redstone to a graph in rust so it can be executed much faster
    its the same mod used to make the minecraft in minecraft redstone computer run in real time.

  • @skanslovakia553
    @skanslovakia553 ปีที่แล้ว +7

    Do you think it could be further optimised to render an image faster?

    • @georg240p
      @georg240p  ปีที่แล้ว +3

      Absolutely, Even if you stick with my general design, you could probably make this 2-3x faster just by syncing the individual components and getting the timings right... I only realized halfway through how important timing is.
      Also a lot of the operations performed don't even come close to requiring 20bit precision - so you could use different data types.
      I've also been told vectorizing the data could work well for such a simple raytracer. Who knows how much this could speed up things.

  • @Minecraftster148790
    @Minecraftster148790 ปีที่แล้ว

    huh, so this wasn't clickbait after all, glad I clicked

  • @MinerBat
    @MinerBat ปีที่แล้ว

    if you want use color you can use a map display. i can help with that if you want, since i know a lot about those

  • @megathe2136
    @megathe2136 ปีที่แล้ว

    You're designing freaking semiconductors!!!

  • @jarziii_yt6476
    @jarziii_yt6476 ปีที่แล้ว

    when i first saw this the most impressing thing was the size

    • @georg240p
      @georg240p  ปีที่แล้ว +1

      size is usually a bad thing for redstone stuff lol. The goal is ususally to make it as compact as possible.

  • @Krea
    @Krea ปีที่แล้ว

    I love how hes blowing up a second time

  • @orionemoray3990
    @orionemoray3990 ปีที่แล้ว +1

    Instant wires could also add to efficiency

  • @g45h96
    @g45h96 ปีที่แล้ว

    Crazy crazy work. The single bus design is no doubt the simplest way to go, but terribly inefficient. If you were to make a seperate input and output bus, as well as input and output registers on every logical unit, you could do what's called pipelining. Which basically boils down to decoding an instruction and preloading the data, while the current operation is executing, while the data from the last operation is being sent to where it needs to be. Say, for example, those million cycles it runs. Right now nothing is synced by a clock, meaning operations could take anywhere from 1 game tick to I'd guess 15 or so. The operations wouldn't get any faster, but, effectively, an operation would be completed every 1-5gt. Those million cycles, that at a 15gt average takes 8 days, would complete in a little under 3 with a 5gt average.

  • @SrVerataro
    @SrVerataro ปีที่แล้ว

    We're so close, soon enough we'll be able to actually properly run doom in minecraft

  • @seccuenta50ydos
    @seccuenta50ydos ปีที่แล้ว +1

    Very cool

  • @josiahmarsh9453
    @josiahmarsh9453 ปีที่แล้ว +1

    Ok hear me out... It wouldn't actually be terribly hard to implemented multithreading. You could divide the display into 4 (or even 16, but I question if that would be efficient with how much your world would lag) tiles and have parallel instances of this machine working on a tile each. Since no pixel is dependent on any other pixel to begin computing, you should be able to divide the work from your input between copies of the logic/memory you've built here, and then merge their outputs together at some kind of an asynchronous output listener that puts them on the screen.

  • @simonkhouryAU
    @simonkhouryAU ปีที่แล้ว

    impressive!

  • @tihan9142
    @tihan9142 ปีที่แล้ว

    I have just saw the video of mattbatwings and your video came in front of me 🔥

  • @WO0L
    @WO0L ปีที่แล้ว

    dude woke up and was like "I'm going to build a ray-tracer in minecraft"

  • @mistake_7176
    @mistake_7176 ปีที่แล้ว

    NOW THATS ENDLESS POSIBELITIES,THATS MINECRAFT THE GAME OF THE DECADE

  • @RedStoneMatt
    @RedStoneMatt ปีที่แล้ว +2

    This guy is the NileRed of redstone, soon enough he's gonna make a "I made a real life working nuclear bomb using redstone" I swear

    • @WibleWobble
      @WibleWobble ปีที่แล้ว

      run this world on a shitty pc and thats how you get a nuclear bomb

  • @zeph0shade
    @zeph0shade ปีที่แล้ว

    All the crazy computers people have made out of redstone kind of goes to show how redstone is actually more intuitive than complex... The trick is approaching such a project with an understanding of computers, not an understanding of redstone. The mechanics of redstone itself are surprisingly intuitive by comparison.

  • @hashdankhog8578
    @hashdankhog8578 ปีที่แล้ว +1

    Do you think it would be possible to do full on path tracing with a form of dithering to make so it doesn't look 100% monochrome. Also, this is incredible.

    • @georg240p
      @georg240p  ปีที่แล้ว +1

      Dithering would be easy, it is often done by just adding some noise to the final color of the pixel. And if you use a multi colored screen, it could actually look pretty good.
      For example you could use gray blocks that use gravity (gravel, concrete powder in white, light_gray, gray, black) and then push these blocks with pistons so they fall down to their location on the screen.

  • @hellohennessy3462
    @hellohennessy3462 ปีที่แล้ว

    Wouldn't using powered rails and observers for the wires faster than redstone dust and repeaters?