I Made a Multi-Line Renderer with just Redstone!

Sdílet
Vložit
  • čas přidán 28. 05. 2024
  • Welcome back to another journey video. Today I make a line drawer using Bresenham's Algorithm, and exploit passthrough screens to draw many lines at once. I hope you enjoy :D
    Patreon: / mattbatwings
    Discord: / discord
    My socials: linktr.ee/mattbatwings
    My texture pack: modrinth.com/resourcepack/mat...
    World Download: (JAVA 1.18.2) www.planetminecraft.com/proje...
    Line Drawer Inspiration: • BIGGEST RENDER EVER - ...
    Passthrough screen: • Logical Redstone Tutor...
    Thank you @Sloimay for lots of miscellaneous help.
    Bresenham's Algorithm explanation: csustan.csustan.edu/~tom/Lect...
    Generalized Bresenham's Algorithm explanation (all octants): www.uobabylon.edu.iq/eprints/...
    Generalized Bresenham’s Algorithm tweaked to help parallelize hardware: imgur.com/a/2uT7LaV
    -------------------------
    Want to get more involved in the logical redstone community?
    Learn Logical Redstone! • Logical Redstone Reloaded
    Open Redstone Engineers (ORE): openredstone.org/
    0:00 Introduction
    0:59 Bresenham's Algorithm
    6:03 Initialization Component
    7:55 Iterator Component
    9:15 Main Loop Component
    10:55 Assembly
    12:21 New Plan
    13:33 Screen
    14:48 Working Line Drawer!
    15:27 Showcase
    Music:
    Valence - Infinite [NCS Release] • Valence - Infinite | F...
  • Hry

