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"
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!
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
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 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
@@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.
@@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.
@@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.
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.
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 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
@@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)
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.
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.
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 :]
@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
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
@@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.
@@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.
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.
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!
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)|
@@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.
@@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
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!
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 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: ruclips.net/p/PLEETnX-uPtBUbVOok816vTl1K9vV1GgH5 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!
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!
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.
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)
@@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.
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 ^^
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).
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.
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.
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
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.
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.
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!
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.
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
@@idk_iwantfood 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
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
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!
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
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 😊
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.
People may think redstone is a waste, but these builds make me realize the insane power of modern computers and the absolute miracles we have made. Redstone taught me the basics of computers and might be minecrafts greatest educational tool.
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.
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
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!
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!
TNice tutorials was honestly so helpful. I’ve been working around soft, whether it be church, singing in a band, or theatre for most of my life so tNice tutorials
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''
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
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.
@@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.
Imagine if you had to build one of these every time you wanted to draw something in real life. Great video, even though I didn’t understand one second of it!
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!
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..
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...
Honestly I think you could make some of those engineers from back then cry if you showed them videos like these. First time I've seen some redstone machine explained in such detail 🤩
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?
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
@@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.
@@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.
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.
simpler explanation for bresenham: the line goes dx units to the right, dy units up where dx is the width, dy is the height. now, scale up the whole thing by dx - now the line is made up of smaller copies of itself. the important part: 1 pixel is now dx by dx. since we scaled it up, the line now goes dx mini-units right, and dy mini-units up per pixel. however... the pixel is dx units tall. so, once it goes up above dx mini-units, then it should go one real pixel up, and you should subtract the dx mini-units from the error. the real implementation has an extra 2x scale factor because the pixels are measured from the center, but that's just an issue of changing the condition from "above dx" to "above dx/2", and multiplying everything by 2. basically repeating the process again
I've played Minecraft since release. I've dabbled in logic circuits and made a 8-bit display once. I'm always amazed when I see things like barrels and slime blocks being used in redstone builds. Such simple blocks yet restoners can do so much with them.
That was INSANE! From someone who is a programmer and has dabbled in Minecraft Redstone whenever I've played I can understand how crazy this really is Best recommendation I've had from RUclips in a long time that was appreciated greatly Truly amazing
2 года назад
omg he mixed redstone with digital electronic, to watch this dude will absolutely help me finally learn the engineering behind computers on practical 😍 hugs from brazil
This is really nice work! Great video production too. It's impressive how many complicated things can be reduced to repeated addition/subtraction/comparison.
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.
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
14:50 i love that it looks like a real computer, when u "plugged in" ur line drawer to the screen it looks like plugging in a stick of ram, its all so cool
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.
Content like these are very impressive! Showing the hard work that was poured into this video proves how dedicated you are to this RUclips channel! You’ve earned my respect. Subscribed! ;)
The amazing part is that if this continues, in a few years it might get so advanced that things like ray tracing and HD video might actually be possible with just redstone! A game with ray tracing inside a game with ray tracing, how crazy is that?
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"
rtx might actually be possible. After all its just simulating a *few* light rays. would look like crap on a black-white display tho
@@bnjmn21 idk dithering might help a bit
also in realtime will be impossible ig
Matt in some time: "I made a copy of my mind using redstone, now I'm immortal."
Real life GPU: 🫠
@@devhonk1722 true
Matt in 2040: I made Ray tracing using redstone
it's doable, did it in factorio, he could probably pull it off.
Matt in 2050: I made a fully playable minecraft inside a minecraft and then beat it
Matt in 2060: I made a Blender in Minecraft with extra functionality
@@rtsbass7829 Then in 2070, *i made minecraft inside minecraft inside minecraft and then beat it.*
Matt in 2087: I made a completely new game engine and made minecraft in the game engine
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!
And he made that with his four-dimensional brain, meanwhile I'm trying to process this with my one-dimensional rasin
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
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
Dude's achieved Inception.
Does anybody actually get this reference?
@@qwerty4o4 i've watched the movie, but still don't understand
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 :)
YOOOO I’m definitely using that when I add onto this project. Thanks dude
Oh god.. Adding parallel processing to Minecraft redstone
@@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
@@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.
@@sword0948 it's been added for a while now I think
I might be wrong tho
This is the most impressive contraption I've ever seen
thanks! feel free to make a short on it :)
@@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.
@@mattbatwings not too free you also have to credit
@@cezarcatalin1406im not reading all that
@@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.
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.
In the title he said that it's a "line renderer", so imo it might just be a 2D renderer. Nevertheless, quite sick!
2d render of a 3d object on a 2d display in a 3d game on a 2d screen rendering it all
@@thegr8hatty as crazy as that message is, it’s the most accurate one yet LOL
@@mattbatwings I'm learning Python thanks to you!
@@thegr8hatty but the 3d object is not rendered/calculated by the machine itself
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
not a bad idea, thanks for the feedback :)
@@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
completely agree, wouldn't mind multiple parts to a video either, might help with the algorithm
@@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)
@@mattbatwings the video actually makes me interested in programming
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.
I always loved Redstone but I had no idea how useful it was. This is the way Minecraft SHOULD have been played
@@SquirrelTheorist Redstone farms are immaculately amazing
Resurgence? Or a rediscovery of binary?
Some sort of rennaissance
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.
Your error explanation actually helped me better understand some of the automation equipment that I use at work. Super thankful for that!
Well, cheers.
i love when the builds actually look like electronic components, wish i could do it
Actually it is a some sort of virtual electronic component
Well it kinda is
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 :]
I mean yeah the code he copies is a efficient program ig
@@grayb5736 bruh
@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
The multiple line drawers add no lag…
You have no idea what you’re talking about.
I like how you transition from python code to redstone, really clever approach to complex problems like this.
Exactly. I can't read redstone if it's not mine.
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
Yeah, I love that too. It literally makes you understand what the high level code is doing on the low level.
@@vinicus508 when python gets called a low level language compared to this you know shit is getting real lmao
it's actually insane
@@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.
@@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.
Back in the day an 8 bit computer was impressive... but this is next level!!
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.
I know this is gonna be a masterpiece, that's why I'm so certain with liking the video before even this video premiere
I know by sight that Your profile picture is Rick roll link
He is damn close to making a full on 2D game engine in there
Bruh, 3D game engine
@AwesomeNoah24 420D
69420D
@@blueGD its 2d
Who is waiting for him to make DOOM in redstone?
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!
I love how you show the whole process! People often just showcase their builds instead of explaining them.
Now that you can draw lines, have something that gradually shifts the lines -- make a rotating cube, for example.
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)|
@@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.
@@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
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!
Calculator→better calculator→graphic calculator → 3d line simulation → 3d environment simulation → Minecraft simulation → Minecraft in Minecraft
Then he rebuilds it in the Minecraft simulation so he has infinite Minecraft’s
@@ezrakornfeld8436 until the real-life GPU is dead
A simulation inside a simulation inside a simulation inside a simulation...
Oh my god they actually did a 3d simulation
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!
Im interested! Link them if you can, sometimes youtube deletes it but let's hope not
@@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: ruclips.net/p/PLEETnX-uPtBUbVOok816vTl1K9vV1GgH5
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!
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!
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.
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!
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)
@@nikkiofthevalley I know it would be slow, but it would be cool nonetheless.
@@nikkiofthevalley can't we use fast tick speed ?
@@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.
@@nikkiofthevalley Code an optimized minecraft server so it can handle fast tick speeds with redstone faster.
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 ^^
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).
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.
@@livedandletdie ok. I can't believe you just typed that whole message O.O
xD but ty. Ig I could try that errrrr errmm
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.
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
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.
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.
@@livedandletdie Redstone tech just seems like a huge waste of time/energy.
@@jwonz2054 If it's fun for the people to learn more about it, then I disagree.
@@jwonz2054 waste???
You’re funny 😂
Man the music you used in the showcase made me emotional. So much Nostalgia. You earned a subscriber :)
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!
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.
Incomprehensible to "your" mind. ;)
@@MarcABrown-tt1fp clearly it wasn't
@@novameowww Past tense mate, speaking for all humans is highly inaccurate is the point. 👍
@@MarcABrown-tt1fp i know, i'm just foolin'
@@novameowww Oh... I couldn't tell haha! Cheers. 😏
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
The blender cube has evolved
Damn, this is mad, from redstone dust to a 3d renderer
2d renderer
but still amazing
@@-Average- with certin shapes it can render 3d stuff, like the cube
@@idk_iwantfood 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
@@-Average- Next video: Building a working 3090 TI in minecraft
Matt in 2050 : Builds a prime number calculator , solves rieman hypothesis 😂😂
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
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!
Can't wait! Sadly it's gonna premier at 2AM for me.
22:00 for me
Asia?
18:30 for me (netherlands)
18:30 for me
@@robinhood184xD same but im in poland
I dont understand why you have 37K subs you should have like more than 100K. This one is gonna be awesome!
10M for him
.
Yeah
@@tanveshkaviskar442 yeah ur right
That was amazing! The speed is just mindblowing and I thought the method of graphing the line was really smart! Great job!
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
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 😊
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.
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.
Matt in 2049: I just made an AI that can talk like a human using redstone.
People may think redstone is a waste, but these builds make me realize the insane power of modern computers and the absolute miracles we have made. Redstone taught me the basics of computers and might be minecrafts greatest educational tool.
Absolutely correct
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.
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
That is a great idea!
Or a lamps with different colors too!
Mojang won't even add basic shit like vertical half slabs or fireflies, yeah so...good luck with that.
@@unicornhuntercg
saddly true,
at least we have mods and addons
An intelligent, self-conscious Android using redstone is not a distant future anymore
Holy crepe, dude! You've earned yourself a subscription!
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!
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!
Renders Redstone using redstone* to power Redstone lamps to show the Redstone on the screen
Oh my god he's gone too many levels!!!!!!!!!!!m
imagine if mojang made a redstone update what matt would build in minecraft
If they added colored redstone lamps then Matt will make colour display
Why is this so underrated? Is this like 40k subs GENIUS?
TNice tutorials was honestly so helpful. I’ve been working around soft, whether it be church, singing in a band, or theatre for most of my life so tNice tutorials
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.
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''
That is so smart! I heard of coloured lamps but that idea is really good.
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
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.
@@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.
@@lilyofluck371 ooo ok i see what you mean
Matt in 2030: Hello guys! Today I made Windows 10 in Minecraft just using redstone!
Imagine if you had to build one of these every time you wanted to draw something in real life. Great video, even though I didn’t understand one second of it!
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!
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..
Yeah
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...
nice
dayum
I have no words to describe just how fucking breathtaking it is to witness actual programming done with redstone
Honestly I think you could make some of those engineers from back then cry if you showed them videos like these.
First time I've seen some redstone machine explained in such detail 🤩
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?
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
@@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.
@@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.
@@HansLemurson item ID as mantissa and amount as exponent
@@binguloid That'll do!
If this is 0.2hz or faster, I'm going to **** a sideways brick.
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!
this is the def of underrated can we make him popular? he deserve it
you have earned my respect
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.
sheeesh i tried making an addition/subtracting calculator once but this is absolutely next level, respect!
I'm loving the more in-depth explanation of this.
simpler explanation for bresenham:
the line goes dx units to the right, dy units up
where dx is the width, dy is the height.
now, scale up the whole thing by dx - now the line is made up of smaller copies of itself. the important part:
1 pixel is now dx by dx.
since we scaled it up, the line now goes dx mini-units right, and dy mini-units up per pixel.
however... the pixel is dx units tall. so, once it goes up above dx mini-units, then it should go one real pixel up, and you should subtract the dx mini-units from the error.
the real implementation has an extra 2x scale factor because the pixels are measured from the center, but that's just an issue of changing the condition from "above dx" to "above dx/2", and multiplying everything by 2. basically repeating the process again
my explanation skills really suck but oh well, at least people may be able to get the point
very nice! this actually made me understand it a little better.
I've played Minecraft since release. I've dabbled in logic circuits and made a 8-bit display once. I'm always amazed when I see things like barrels and slime blocks being used in redstone builds. Such simple blocks yet restoners can do so much with them.
That was INSANE! From someone who is a programmer and has dabbled in Minecraft Redstone whenever I've played I can understand how crazy this really is
Best recommendation I've had from RUclips in a long time that was appreciated greatly
Truly amazing
omg he mixed redstone with digital electronic, to watch this dude will absolutely help me finally learn the engineering behind computers on practical 😍
hugs from brazil
your step by step explanations are really good, it shows what is needed when tryna plan a difficult redstone build
this is really well explained and presented. every time i had a question you addressed it immediately
That screen... It's really marvelous)) Awesome man - awesome content!!!
This is really nice work! Great video production too.
It's impressive how many complicated things can be reduced to repeated addition/subtraction/comparison.
All parts of video was amazing but showcase was INSANE!!! Thanks for such good video!
42.2k subscribers by pushing the boundaries of redstone technology.
gotta love how talent gets so comically unnoticed.
hope this changes
Dude your teaching of the concept is SO good!
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.
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
14:50 i love that it looks like a real computer, when u "plugged in" ur line drawer to the screen it looks like plugging in a stick of ram, its all so cool
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.
Watching all the explanation about all the circuitry is so cool
Content like these are very impressive! Showing the hard work that was poured into this video proves how dedicated you are to this RUclips channel! You’ve earned my respect. Subscribed! ;)
i have no idea why he doesnt even have 100k subscribers yet this guy is amazing. and thanks to him i actually learned how to count in binary!
Absolutely insane but a really incredible use of coding and maths :D Awesome job!
This is so awesome!
Finally soone who speaks in a calm way and getting to the point asap
man, you are just wild (in a good way), turn the whole program into a redstone chain in Minecraft 😯 just bravo!
The amazing part is that if this continues, in a few years it might get so advanced that things like ray tracing and HD video might actually be possible with just redstone! A game with ray tracing inside a game with ray tracing, how crazy is that?
the explanation is absolutely magnificent!