Komentáře • 2K

  • @tanveshkaviskar442
    @tanveshkaviskar442 Před rokem +4454

    Matt in 2040: I made Ray tracing using redstone

    • @index7787
      @index7787 Před rokem +158

      it's doable, did it in factorio, he could probably pull it off.

    • @rtsbass7829
      @rtsbass7829 Před rokem +218

      Matt in 2050: I made a fully playable minecraft inside a minecraft and then beat it

    • @_m1ckey
      @_m1ckey Před rokem +107

      Matt in 2060: I made a Blender in Minecraft with extra functionality

    • @twhylerm
      @twhylerm Před rokem +92

      @@rtsbass7829 Then in 2070, *i made minecraft inside minecraft inside minecraft and then beat it.*

    • @PeteWondersWhyHisNameIsSoLong
      @PeteWondersWhyHisNameIsSoLong Před rokem +68

      Matt in 2087: I made a completely new game engine and made minecraft in the game engine

  • @quads4407
    @quads4407 Před rokem +2074

    The power of this man is getting out of hand.
    Next video will be: "I made a simulation of our entire universe using redstone" or "Real time RTX rendering with redstone GPU"

    • @bnjmn21
      @bnjmn21 Před rokem +58

      rtx might actually be possible. After all its just simulating a *few* light rays. would look like crap on a black-white display tho

    • @devhonk1722
      @devhonk1722 Před rokem +20

      @@bnjmn21 idk dithering might help a bit
      also in realtime will be impossible ig

    • @user-JL
      @user-JL Před rokem +32

      Matt in some time: "I made a copy of my mind using redstone, now I'm immortal."

    • @therealloganyt237
      @therealloganyt237 Před rokem +6

      Real life GPU: 🫠

    • @therealloganyt237
      @therealloganyt237 Před rokem +3

      @@devhonk1722 true

  • @0mrlolman0
    @0mrlolman0 Před rokem +614

    I love how you rendered a three-dimensional representation of a cube, on a two-dimensional screen, in a simulated three-dimensional game, rendered as a two-dimensional image on my three-dimensional monitor. More layers than a lasagna!

    • @SonusSpeaker
      @SonusSpeaker Před rokem +79

      And he made that with his four-dimensional brain, meanwhile I'm trying to process this with my one-dimensional rasin

    • @dpcubing1521
      @dpcubing1521 Před rokem +29

      the light from said monitor going to a two-dimensional grid of rods and cones in your eyes, perceived as three-dimensional in your brain

    • @PlotagonEditor_lol
      @PlotagonEditor_lol Před rokem

      and your three-dimensional eyes are perceiving the light while your 3 dimensional mouth i most likely eating something while sitting/laying on a 3d bed/chair in a 3d house in a 3d neighborhood in a 3d town/city in a 3d province/state in a 3d country in a 3d continent in a 3d planet in a 3d solar system in a 3d galaxy in a 3d local group in a 3d universe made of 1d time-space strings

    • @qwerty4o4
      @qwerty4o4 Před rokem +6

      Dude's achieved Inception.
      Does anybody actually get this reference?

    • @theanomynusguy
      @theanomynusguy Před rokem +1

      @@qwerty4o4 i've watched the movie, but still don't understand

  • @maxinealexander9709
    @maxinealexander9709 Před rokem +548

    because the screen is pass-through, you could parallelize the loop to draw multiple segments of a given line at the same time.
    eg 4 cores each do 1/4th of the loop so 4 parts of a line are drawn at a time :)

    • @mattbatwings
      @mattbatwings  Před rokem +253

      YOOOO I’m definitely using that when I add onto this project. Thanks dude

    • @sword0948
      @sword0948 Před rokem +115

      Oh god.. Adding parallel processing to Minecraft redstone

    • @zdiblo
      @zdiblo Před rokem +31

      @@mattbatwings btw if parrel line drawing will be efficent enough you can try making geometry with that like rects or other good stuff, just like in lwjgl and it can be used to make next level minecraft cpu games, you need like fast method to draw polygons

    • @MINIMAN10000
      @MINIMAN10000 Před rokem +23

      @@sword0948 I mean it was already parallel in the sense that X line were being drawn at once. This would be X line processes drawn across Y partitions.
      It's definitely GPU level territory.

    • @Zamu273
      @Zamu273 Před rokem +3

      @@sword0948 it's been added for a while now I think
      I might be wrong tho

  • @adibozzhanov3101
    @adibozzhanov3101 Před rokem +1289

    Time to sit and pretend that I understand everything, while simply being amazed at how he managed to make a 3D render with a bunch of sticks and rocks.

    • @electronpie
      @electronpie Před rokem +120

      In the title he said that it's a "line renderer", so imo it might just be a 2D renderer. Nevertheless, quite sick!

    • @thegr8hatty
      @thegr8hatty Před rokem +421

      2d render of a 3d object on a 2d display in a 3d game on a 2d screen rendering it all

    • @mattbatwings
      @mattbatwings  Před rokem +289

      @@thegr8hatty as crazy as that message is, it’s the most accurate one yet LOL

    • @watema3381
      @watema3381 Před rokem +24

      @@mattbatwings I'm learning Python thanks to you!

    • @O5MO
      @O5MO Před rokem +23

      @@thegr8hatty but the 3d object is not rendered/calculated by the machine itself

  • @serekqwerty
    @serekqwerty Před rokem +760

    To be honest, I like it more when you take your time to go more in depth. I understand that you want to keep your videos short, but maybe a second channel or a second wideo with longer and more in depth explanations? Flappy bird and 2028 videos were perfectly followable and I felt that I am completely able to also build this kind of thing.
    P.S.
    You're amazing

    • @mattbatwings
      @mattbatwings  Před rokem +157

      not a bad idea, thanks for the feedback :)

    • @Lukas-qy2on
      @Lukas-qy2on Před rokem +42

      @@mattbatwings when you said you were gonna scrap it i checked how much of the video was left because i got sad and thought you might end it as a part 1, you made the logic so compelling to watch i think we easily would have been okay with a 30 min video haha

    • @orik737
      @orik737 Před rokem +11

      completely agree, wouldn't mind multiple parts to a video either, might help with the algorithm

    • @jacksidr6182
      @jacksidr6182 Před rokem +18

      @@mattbatwings Maybe I am biased because I have a background in electronics and programming, so for me, your videos are more about how you manage to do this thing within the limits of Minecraft, and not about algorithms themselves. So going into details on how you built and even debug it is the most interesting part for me. So I'd be down for quite long videos if you need to take your time to explain details. When I first found your videos, I binge-watched for 2-3 hours in a row, you are quite good at explaining things, and it's not getting boring as fast as you may think)

    • @aaaaaa-rr8xm
      @aaaaaa-rr8xm Před rokem +11

      @@mattbatwings the video actually makes me interested in programming

  • @Panimal
    @Panimal Před rokem +502

    This is the most impressive contraption I've ever seen

    • @mattbatwings
      @mattbatwings  Před rokem +70

      thanks! feel free to make a short on it :)

    • @cezarcatalin1406
      @cezarcatalin1406 Před rokem +14

      @@mattbatwings
      Hey, the best part about redstone is that the architecture doesn’t have to follow classic procedural iterative patterns. Parallelisation is powerful. I wonder if a divide-and-conquer approach would work. Like imagine making a redstone quaternary decision tree for the x and y axis that divides the screen into 4 regions and those regions into 4 regions and so forth until you reach pixel-level decision making. Binary numbers are passed through the tree from root to leaves (pixels). Each step removes one bit of information from the passing data and informs what sub-quadrants receive the data and which don’t. The last layer just receives 1s and 0s and determines if the pixel turns on or not. You could very easily draw filled rectangles with something like this since the X and Y decision splits can happen independently and at the last layer you just AND them.

    • @Ibadullah
      @Ibadullah Před rokem +6

      @@mattbatwings not too free you also have to credit

    • @PhoenixEditz_daOG
      @PhoenixEditz_daOG Před 7 měsíci +1

      @@cezarcatalin1406im not reading all that

    • @Kwenen
      @Kwenen Před 3 měsíci

      @@PhoenixEditz_daOG
      Cool, I thought about this too. This is an efficient parallel method, but recursive computation is an expensive feature in redstone, mainly because it uses a lot of RAM or Stack.
      I noticed this when I was trying to make this machine myself. Presumably this is the reason why the Bresenham straight line algorithm has not been replaced for a long time!
      But it would be pretty impressive if there was a way to draw an entire line quickly or instantly.

  • @dancorwin9232
    @dancorwin9232 Před rokem +348

    Your error explanation actually helped me better understand some of the automation equipment that I use at work. Super thankful for that!

  • @terminus9897
    @terminus9897 Před rokem +270

    Ever since 2014, Minecraft redstone had been in a sort of dark age. But as of the last few years there seems to be a resurgence in redstone technology, and I believe you are one the the people at the forefront of this resurgence.

    • @SquirrelTheorist
      @SquirrelTheorist Před rokem +16

      I always loved Redstone but I had no idea how useful it was. This is the way Minecraft SHOULD have been played

    • @magicianslucky602
      @magicianslucky602 Před rokem +6

      @@SquirrelTheorist Redstone farms are immaculately amazing

    • @swaggyjjalldayeveryday
      @swaggyjjalldayeveryday Před rokem +15

      Resurgence? Or a rediscovery of binary?

    • @freshlimesodastudios6525
      @freshlimesodastudios6525 Před rokem +5

      Some sort of rennaissance

    • @livedandletdie
      @livedandletdie Před rokem +8

      I mean, if you have checked out a lot of redstoners and redstone engineers the past years, you'd find that a lot of improvements have been occurring over the years.
      It hasn't been in a dark age, you've just not kept up with the actual inventors of new redstone technology.
      And I bet you that some of those people could simplify all of this, and make the calculations near instant.
      We have ways to use a single line of redstone to pass on more than a single bit of information.
      We have ways to read signal length, and signal strength, and to be able to encode and decode such inputs and outputs.
      Maizuma games made a lot of stuff with signal strength, it's a much more compact way to store and use redstone.
      And it could most likely be implemented in most of mattbatwings creations to make every part either smaller or faster.

  • @serekqwerty
    @serekqwerty Před rokem +210

    He is damn close to making a full on 2D game engine in there

  • @stickboi9589
    @stickboi9589 Před rokem +193

    i love when the builds actually look like electronic components, wish i could do it

  • @user-zi8jn1go8k
    @user-zi8jn1go8k Před rokem +77

    I like how you transition from python code to redstone, really clever approach to complex problems like this.

    • @10F2C
      @10F2C Před rokem +2

      Exactly. I can't read redstone if it's not mine.

  • @lima7132
    @lima7132 Před rokem +392

    This is just.. I have no words. It looks insane! And the drawing is so, so, SO FAST. I wonder how much lag each linedrawer adds to the system, but this is just out of this world, either way! Can't wait to see this on other projects and learn more about the algorythm :]

    • @grayb5736
      @grayb5736 Před rokem

      I mean yeah the code he copies is a efficient program ig

    • @CyCloNeReactorCore
      @CyCloNeReactorCore Před rokem +10

      @@grayb5736 bruh

    • @leuse5614
      @leuse5614 Před rokem +1

      @vv broscorp is just a bum, not worth the effort arguing
      as someone who's been programming for the greater half of my life,
      yeah, this i pretty basic computer science, but to implement it in minecraft is what makes this
      so entertaining and impressive. I'd also bet on bro not being able to do this lmao

    • @LandscapeAhoy129
      @LandscapeAhoy129 Před rokem

      The multiple line drawers add no lag…
      You have no idea what you’re talking about.

  • @elgordobondiola
    @elgordobondiola Před rokem +60

    Calculator→better calculator→graphic calculator → 3d line simulation → 3d environment simulation → Minecraft simulation → Minecraft in Minecraft

    • @ezrakornfeld8436
      @ezrakornfeld8436 Před rokem +8

      Then he rebuilds it in the Minecraft simulation so he has infinite Minecraft’s

    • @therealloganyt237
      @therealloganyt237 Před rokem +5

      @@ezrakornfeld8436 until the real-life GPU is dead

    • @cezarcatalin1406
      @cezarcatalin1406 Před rokem +4

      A simulation inside a simulation inside a simulation inside a simulation...

    • @elgordobondiola
      @elgordobondiola Před rokem +2

      Oh my god they actually did a 3d simulation

  • @3DPrinterAcademy
    @3DPrinterAcademy Před rokem +33

    Back in the day an 8 bit computer was impressive... but this is next level!!

  • @Swenthorian
    @Swenthorian Před rokem +32

    Now that you can draw lines, have something that gradually shifts the lines -- make a rotating cube, for example.

    • @Scotty-vs4lf
      @Scotty-vs4lf Před rokem +3

      you need to use sin and cos to calculate rotation. a 2d rotation matrix looks something like this (if i remember correctly)
      |x * cos(angle) y * -sin(angle)|
      |x * sin(angle) y * cos(angle)|

    • @Hyrum_Graff
      @Hyrum_Graff Před 4 měsíci

      @@Scotty-vs4lf A 9th order Taylor polynomial is usable to approximate sine and cosine for any angle-- not sure how to do exponentiation quickly though.

    • @Scotty-vs4lf
      @Scotty-vs4lf Před 4 měsíci +1

      @@Hyrum_Graff i think it would be better to just use a lookup table, you wouldnt need a ton of precision so you could easily just store like 64 values for each and do (int)(64(x/2pi)) to get the index
      i think thats the right math but i didnt try very hard lol so dont quote me

  • @Mxolqi
    @Mxolqi Před rokem +105

    I like the inclusion of python scripts to make redstone really feel like a programming language. You just got another sub from a craftymasterman enjoyer

    • @vinicus508
      @vinicus508 Před rokem +2

      Yeah, I love that too. It literally makes you understand what the high level code is doing on the low level.

    • @akalihoer5457
      @akalihoer5457 Před rokem

      @@vinicus508 when python gets called a low level language compared to this you know shit is getting real lmao

    • @akalihoer5457
      @akalihoer5457 Před rokem

      it's actually insane

    • @vinicus508
      @vinicus508 Před rokem +1

      @@akalihoer5457 no, redstone is the low level. Not python lol. I was referring for example to how he made a for loop in redstone, and that gives us an idea of how a machine does it in low level.

    • @Enderplays12
      @Enderplays12 Před rokem

      @@vinicus508 High/low levels refer to abstraction. The logic of the code is much more abstracted in redstone, since the Python structure was the reference for the underlying functions. In this context, Redstone is the higher level language.

  • @rayredondo8160
    @rayredondo8160 Před rokem +36

    BTW, the "normal" way to make Bresenham's Algorithm work for more points is to flip and/or negate X and Y, then flip and negate them back on the other side. If you're interested, I have some video links to another channel that talked about those. What you did though is very impressive in its own right because you managed to keep the high throughput with the bulk of the algorithm being bigger. Congratulations!

    • @mattbatwings
      @mattbatwings  Před rokem +12

      Im interested! Link them if you can, sometimes youtube deletes it but let's hope not

    • @rayredondo8160
      @rayredondo8160 Před rokem +14

      @@mattbatwings Alright, here goes nothing.
      The channel I'm mentioning is thebennybox; he made a tutorial series on building a 3D software rendering engine in Java: czcams.com/play/PLEETnX-uPtBUbVOok816vTl1K9vV1GgH5.html
      I would link a specific video about line drawing there, but there are a lot in that general area, since the system was incrementally improved over the series.
      On his other channel, bennyscube, he made a triangle rasterizer that I believe also used Bresenham to scan the sides of the triangle. It's a very small scale, but I bet you could probably do something like it in a more optimized way using modern redstone techniques.
      Anyway, that's all I have for now. Great video as always, can't wait to see what's next!

  • @aCrumbled
    @aCrumbled Před rokem +13

    THIS IS SO COOL! i’m a comp sci kid and i’ve always been interested in redstone but never thought it could be used like this. great video i’m so amazed.

  • @VirtuaVirtue
    @VirtuaVirtue Před rokem +4

    i love these massive structures that clearly arent intended for people to walk around, and its probably the reason i love environments like rain worlds so much. they feel foreboding and alien, and a million times more significant than you while youre trapped in the maze of transistors and wires trying not to fall through an endless grid of components.
    i think 15:36 kinda sparked this thought

  • @gr31f
    @gr31f Před rokem +148

    I know this is gonna be a masterpiece, that's why I'm so certain with liking the video before even this video premiere

    • @solalabell9674
      @solalabell9674 Před rokem +1

      I know by sight that Your profile picture is Rick roll link

  • @ainaracatgirl
    @ainaracatgirl Před rokem +106

    I'd love to see this connected to a sort of "GPU" that calculates 3D cubes like the one you showed at the end, but from any angle.
    Love your videos!

    • @nikkiofthevalley
      @nikkiofthevalley Před rokem +11

      It would be very slow. Redstone does have a speed limit. (Around 5 Hz for computational redstone, for some types of instant redstone you can get faster, but the speed of those is just too fast for the instant logic gates we know of right now)

    • @ainaracatgirl
      @ainaracatgirl Před rokem +12

      @@nikkiofthevalley I know it would be slow, but it would be cool nonetheless.

    • @khanhnguyenbao5962
      @khanhnguyenbao5962 Před rokem +3

      @@nikkiofthevalley can't we use fast tick speed ?

    • @nikkiofthevalley
      @nikkiofthevalley Před rokem +4

      @@khanhnguyenbao5962 I mean, sure, but the faster the tick speed is, the more laggy the game gets, so it ends up balancing out at a certain point.
      You could also use the technique used in actual graphics cards, where you have many of the same circuit, so you can process a lot of stuff at once. That still has a problem in Minecraft, lag. Too many redstone components updating too quickly causes immense lag.

    • @linuxization4205
      @linuxization4205 Před rokem +2

      @@nikkiofthevalley Code an optimized minecraft server so it can handle fast tick speeds with redstone faster.

  • @arcader9184
    @arcader9184 Před rokem

    I really like how you go into depth about not only how you researched the idea but also how you developed, and understood it. This is a crucial element that many videos miss, usually just jumping to the finished product. This really goes for any video that has to do with programming or something technical. Great job!

  • @Frrk
    @Frrk Před rokem +2

    I love how you show the whole process! People often just showcase their builds instead of explaining them.

  • @SlamTheDragonPersonal
    @SlamTheDragonPersonal Před rokem +7

    The blender cube has evolved

  • @J.P.300
    @J.P.300 Před rokem +61

    OH MY GOD! You're building stuff with Redstone the world has never seen before! Without even knowing how the renderer works I think I already know, this is a true masterpiece!

  • @tomergngn
    @tomergngn Před rokem

    I think it's the first time I've seen something THIS complicated and still understood everything you explained! most redstoners don't go out of the redstone world to explain their thought process, but you nailed it! it felt as if I've been making this with you, and at the end I could tell what was happening and didn't just saw it as a bulk nothing.
    You earned a new sub, and I hope to see more from you!

  • @kshounishbhadra-bhaduri8602

    this is unbelieveable!! also, the first time I've genuinely been convinced to go through and click on a channel to go find the rest of the videos. absolutely love the content, keep it up! you've earned a new fan 😊

  • @parwatidevi415
    @parwatidevi415 Před rokem +40

    Matt in 2050 : Builds a prime number calculator , solves rieman hypothesis 😂😂

  • @gungun974
    @gungun974 Před rokem +35

    So I wonder where was the famous video promised for this weekend but now seeing the thumbnail just before the premiere.
    I think the wait was well deserved ^^

  • @Ampheon181
    @Ampheon181 Před rokem

    I really like the presentation of this video! Showing off each component, then putting them all together made it much easier to understand and engage with.

  • @HansLemurson
    @HansLemurson Před rokem

    This is really nice work! Great video production too.
    It's impressive how many complicated things can be reduced to repeated addition/subtraction/comparison.

  • @Digby8
    @Digby8 Před rokem +12

    Can't wait! Sadly it's gonna premier at 2AM for me.

  • @nezu_cc
    @nezu_cc Před rokem +41

    I love you man. I thought classic redstone was dead for a long time. Most people nowadays do everything in command blocks/data packs/server plugins or even mods. I started playing Minecraft right before 1.5 dropped(I'm not that young, I just started playing later than most people). The classic redstone is what I "grew up" on. As cool as the modern stuff is, raw logic gates is where my heart is. Thank you for bringing back the good old memories. Can't wait for the next video.

    • @livedandletdie
      @livedandletdie Před rokem +1

      There has been a lot of classic redstone done still, it's mostly because most people don't know about the people that actually advance redstone tech... because who in the hell looks up signal strength decoders and encoders and then signal length decoders and encoders, you can do the weirdest stuff with both, and I don't think a lot of people actually know about every instance of redstone engineering out there.

    • @jwonz2054
      @jwonz2054 Před rokem

      @@livedandletdie Redstone tech just seems like a huge waste of time/energy.

    • @Pixiuchu
      @Pixiuchu Před rokem +4

      @@jwonz2054 If it's fun for the people to learn more about it, then I disagree.

    • @autumnuniverse1940
      @autumnuniverse1940 Před rokem +1

      @@jwonz2054 waste???
      You’re funny 😂

  • @silvertakana3932
    @silvertakana3932 Před rokem

    Content like these are very impressive! Showing the hard work that was poured into this video proves how dedicated you are to this CZcams channel! You’ve earned my respect. Subscribed! ;)

  • @Interpause
    @Interpause Před rokem

    your step by step explanations are really good, it shows what is needed when tryna plan a difficult redstone build

  • @RexxStone
    @RexxStone Před rokem +45

    This is crazy man :D Love how you presented all this complex stuff in a way that's easily understandable. That Bresenham algorithm explanation was so much better than anything I had at Uni!

  • @jofoxthecat727
    @jofoxthecat727 Před rokem +27

    This man needs WAY WAYYYY more attention. This is so amazing and super clean... i wish i would undestand what these modules are for and so on (He explained what he build or how they are called but how he got the idea of building it like this is what is amazing).

    • @livedandletdie
      @livedandletdie Před rokem +2

      Well he has input panels, that take the inputted data and does a transformation of that data, via simple addition and subtraction, and then sends that data to a screen, which then you guessed it, draws pixels using said data.
      Step 1, take input. Step 2, calculate ΔX and ΔY and a few other values, then compare ΔX and ΔY add or subtract those other values when needed. Those other values are what determines the direction of the slope. They're based of whether the signs of δx and δy are positive or negative. That's all you really need.
      Let's use the 8 part division and explain, it using that, the first 2 parts, are both positive signed, the next 2 have a negative sign for x and a positive sign for y, the next 2 thereafter all negative signs, the next 2 parts the last part have positive x and negative y.
      Then there's a value that interchanges whether you're in the first or second part of each of the divisions, as it decides whether to use ƒ(x) or ƒ(y) as the plot calculations.
      It's a really really complicated way to simply say plot x1,y1 to x2,y2 no matter what x1 or x2 or y1 or y2 are. You determine which quadrant using 2 signed values, S1 and S2, then you determine whether you should run it as a function in regards to x or in regards to y, then it's basically just the same as calculating a single slice, with A B and E.
      So yeah, it's very math heavy, but nothing is actually that difficult.
      It's basically point A - Point B, what is the difference, okay, is it negative or is it positive? okay, is it y dependent or is it x dependent?
      Then use algorithm 1, else use algorithm 2... take result draw point, go back to more math.

    • @jofoxthecat727
      @jofoxthecat727 Před rokem

      @@livedandletdie ok. I can't believe you just typed that whole message O.O
      xD but ty. Ig I could try that errrrr errmm

  • @schlopping
    @schlopping Před rokem +10

    As an experienced programmer with some CS and computer engineering knowledge, no amount of tutorials can lead you to something as amazing as this. You have true talent.

  • @vanirie434
    @vanirie434 Před rokem

    I've been going through the redstone computation videos and honestly I think the presentation on the showcase in this one is my favourite. There's something absolutely heartstopping about the way the cube and the star get drawn and it suddenly clicks into place.

  • @xtecherstudios
    @xtecherstudios Před rokem +46

    Damn, this is mad, from redstone dust to a 3d renderer

    • @-Average-
      @-Average- Před rokem +2

      2d renderer
      but still amazing

    • @xtecherstudios
      @xtecherstudios Před rokem

      @@-Average- with certin shapes it can render 3d stuff, like the cube

    • @-Average-
      @-Average- Před rokem +1

      @@xtecherstudios yeah but you would have to calculate and input the lines to make the cube. So technically yes but it's not able to generate 3d shapes automatically

    • @Hamderovrefrastedetder
      @Hamderovrefrastedetder Před rokem +1

      @@-Average- Next video: Building a working 3090 TI in minecraft

  • @sudoker0
    @sudoker0 Před rokem +10

    Matt in 2049: I just made an AI that can talk like a human using redstone.

  • @TRADEChannel
    @TRADEChannel Před rokem

    That screen... It's really marvelous)) Awesome man - awesome content!!!

  • @kittiecandy747
    @kittiecandy747 Před 2 měsíci

    this is really well explained and presented. every time i had a question you addressed it immediately

  • @maaz4354
    @maaz4354 Před rokem +5

    I dont understand why you have 37K subs you should have like more than 100K. This one is gonna be awesome!

  • @granie300
    @granie300 Před rokem +8

    Man the music you used in the showcase made me emotional. So much Nostalgia. You earned a subscriber :)

  • @aidenbagshaw5573
    @aidenbagshaw5573 Před rokem +4

    The most impressive part is how you took something that I’d have thought would be incomprehensible to the human mind, and explained it in a way that I actually understood.

    • @MarcABrown-tt1fp
      @MarcABrown-tt1fp Před rokem

      Incomprehensible to "your" mind. ;)

    • @novameowww
      @novameowww Před rokem

      @@MarcABrown-tt1fp clearly it wasn't

    • @MarcABrown-tt1fp
      @MarcABrown-tt1fp Před rokem

      @@novameowww Past tense mate, speaking for all humans is highly inaccurate is the point. 👍

    • @novameowww
      @novameowww Před rokem

      @@MarcABrown-tt1fp i know, i'm just foolin'

    • @MarcABrown-tt1fp
      @MarcABrown-tt1fp Před rokem

      @@novameowww Oh... I couldn't tell haha! Cheers. 😏

  • @iyxan2340
    @iyxan2340 Před rokem

    the explanation is absolutely magnificent!

  • @user-JL
    @user-JL Před rokem +5

    one thing mojang could add would be a redstone lamp that changes color or light intensity depending on the redstone signal strength
    it would be very interesting to see what the redstone engineers would come up with

    • @stickworldanimated9545
      @stickworldanimated9545 Před rokem +1

      That is a great idea!

    • @stickworldanimated9545
      @stickworldanimated9545 Před rokem +1

      Or a lamps with different colors too!

    • @unicornhuntercg
      @unicornhuntercg Před rokem +1

      Mojang won't even add basic shit like vertical half slabs or fireflies, yeah so...good luck with that.

    • @user-JL
      @user-JL Před rokem

      @@unicornhuntercg
      saddly true,
      at least we have mods and addons

  • @uso2484
    @uso2484 Před rokem

    All parts of video was amazing but showcase was INSANE!!! Thanks for such good video!

  • @giovannidaldegan7337
    @giovannidaldegan7337 Před rokem +1

    Man, this was so good to watch! I'm happy for you.
    That's great content. You took an algorithm implementation and made it so nice and interesting to follow in Minecraft! I never was so hooked on redstone programs! (I can call it like that, right? I believe yes)
    Thank you for the work! I'll be surely checking the rest of your videos.

  • @proxima8574
    @proxima8574 Před rokem +13

    Next you should try to combine this with a 3d renderer and make like a game engine where you can look around a room or something.

  • @KiwiRedstone
    @KiwiRedstone Před rokem +7

    I know, keeping videos short is good for the retention, but I really like it when you go into the details and steps that you come up with stuffs like this. Maybe second channel for complete thought process or deriving formulas? I know it will be boring but would be really useful!

  • @JakeMiller2020
    @JakeMiller2020 Před rokem

    I would love to see a full breakdown of the final working version, like you did for the first attempt!!! It's the first time I've seen a computational redstone project broken down in that way and I really want to see more!

  • @dancorwin9232
    @dancorwin9232 Před rokem

    Dude your teaching of the concept is SO good!

  • @jackada7655
    @jackada7655 Před rokem +5

    An intelligent, self-conscious Android using redstone is not a distant future anymore

  • @blue_bag6110
    @blue_bag6110 Před rokem

    I'm loving the more in-depth explanation of this.

  • @runningsandwich
    @runningsandwich Před rokem

    Videos like this blow my mind. Seeing a computer built from scratch and realizing that it's all piles of math I learned in high school. Makes me wanna learn how to code

  • @inconsisstence
    @inconsisstence Před rokem +3

    wow i love the time and effort put into these videos, its really insane

  • @trixion74
    @trixion74 Před rokem +6

    imagine if mojang made a redstone update what matt would build in minecraft

    • @tanveshkaviskar442
      @tanveshkaviskar442 Před rokem +1

      If they added colored redstone lamps then Matt will make colour display

  • @ryangunnison38
    @ryangunnison38 Před rokem

    This is fantastically well explained! If you havent received any messages like it already, im sure that these kinds of videos will help jumpstart younger folks interest in computer science and programming. I already have some programming experience myself but I have minimal formal education on how programming translates to computer parts in the physical world and this is the most exciting way Ive seen to understand it!

  • @memesalldayjack3267
    @memesalldayjack3267 Před 9 měsíci

    this video and the 3d rendering are awesome, i've learned and felt inspired by them so much

  • @MisterTheRobot
    @MisterTheRobot Před rokem +3

    Matt in 2069: I made minecraft in minecraft using redstone

  • @Haaaaaaaa_
    @Haaaaaaaa_ Před rokem +3

    this is insane.

  • @slaywithoutd
    @slaywithoutd Před rokem

    OHH this is literally AMAZING!!! I really wanted a video explaining the second version, it would be great to understand what the hell was going on in your head while building it

  • @conlangknow8787
    @conlangknow8787 Před rokem

    Redstone science is getting crazy!
    A few years ago I was content building a 5x5 piston door but now people are building programs like you!
    10yo from a few years ago would be fascinated

  • @simat565
    @simat565 Před rokem +6

    Just imagine what he would do if Redstone lamp had different colors depending of the redstone power level. There has to be a mod for that.
    ''so i made multiplayer Minecraft in Minecraft''

    • @lilyofluck371
      @lilyofluck371 Před rokem

      That is so smart! I heard of coloured lamps but that idea is really good.

    • @CJmakesspedmemes
      @CJmakesspedmemes Před rokem +1

      It’d be a really easy mod to make, you just need to have the power level be read by the block (like a comparator) and change texture according to the value

    • @iCherrryyt
      @iCherrryyt Před rokem

      I think that's cool but I think just adding colored glass to the lamp recipe would be a lot easier than having to change the signal strength is to complex and would be annoying.

    • @lilyofluck371
      @lilyofluck371 Před rokem

      @@iCherrryyt But then it wouldn't be able to change. The point is that it can change. This kind of lamp would be like a color display lamp for redetoners. Not coloured lamps for builders.

    • @iCherrryyt
      @iCherrryyt Před rokem

      @@lilyofluck371 ooo ok i see what you mean

  • @fxbear
    @fxbear Před rokem +4

    Beautiful! My first computer was a Prime IV using punch cards and I ended my career doing vfx for film, television and games. I’ve seen it grow but while I used graphics, I never really understood the hardware elements at the level I wanted to. You are inspiring me to dig in the way you have.

  • @EkaridonGaming
    @EkaridonGaming Před rokem

    I have no words to describe just how fucking breathtaking it is to witness actual programming done with redstone

  • @refh9105
    @refh9105 Před rokem

    This works. Recommended to try this out. Thanks a lot for your help

  • @Haynster
    @Haynster Před rokem +4

    dayum

  • @NIX0LAS
    @NIX0LAS Před rokem +11

    This deserves a woohoosh (woohoo + woosh) because the redstone and coding goes over my head but I can still tell how impressive it is, even if I can't understand how you accomplished it!

  • @toastbucket
    @toastbucket Před rokem

    redstone has evolved so much since when I first got into minecraft... I remember when single digit addition calculators were the most impressive thing ever and now people are rendering graphics... Bravo dude. I look forward to see where you go from here.

  • @Miju001
    @Miju001 Před rokem

    Watching all the explanation about all the circuitry is so cool

  • @zombi_dev
    @zombi_dev Před rokem +5

    Matt in 2030: Hello guys! Today I made Windows 10 in Minecraft just using redstone!

  • @abhineetbadyal162
    @abhineetbadyal162 Před rokem +7

    OMG!!! I never thought that Minecraft could go this far😱
    All the Appreciation to you man👍
    And also thankyou so much for such detailed explanations.

  • @Teh_Bean
    @Teh_Bean Před rokem

    This is extremely interesting, yet mind numbing. This is some awesome stuff.

  • @TheCaptainMoo
    @TheCaptainMoo Před rokem +1

    Absolutely insane but a really incredible use of coding and maths :D Awesome job!

  • @GlowBerryPlayz
    @GlowBerryPlayz Před rokem +5

    nice

  • @yoyo978
    @yoyo978 Před rokem +7

    Soo flipping cool!!
    I was wandering is the possible to create some sort of queue so it could be animated?
    I know it’s quite complicated because of the timing between different lines drawn but still..

    • @Oliver_Atkinson
      @Oliver_Atkinson Před rokem

      Yeah

    • @livedandletdie
      @livedandletdie Před rokem +1

      Well, yes, you could, have the encoder because that's what he has made, a massive encoder, output it's information into memory, and then you could take the stored memory, and run it through even more pass-through screen inputs, and you could split the work over multiple inputs and thus send the data simultaneously, thus drawing the whole line at once, however, that would be a lot slower.
      But sometimes that a lot slower can be turned into a lot quicker. As using things from memory can if you can set individual pieces of said memory and use that to configure some stuff, and perhaps have other memory buses to send data as inputs into the encoders and stuff, and with some complexity, you could play doom on that screen...

  • @lamzika
    @lamzika Před rokem

    I m so happy to find this tutorial. It's working for me. Thank you for sharing

  • @Nick-qb9zv
    @Nick-qb9zv Před rokem

    this is wild, good job dude!

  • @realoscar91
    @realoscar91 Před rokem +3

    This is certified cool.

  • @CraftyMasterman
    @CraftyMasterman Před rokem +3

    bruh i didnt even comment yet... but omg i love mattbatwings!!! man is changing the redstone game epiclyyy

  • @riddledrasberry6270
    @riddledrasberry6270 Před rokem +1

    In a redstone build that draws lines, in a game that draws thousands of lines a second, in a video that draws the same lines, on my phone for 16 and a half minutes… the greatest linesception yet.

  • @tsukinokazegashi5104
    @tsukinokazegashi5104 Před rokem

    This is awesome. This dude is underrated for such amazing work :D Your hard work earned you a new subscriber :)

  • @kokes21
    @kokes21 Před rokem +3

    Since it can already draw a cube I now really wanna see it more optimized maybe with added double buffer and make it draw 3d polygons :) "it cant be that hard"

  • @coltonhughes2724
    @coltonhughes2724 Před rokem +4

    Renders Redstone using redstone* to power Redstone lamps to show the Redstone on the screen

  • @AlanZucconi
    @AlanZucconi Před rokem

    This is the quality content I am here for! ✨

  • @chronomeister.
    @chronomeister. Před rokem +7

    Can you make a little spinning cube wireframe animation with this. When you have points saved in memory, and then it just takes the x and y values from the memory, and uses them as frames. So if you speed it up, it looks like animation. Do you think it would look cool?

    • @nolann6324
      @nolann6324 Před rokem

      you will have to compute 3D rotations by using matrix, and then project these points on a 2D plan and enter them into the system, it looks pretty hard because these matrices use floating point numbers and I don't know how these calculation can be done in Minecraft

    • @sargentgullible2794
      @sargentgullible2794 Před rokem

      @@nolann6324 One potential thing he could do to try simulate such a thing would most likely this in an inventory;
      1 stack = one whole number
      Incomplete stack = a floating number.
      So, a stack and a half of iron would translate to 1.5. While it might be tricky, but it sounds doable.

    • @HansLemurson
      @HansLemurson Před rokem +1

      @@sargentgullible2794 I think that's technically FIXED-point notation. Floating point isn't a term for numbers with a decimal point, it's a term for numbers written in scientific notation, where the position of the decimal point varies with the magnitude of the number.
      But it's still a decent idea.

    • @binguloid
      @binguloid Před rokem

      @@HansLemurson item ID as mantissa and amount as exponent

    • @HansLemurson
      @HansLemurson Před rokem

      @@binguloid That'll do!

  • @index7787
    @index7787 Před rokem +4

    If this is 0.2hz or faster, I'm going to **** a sideways brick.

  • @savedblind
    @savedblind Před rokem

    Just found you by this video. Really awesome work, definitely looking forward to seeing more from you. Idk what you normally do videos on yet, but i think a cool extension would be drawing a quadratic with set endpoints (if that’s even possible) or finding a way to save a line once drawn on the screen so four or more modules aren’t needed for four or more lines (this could already be the case idk). But again, fantastic video

  • @breezy5797
    @breezy5797 Před rokem

    You made complex math easy to understand and fun! Cool video! I felt like I learned something.

    • @breezy5797
      @breezy5797 Před rokem

      Also, what was the music for 6:03 to 7:54? It was really nice!

  • @redingenieur7334
    @redingenieur7334 Před rokem +3

    Can you make a redstone computeur or a GPU that we can attache to our redstone cpu that can write letter ,number , ligne , point with x and y in 8 bits like 00000001 = a
    00000010 = b
    101010101 = selecte mod ligne ...

    • @stavros222
      @stavros222 Před rokem +1

      why not in ascii? its 7 bits and it starts from 1000001=A

    • @redingenieur7334
      @redingenieur7334 Před rokem +1

      @@stavros222 I just say a randome number he can do what he want the gole is just to have a working gpu

  • @stormycommentary4554
    @stormycommentary4554 Před rokem +3

    hey i really loved the star in the showcase so i did some math and got coordinates for those lines, but i have negatives and i dont know how to input those with binary. Could you help me convert these? (Ive rounded them all)
    (-49.83, 18.1) (-11.76, 18.1) = (-50, 18) (-12, 18)
    (-49.83, 18.1) (-19.03, -4.27) = (-50, 18) (-19, -4)
    (-30.78, -40.47) (-19.03, -4.27) = (-31, -40) (-19, -4)
    (-30.78, -40.47) (0, -18,1) = (-31, -40) (0, -18)
    (30.78, -40.47) (0, -18.1) = (31, -40) (0, -18)
    (30.78, -40.47) (19.03, -4.27) = (31, -40) (19, -4)
    (49.83, 18.1) (19.03, -4.27) = (50, 18) (19, -4)
    (49.83, 18.1) (11.76, 18.1) = (50, 18) (12, 18)
    (0, 54.3) (11.76, 18.1) = (0, 54) (12, 18)
    (0, 54.3) (-11.76, 18.1) = (0, 54) (-12, 18)

    • @amukh1_dev274
      @amukh1_dev274 Před rokem +1

      Negatives in binary is just the 2's complement. Invert the number and add 1.

    • @stormycommentary4554
      @stormycommentary4554 Před rokem

      @@amukh1_dev274 ok so 50 is 110010 but when you invert it and change the first digit to 1 its the same pattern, how will the machine know to make the point on the left and not the right

    • @aurus7245
      @aurus7245 Před rokem

      they key is to keep one extra bit for the sign:
      (0110010)2 = (50)10
      2's complement of 0110010 would be 1001110
      pretending that this is an unsigned integer, it would come out to be 78
      to discern a pattern to use in how to represent these negative numbers on a screen, we can do a little more experimentation:
      0000001 -> 1111111, meaning -1 is the "highest" when reading these as unsigned integers
      0111111 -> 1000001, meaning -63 is the "second lowest" when reading these as unsigned integers
      1000000 -> 1000000, meaning -64 is a weird case whose negation, being 64, is impossible to represent in only 7 bits and thus is just a bit wonky
      either way, we now know that the "highest" numbers unsigned-wise, with a 1 in the highest digit actually belong on the left, close to 0, and the "lowest" numbers that begin with 1 in this way end up at the far left
      with this pattern, we now realize that we can essentially just split up the screen into two screens: one on the right and one on the left, where anything that overflows from the right-side screen with the positive integers just wraps around to the left-side screen with the negative integers
      repeat the process for up and down with positive and negative y coordinates, and you have a solution for putting your 0,0 origin in the middle and representing negative coordinates around it

    • @amukh1_dev274
      @amukh1_dev274 Před rokem +1

      @@aurus7245 Well, generally, if the last bit is a 1, it is an overflow, or it is negative.

  • @WintersparkYT
    @WintersparkYT Před rokem +2

    Now that you have lines working, You should make a rotating cube! it would be interesting to see how you would come up with a way to use trigonometry in Minecraft red stone.

  • @--deimos--
    @--deimos-- Před rokem +1

    Amazing ! I love this new format when you explain with python an then recreate it !

  • @75rxREDSTONE
    @75rxREDSTONE Před rokem +5

    2032: I Made Intel Core i9 in Minecraft!
    2042: I Made the AI that can talk to you in Minecraft!
    2052: I Made RTX 3090 TI in Minecraft!

  •  Před rokem

    The KING is BACK! Thanks bro!

  • @Minecraftster148790
    @Minecraftster148790 Před rokem

    The best thing about this is not how complicated it is, but how simple it is. You can clearly see how the problem is broken down into small and manageable tasks, what sounds like quite a hard problem actually seemed to be easier than you would think