This video demonstrates how to implement complete mesh rendering for redstone dust in a C++ Minecraft clone using Raylib, including creating the central dot mesh and all six side meshes (north, south, east, west, and two upward directions) with proper rotation and collision boxes. The developer shows how to rotate meshes by 90°, 180°, and 270° to render different orientations, and how to implement custom block outlines for accurate block selection. The key technical challenge involves managing multiple mesh states and their corresponding collision boxes, which requires careful coordinate system management and understanding of how different block states affect rendering.
Approfondir
Prérequis
- Pas de données disponibles.
Prochaines étapes
- Pas de données disponibles.
Approfondir
Making Minecraft Clone with C++ & RaylibAjouté :
And hello YouTube. This is my C++ Minecraft clone Dawn in Raip. I bet you didn't expect a stream today since I uploaded a video today a few minutes ago, but I decided to stream. Uh let's summarize the previous like what we have done in the previous stream. Uh ignore these torches. In the previous stream, I think we managed to right click to add um elements like the anvil. Uh, and we made it possible to add this redstone dust dot because we're trying to add redstone dust and uh h and and I forgot what else we did. Yeah, we didn't do much. We didn't do much like uh because we need what we need to do is this all of these features we need like for to have the rest on dust it needs to be possible to output all of these possibilities all of these yo hello weeks hello somebody else what's up what's up what's up um and yeah we are going to continue from pre the yesterday's stream and try to figure out how to get this rest on this to render. That's the idea for today. Um to at least get the mesh rendering because uh in addition to the mesh rendering, we need metadata u to be stored somehow. I said I was going to think about it off stream on how to tackle the metadata, but I didn't think of it since I was working on the new video that I uploaded today.
And we'll see what we'll be able to do uh just in this stream.
Uh so to recap, where's the clone here? To recap, uh, yesterday when we press the right click, we get this redstone dust and we can change the color of it, the color overlay.
Oh, what's up? What's up? What's up, people gathering?
Hello. Hello, Peter. Hello, Peter. This is confusing.
Add block netherite. I would never understand this low. Bonjour, your friend God is here. Bonjour.
Yeah, what's up? Yeah, you're making the Minecraft clone the in good dot uh on X Twitter, however you want to call it.
GDCraft, I think. H survival mode. Uh we have survival mode in the Java clone. We have it in the Java clone. Like we did survival already. That was a goal some time ago and I made it in the Java clone. Now the goal is uh to focus just on reststone the whole project the C++ one and since that's the exciting part since it it's in C++ we can optimize it and every issue resttor has if if we cannot solve them it's because of me it's because of a skill issue because in C++ everything should be possible we have references we have pointers we have like everything you want we have that. So, it will be on my part a mistake. This is the Java clone. We already have survival. Like, we have zombies, skeletons. We can survive. Like, I'm I've shown this like every stream. Now, the focus is to make a uh this C++ one clone to make it with the focus just on redstone.
Yeah, just on redstone.
And we managed to render this little redstone dust dot. And it has uh this custom collision box, this custom block outline.
And it has this upward direction rest on dust thing. It has this.
And the idea is the goal is uh for this stream is to be able to render um all of these states. All of these states. Like here you can see some you have three that go upwards. We have somewhere here four.
That's the goal.
Um my birthday was yesterday. Well, happy birthday, I guess. Particles. No particles. No particles. We're not doing particles. We're focusing just on uh the rest on dust. If we have time, we'll do particles like this. Maybe these ones that come out of the redstone dust maybe.
Uh but let's keep it simple and little by little we'll manage to make significant progress.
Uh so this is like what we managed to do in the previous stream when we right click to get this mesh model of the rest on dust. What we are missing is here on the this is the north side. So we're missing the south side. We're missing the east and the west. We can easily get them. We have the mesh model from a JSON file. It's this one. We just need to spawn it again to render it again, but to rotate it. That's where we left off in the previous stream. We just need to make it to rotate it 90°, 180, 270, something like that. And then to the dot uh to not be just a dot to have uh here it needs to have little four extensions.
Uh just like here in the original these little extensions, we need to have them as well. Uh it shouldn't be that difficult. Uh I'm optimistic that we can do it in this stream. I'm optimistic we can do it. Hopefully we don't need to rewrite a bunch of code.
Uh the cake was amazing. Hopefully it was a chocolate cake because I like chocolate. Hi pizza. Oh, you're using a hi date. So good.
Um yeah.
Hm. And yeah, that's the idea for we have a limit of 3 hours. Well, I'll try to do 3 hours since uh I'm attired from that video that I did today. Like uh I uploaded I uploaded a video um on the main channel. Not the main channel, this channel. Yeah, this one.
Uh for how I fixed the block outline in the Minecraft clone. And man, it was so much work, man. Look at how many cuts.
It was so much work, man. Like, and I did it in a this part in a day. I did it in a day. And I like I just went through the live stream live stream like this one. It was 9hour live stream. I had to go through it a couple of times then to save the interesting moments.
all of these interesting moments to save them. then to connect them to somehow create a story. And here like I had a couple of passes like six passes I went through all of this then I had to write some script and then like to connect everything together like man this was so much work like so much work man so much work and the most annoying part is every because it's like a couple of a lot of clips every clip has different audio level uh and I have to go over every clip and to make get the same audio level. So I have to go here to zoom in to play it and once I play it here I get a number like minus4.
This is the goal for YouTube to have good audio has to be minus4 and I have to go over every video and if it's lower I have to select it. I have to select it and go here and to individually change that man that was like you cannot imagine how annoying that was. It was so annoying. Yeah. But I managed to upload it. And then to do the thumbnail, I did it today before the stream, man. Before the stream. And hopefully I can do three more hours for the stream. If I cannot, like whatever, man. Like whatever. But let's try to do some progress.
Let's try to do some progress.
Um, I did. Yeah, it's auto translate.
It's out translate. It was simol. Uh, why do you generate half of every chunk?
What do you mean half of every chunk?
Uh, what you going to do with when you hit 1,000 subscribers?
Uh, it doesn't matter the 1,000 subscribers. Like, uh, this is the live channel. This is the live channel. Like, uh, the main channel is at how much?
7,000. I've already hit 1,000. I It's not the same when you do it again. It's like, okay, it's 1,000. Okay, like it's not something different. But if it's like 10,000, well, that would be cool if here it becomes 10,000. But again, like in YouTube, like every content creator knows subscribers don't change anything about the YouTube algorithm. You can still like every video can flop no matter how many subscribers you get.
Like absolutely no meaning. Um the only thing subscribers show is if you have an audience but like some subscribers become inactive and even if you have half a million subscribers if most of them are inactive and have because most people do not unsubscribe. they just leave the channel like that and YouTube stops recommending recommending it to you and like you just don't subscribe and they stay inactive subscribers like it's just an at the end of the day it's just a number. It's just a number. What matters is if we make here progress in the Minecraft clone that's what matters and if we have a good time during the stream that's what matters.
Can't you just normalize the audio? Um the normalization just changes the uh audio levels. Um a compression compressor would be a better fit because compressor when you um increase the volume with a comp audio compressor it will it will increase the low levels it will not touch the high levels.
compressor is more useful uh for uh that smart using the debug world for reference. A viewer here in chat uh suggested me to do it. He showed me how to do it. Uh you go inside of debug mode here when you create a world.
So uh here a viewer showed it. When you create a new world in world type here, you press and hold the right alt you left click and you get this debug mode and you get this like a viewer showed me this and it's awesome, man. It's so awesome that this shows every block possible state.
This so helpful really helpful.
I I'm really thankful to the chapter the viewer semi chunks. Uh, so sub chunks you mean? So it means why do you generate half of every? Yeah, I still don't get it. Sorry, man. Rocket juice.
Blue redstone in thumbnail. Uh, yeah, in the previous stream we u managed to change the redstone color and we had blue stone, we had disco stone. Uh, the previous stream was fun. Also, did you figure out block state last stream? No, I didn't figure out the block state. uh like I need to decide how I'm going to store the metadata. Uh I said I was going to think about it off stream but since I was uh like handling uh the new video the whole day I didn't have even a second to think about uh block states and metadata. I didn't have even a second to think about it. But uh we have some work to do until we reach that state. We have time uh we have time. We can continue doing the mesh for the rest on dust. We'll figure out the state later on. We'll we can even think about it in this stream, but we'll figure it out. I'm not in a rush. I think an item called blue stone will be funny.
Uh yeah, so that's the idea.
Uh right now, this is a single block here. And what we are doing is this is a comes from a single JSON file. And this here is also a single JSON file.
We need to copy this to render it again, but this time with a rotation 90°. The problem is we don't have rotations. That's the problem. Uh, and I'm going to attempt to add rotations.
Yeah, I'm going to attempt to add rotations.
That's the idea. But I have no idea how to attempt the rotations. I'll figure it out in the moment and we'll be writing some ugly spaghetti code. But future me will worry about it. Future me will fix it.
Couldn't me will just write slope code.
Uh yeah, I don't need an AI to write slop code. I can write slop code without AI.
Like in the past, we wrote spaghetti code without AI. Now it is taking my job of writing spaghetti code.
Let's see now.
Uh, where should that logic be?
Wait a minute. What are these blocks here? They should be deleted.
Yeah. Let's open explorer. They should be gone. Destroyed. These ones. Yeah, they should be deleted. Gone. Does it compile now?
Yeah, it compiles.
Cool. Cool. Cool.
Uh, now let me see. We need to go inside of the block header and here to go to the anvil. No, to go to a redstone this time. Still thinking about anvils from the previous video. Add blue stone or new item to craft a new thing like the Minecraft redstone. We'll still we are still in the process of making one to one copy. We still we're still not ready to make um things different from the original. It's too early.
Uh here we read the rest on dust up JSON which is let's open blockbench.
Let's open blockbench. It should be where is it? Asset browser redstone dust up. This is it.
And of course, it's not loading the textures. I think we solved it last time. This problem with the textures, we can try to solve it again. Let's just Wait a minute. 26.1.2.
It changed the version. It was a different one. It was 1.21 something.
What was it?
1214.
1214. Yeah, it's trying to sneakily change my version up. Yeah, this is it.
Yeah, this is it.
Um, we this is inside of a JSON file which is just a text file describing how to render this and we are using it right here.
Right here we are reading the information from the file which if it's has been read once the second time it's already cached. it will not go inside of the text file. And it prepares my mesh renderer. It prepares it. And here we generate it. So before we generate, I need to be able to set the rotation.
So here cube mesh pool and here to set like rotate on the Y-axis to be able to rotate the object on the Y-axis.
rotate Y to be a float and here to set it to 90° something like that and then to use it inside of the generator. We'll do something like that in order to get the rest on dust.
Is it open source? No, it is not. We're going to add uh I read this as back pain back plane biome. What's that?
Yo, what's up Twitch Cer TTV? Hey, what's up? What's up? First time chat.
Um, if I try and do something like this, I would give up on day one.
I would give up on day one as well. Like uh you would be surprised how the same every person is. There are slight differences between us. The only difference is our environment.
Like that's the most different between us. If I was like my case is just a little bit different.
I read back pain biome. Yeah, I also read it back pain.
Uh grass and tree biome.
So are you going to add grass and tree biome? So back plane is grass and tree.
Okay, we have grass and tree biome. We have it. We already have it, but let's focus on the rest on this here. Let's add this float.
We'll put it here. A static float rotate Y.
We'll put it here. And here we set it to 90°. Sure. Rotation on the Y-axis.
And how are we going to use it here when we generate?
Let me think about it.
Uh, let's do it by default to be zero.
By default to be zero. Can I do it like this?
Maybe.
No.
Let's do it like this.
Oh, it's static. It needs to be in the CPP probably. Damn it.
This need to be in the CPP file.
Uh so uh cube mesh pool to be set to zero. Uh float to be set to zero.
What? Yeah, that's it. Now it's initial.
Oh, I have the init here. Okay, I'm just dump. I'm just dump.
We have the init here.
If only I remembered what I have written.
Um, calling the reststone is really hard.
I'm doing the same every for my addon.
Yeah, reststone is difficult, but um I'm too excited to not do it. My English still sucks low. No problem. Um, I don't like hazel.
Yeah, I don't like hazel, but I I like dark chocolate. I like dark dark chocolate.
Uh, GG's for the 300 followers on Twitch. I don't have 300. Without even looking, I can instantly say I don't have 300. I think it was like 30 or something. like I think 38 last time I saw it. It barely changes the Twitch follower. So last time I checked it was 38. Most likely now it's 38 as well, but for sure it's not 300.
Um, see what's up with Twitch.
Um, uh, funny. I tried to do Minecraft in rape like two months ago and give up because the ray casting was hard. You're making me want to try to reload 3+ again. That's maybe good or bad. I swear you have 3047.
Uh wait, you're I think you're the same person from Twitch. Why are you in YouTube and Twitch both?
Yeah, let's focus. Let's focus. Let's focus.
Yo. Okay. Like I I just checked. Okay.
You were right. Like you Sorry for uh doubting you. Sorry for doubting you.
You were right. They increased a bit. I don't know how, but they increased a little bit. They increased a little bit.
Yeah. I I sorry I doubted you. I'll never doubt you again.
What? I'll never doubt you again.
I don't know how they became 300 and something.
Yeah, maybe from the new video.
Uh, how did you learn coding? Uh, by investing a lot of time and improving a little bit every day. Um, if you ask how like if you have played League of Legends and and if you ask uh how a League of Legends has uh player has reached um like the top rank, what was it called? Challenger. How did a League of Legends player reach challenger? By investing probably a lot of time and improving a little bit uh every day.
Like you for sure must have invest a lot of time in something and you're better at at that thing than me. For example, if you go out a lot, you socialize with people like you would have uh much easier time like socializing. But I for example have spent zero time socializing. I just focus on whatever I do in the computer. So everybody has like you cannot spend your time on everything. You have something that you're good at and it's based on your preferences, based on your ambitions, on your motivations. And for me right now, it's YouTube and making videos, streaming, and making a Minecraft clone.
And that's what I'm laser focused on for the last 3 years.
I think it has been three years actually. At least making videos.
Streaming I started recently, more seriously.
Yeah. Sorry, man. like I I'll never die to you again. You know, I've got really interesting add-on for Minecraft adding new redstone features and one of them is a redstone glass that allows the rest on glass work as a new power conductor.
Nice.
Um I really uh from making Minecraft mods like mod packs, my favorite one was take it back in the day. just self learn and yeah I learned the best self self-arning like from intrinsic motivation nobody can exter externally motivate me if you put an exam a test a deadline a homework that's the most boring thing ever man you cannot motivate me externally like uh except if it's a last minute panic uh but uh my main motivation comes internally and right now this is my internal motivation to work on this Minecraft clone to make the videos and to live stream and it's quite hard to call that. Yeah, I would assume it's hard to work uh especially when making a mod and trying to incorporate it with a big project like the existing Minecraft. That's what I'm starting from scratch because I'm working with my own code.
Uh my way of learning programming is jumping in a deep ocean before I knew how to swim. Yeah, pretty much. Pretty much. I tried coding, but one day later, stop. I'll never try it again. Well, it's not for everybody. It's not for everybody. Especially now that AI becomes more mainstream. everywhere. A lot of people that have thought they liked programming once they try using KI now they all of the sudden realize oh they don't like programming and they just start vibe coding everything like uh in in the future we'll easily see who likes and who doesn't like to actually program.
Um, alert L first then L. Roblox L. Keep it up, big man. French man here.
Bonjour, Mr. French Man. MC 2795.
The script for Bedrock sucks. Uh, try scratch. Yeah. Okay. I I caught up with everyone. Uh, we can continue on.
Okay. I didn't caught up. Uh, never say never. Bonjour.
Bonjour MC. That's the only French I know.
Come on, Sav.
Come on, Sava.
Uh, Tbian Wei. I'm making my Minecraft uh I'm doing my Minecraft clone in Java Lip GDX. Now I'm making custom block shape. Nice. Um, I've never tried lip g.
How is it? Why don't you use the the other thing the Oh, maybe because it's a little bit more lowlevel directly using Copengl. What was it called? LJGL something like why don't use this for example.
Is it like too lightweight in comparison to L like what was it?
Yeah. H.
Let me test if the game compiles. No.
Was the issue.
Rotate. Y was the issue.
Why is it not compiling?
Where is it?
Uh, we were inside of this, I think. No, where were we?
Why doesn't it compile? It's a linker error. Rotate Y. The cube mesh pull.
Let's go inside of the header.
Where's rotate Y? Here it is. It should be static float. Rotate Y.
What's the issue? Should I or should I put it in the where was the data?
Yeah, I should put it where the data is actually.
Let's put it where the whole data is.
And in it, let's just set the data rotate Y to zero. Now it should work. Oh, I need to go back to the downville.
Where was it? This downville.
And here I need to remove this.
Now it should compile. Yeah, now it works. Yeah, I'll come back to it.
Um, I think AI is kind of [ __ ] for programming. There are few situations that is useful for me. Uh it's helpful for when like instead of a Google search instead of Stark Overflow uh for formatting text like if you have to format many lines of code and you want them to look differently and that's only when it's helpful like for example format this to look in a different way like to give it in to not make to not have it think instead of you to don't to not offsource your thinking to it, you'll be fine.
Um, it's also my own code. Like, if there was zero use, it wouldn't have there wouldn't wouldn't be such a big bubble around it if there was zero use.
But, um, for coding there, I haven't found much use as of now. It's also my own code because redstone is hardcoded.
So making a new power conductor is quite depressive. Monjourai uh Savian why is message attracted?
I'm making a mod. And isn't this a very old version? And I'm trying to How are you making a mod for alpha 1.05?
Trying to port all of the structures from beta 1.8 kind of piano. But I'll let you decide.
How am I going to decide like are you going to show me the project? You're kind of getting talking to chat. Yeah.
Yeah. Yeah. Okay. I'm reading the last few messages and I'm going back. Like when uh there were zero chatters, we were able to make a lot of process progress. There are pros and cons in both cases. Whether there are people in chat or not, there are pros and cons.
Minecraft uses. Yeah, Minecraft uses that.
Uh, hello. Hello. I'm using lib gdx because I don't have a computer. You don't have a computer.
Uh, hey man. I'm loving your project.
Thank you man. Open gel is the goat.
Vulcan you can add later as an optimization. Sure. Yeah, you can add Vulcan later. Uh, but I'll never add Vulcan even as an optimization since I'm um a one person. Brazilian. I'm not a Brazilian. Isn't the restaurant just state machine?
H state machine I'm not sure and Brazilian man I found a way to make true randomness cheap.
Um PE says make a Discord server. I had a Discord server but I deleted it. It was too distracting. How doing KC clone without a PC. It would be cool to get together several people who like this Vauo game team. I'm Brazilian.
There are many Brazilians. Okay. Nice.
Nice. Uh before there were uh from Turkey a lot of people. Mali is was from is from Turkey. Not was my English is not doing great. Yeah. Let's focus like one of you said. Let's finally focus on making the progress. So the idea is we have to render this again and to rotate it 90°. Okay. Let's not get distracted.
Uh I'll put five minute timer. Five minutes just focusing timer. Let's do a five minute timer.
Start and let's focus. And after 5 minutes I'll see what's up with chat.
And I'll think uh here how are we going to do it? Uh we need a function.
Uh we need a function that sets the rotations.
So let's do static void set rotation Y and here to get a float uh angle diag.
Let's do angle. Why not? Let's do angle.
And let's implement this function.
It doesn't allow me. Let's just copy it.
Let's just copy it. And where should we put it?
Let's put it below here.
Uh, let's put it here.
And we'll set the data rotate Y to be the angle. That's it. And so now when we generate when we generate here, we need to let me think about it.
Let me think about it. If uh and here we need to reset it the angle data uh rotate Y. We need to reset it. And what else?
And here before we generate we need to set the rotate Y here to be beta rotate Y. We need to set it here.
Can I? This is a function. Excuse me.
Oh, don't tell me I need to set it for every face. Oh, no.
Rotate Y angle. Yeah. Okay. Okay. Okay.
Chill. We're fine. We're fine. We're fine. And here we need if this is different than zero.
If it's different than zero. Um, so let's test it. Why not? Let's test it.
Oh, I'm not using it. I'm not using the function. I'm not using the function.
Uh, where did we need to use it? It was here.
It was here. Here. We need to set it.
Cube mesh pull.
Um, set rotation Y 90°. Now, moment of truth. Let's see what happens.
Yo yo yo yo yo yo, it rotated.
Yo, yes, it rotated. Look what happens when I don't look at chat. How much progress we have? Let me add these other ones to the other sides. And now look at chat.
So we need to copy this again.
So one more time. One more time. So here it will be 180 and here it will be 270 I think probably hopefully.
Um I should look at chat.
Uh why did this happen?
So 108. Oh it's rotating like that. It's doing the wrong.
Excuse me. Okay, let's do Okay, let's do - 90 - 90 and - 180.
Let's do minus 180.
Uh, I'll figure it out. I'll figure it out.
Let's pause the timer.
I'll figure it out.
Let's see what's up with chat.
Uh, what did I miss chat? How you doing?
A Minecraft clone without we chat translates automatically. I'm having trouble with all the broken English. I thought it was funny. Hi. Hi.
How are you? Are there any Brazilian living abroad around here? Fine. I live in Brazil. I'm pretty sure I don't understand you. Uh you use like a lot of iterated tiring variable limited by suns between zero and one gets modified by clock lack not clock effort measure you would need gates. Oh I'm watching from the Philippines. I just ate some ice cream.
It was good. Uh question for chat I guess. Does he take suggestions from video comments too? Uh what do you mean by that?
Um, YouTube should allow image uploads in chat so we can showcase our projects.
Uh, that's very difficult to do because YouTube will have to trust uh chatters that they will not upload inappropriate images. It will very easily go in a bad way very easily. That's why you don't have images here. Uh, because somebody has to moderate that.
Anyway, as I said, just checking short visits. So by by he brought us great so many push back. Why not test STD?
Uh where is this for? Sometimes he got some suggestions. Hello PES. Yes. Uh hello pizzaas. Yes. Hey dude. Did you ever check out my clone? Um just stopping by to see your progress. Good job dude.
Um oh I saved the link. you'll send the GitHub repository, but the whole day I was working on the new video and now I'm streaming. I just had zero time. I'll at some point I'll check. But thank you for reminding me. I I actually forgot about it. I forgot. I'll check it out.
Uh progress. What you doing, Pet? Yes, I'm adding the redstone dust. What tutorials did you use to learn C++? Just watch the cho uh learn CPP. um those things and um spend time coding. Learned every day little by little. I do every day 3 hours and I stream it.
Uh I'm going I'm going it out now. I'm going to play something. I don't know.
I'm tired. But good live stream. Most beginner tutorials are the same, but I use tutorial from Cherno. Yeah, the Cherno is very good. Goodbye chat. have good live stream to learn C++ as uh it's quick and somewhat concise.
Um I would suggest starting with a highle programming language like Python, Java, JavaScript maybe uh to not rush it to C++ because with C++ you have a lot more power and with a lot of power comes a lot of responsibility. It's easy to make so many mistakes. Is there block rotations uh in the Java clone I have here? No. C++ has CL plus PHP but it says do you know when next video comes out? It's already out like this one. I don't know for the next one.
Uh you need to offset it so it's centered at the middle of the block.
Yeah, I'll offset it. I'll offset it. Uh yeah, I'll offset it. Uh, loving all recent streams. Thank you. Thank you.
What's your goal for this game? The goal is to have a onetoone copy with Minecraft rest to be able to do complicated contraptions and maybe to send the clone to a redstone YouTuber to stress test it to the maximum. That would be awesome. And then to make my own game that's heavily inspired by Minecraft redstone.
That's the idea. That's what I have decided. Uh that was continuation from my last text. Uh you have 900 subscribers. Yo, nice, nice, nice. And maybe because of the new video. When I upload videos, uh that's when subscribers go up. If I don't upload videos, the subscriber count gets frozen forever. I'm learning Python right now.
Nice.
Yeah, you were the one I said I will not doubt again. Beta CS you seen um uh but you can't use redstone because it's copyrighted. Yeah, sure. Like uh that's easy to not to not use redstone as the name.
Uh tomorrow I don't tomorrow I don't be live in tomorrow because I have heavy rain for 5 days. Yeah, when it's raining it's really bad for me as well because the internet goes like um I lose the internet and it gets really bad when there's heavy rain.
Uh let me think about yeah so as a wise person suggested suggested Wix Wix is our brains here. we set to offset it.
And he's right. We need to offset it.
And uh lucky for us, we can do that.
Uh rotation Y offset.
We can set it to be the center.
So 8 88.
And now it should be centered.
Now it should be centered.
Uh let's see if it's centered. Yes, it's entered. And Wix once again is right.
Never doubt Wix.
And then we'll need to draw these here uh in the middle. We need to draw them as well. And the mesh will be complete.
Uh what did I miss?
Good evening. Good evening in Poland.
Blue stone.
Uh, the thumbnail is from the previous stream. Don't pay it much attention. I'm assuming the idea is that you can get redstone to run faster so you can make larger contraptions like computers and Minecraft cone that run significantly more efficiently. Yeah, something like that. Something like that. Like whatever redstone uh pe like whatever redstone uh players struggle with, that's what we'll focus on. the main struggles of redstone and we can our unfair advantage against Minecraft is that the whole game will just be the red stone. We have a big unfair advantage again against Mojunk even though they are a whole big team.
We can we have high chance of doing better than them. But first we need to replicate what they have without looking at the code because it will be too similar.
Rainbow stone. It might be 16 offset.
No, no, it's fine. It's fine. Uh yo, how do you get proper texture model things for every block? Just use blockbench. Uh Blockbench in this asset browser and it has not only the new assets, it has old assets as well. Like this is a gold mine this uh plug-in asset browser in Blench.
Uh, can we add graphics mods? I don't know what does means. Making uh do the main shaders. I'm making a Minecraft style game in Rail Penc. Nice. Why do we pick C? Yes. Hello. Hello. Finally, I'm not the only um Paul here. How to translate this reg for you to make? Um, I have no idea. I have no idea.
Uh because uh a a difficult problem can come up and it can block me for a long time. I don't know. Um I cannot plan it. C++ doesn't know how to interpret push. It's basically a sun a sum and a standard deviation. Bind it to cost. Also, are you planning on making the rest behavior compatible with vanilla van vanilla vanilla Minecraft? What do you mean by compatible with vanilla?
I I am trying to make it one to one.
I love cubis.
Uh I picked C because see simple and I don't like C++ black magic stuff. I gave up on my Minecraft com because t was ging out when I tried add new things.
Yeah. Okay. Okay. We managed to catch up with chat.
Managed to catch up with chat. Uh we can move on.
Uh let's uh move on and complete the mesh of the redstone dust. Let's complete it. Uh by completing it, we're missing just a few more parts here at the edges. We're missing the edges. So it should be Where's the game? Here.
Well, we're missing these edges.
We're missing these edges.
That's what we're missing.
so that we can have every possible configuration.
That's what we're missing. Let's render them and then I'll check what chat is saying. Let's first render all of these and it's the same logic as before.
Nothing much has changed. The same logic.
Uh so here here when we generate them we need let's let's just generate one of them.
Let's just generate one of them here.
So we need and let's remove the rotation here. We need rest on dust site. Let's do the site.
Let's do the site and it's a JSON file.
Where is it? Where is the JSON file?
Models rest on the site. And here it needs a line.
This line rest on the site.
Yeah, it needs this.
And I think that shouldn't be it. Let's start it.
Uh yeah, we have this peeking out from here. this part we have it from there.
Now we need the same thing but rotate it on the other sides. We need the same thing rotated.
Uh so let's go back to the block.
Generate mesh.
Generate mesh. And let's copy this.
Man, we're copy pasting so much. We need a function for this. We need it three times. One, two, three. Three times. And this is the first one. We need to start rotating them.
One, 180.
270.
Oh, what did I do? 270.
And now it should be kind of finished.
Yeah, it's kind of finished. Uh the only thing is that um if we have to be exact, if we have to be exact, um in Minecraft, these are not the same.
I should be using a different one for some of the edges. What do I What do I mean by that? Here.
Where? Here.
Which one of these?
Uh, I need one that complete this one.
Uh, let's remove the particles right now. They're annoying. Like, they make it hard to see the details.
Details. Particles.
Uh, how to turn off particles?
How to turn them off?
Where are they?
Um, where are particles?
Animations.
Come on, man. Particles.
Particles. Yes. Minimal.
Minimal.
Okay, we don't have particles. Nice. Uh, we can see that here, uh, they are different. They're different. So here we are towards the north and south.
North and south. And which direction? Uh this is the west. So north and west is these ones. And the others are the alternative.
H. Okay. So I need to use let me see.
Let me see. Let me see. So north uh uh we need the other JSON file which is this site alternative site alternative I think it should be like that and then I need where uh let's use them in the last two meshes here site alternative alternative alternative and let's see if they are different.
Uh are they different? They are not.
Why they're missing here? These ones. And are they the right one? This is east north. No, it should be this is north.
So, okay. Okay. Okay. Okay. should so it should be this should be just site and the other one should be alt this should be al and what's up with alt am I copying the right name yeah the name is all right okay what about the textures yeah it's using the line it's using the line so what's up.
Oh, wait a minute. Wait a minute. This is different.
Is it? Are they on top of each other?
Yeah, I have. Let's see what's up with chatting now. Let's see first Twitch.
Um, also use proper redstone textures.
Literally almost nobody in advanced redstone community uses vanilla redstone textures that I know uh labels with power level. Oh yeah yeah yeah. They use a different texture that has a label for the power level. Yeah. I Yeah, I know of that. I know. If you're serious about making redstone feature each column. Yeah. Yeah. Yeah. I'll I'll do that. I'll change the redstone texture to be that one. But not right now. Not right now.
Um, what did I miss with YouTube?
Um, what did I miss?
Like, could I build orbital strike cannon?
Uh, the crosshair looks slightly above the middle of the screen. I checked it.
I had checked it and it looked like it was in the middle. I I can check it again, but not right now. Wa, this is impressive. Just clone for each side, right? There's some Z fight. Yeah, I noticed the Z fighting in the Java clone. I managed to solve it by moving it up a little bit. Here in the Java clone, I don't have Z fighting because the dot is moved a little bit upward and there is zero Z fighting.
Threads, I don't use any threads. Uh, Zbuffering, try having the block state index into some sort of texture array.
H, try having the block state index into some Yeah, I'll save this. That's a good suggestion, but I cannot do it right now. I'll save it. Excal.
I'll save it.
I'll save it here.
uh for later. That's a good suggestion.
Uh the texture array can contain all 16 permutation of the bottom dot texture.
I'll save this suggestion as well. Why not? Oops.
Save this. Please from password recall needs of processes get a URL pink tunnel. Imagine recognition makes the syntax infinite. Uh William, why do you delete your message or does YouTube remove it? Like can I do something to not have it removed?
I can put you a moderator. I can put you a moderator.
Uh it doesn't compile with compiler syntax RAM symmetry based runtime optimization. Sorry for spam transformation. This is awesome. I remove it because it was copies. Okay.
No problem. No problem.
No problem. Uh let's see what's up with this.
Let's see what's up with this. Let's uh here I have a strategy.
I have a strategy to see what the problem is. And the strategy is it's not the smartest one. Uh let's remove.
I'll just comment out some of them.
Which ones?
Which ones do I comment? This. Let's comment this one. I don't need it because it's uh making the problem harder to solve.
And I'll remove this the side. Just this old this old and this side.
Yeah, we should see two meshes rendered.
We should see just two of them.
Yeah, we see two of them. Oh, we removed this upward one. Why did we remove it?
Yeah, this uh by mistake. By mistake. My butt. My butt.
Uh what did I break now? Okay, now I should be fine.
Okay, so we have the two meshes and they are to the north and west. They should be towards the south and the east to be exactly like Minecraft.
So let's do uh this is the port one. This is support. So this is 90. Let's do zero and 270.
Let's do it like that.
So this is towards east and south.
Fine.
And wait a minute.
Wait a minute. Now they're different. I think I think now they're different.
They're the same like before.
Uh let's look at aspirate and see what am I doing wrong.
Uh one of them like the north and the east I think should be this upper part and the south and the west should be this lower part. Something like that.
Something like that.
Uh let's look at the JSON file.
Let's look at the JSON file.
Uh no, let's actually look at the blockbench. This will be easier.
Allow assets. Redstone dust site site zero. Let's do zero. Yeah, this is Yeah, this is the top part. Exactly.
Exactly. the top part and let's open the alternative.
This is towards Oh, I get it. We don't need to rotate. It should be the exact same angle because it's on this side.
It's not on the north. I get it.
Oh, interesting.
We learn something every day.
Um h so zero it should be the same angle 0 0 and this is 270 270.
So let's uncomment this.
Come on Visual Studio work with me.
Work with me.
And how is it? How is it? Is it is is it proper? This is the north and the west and this is the south.
Uh yeah, it looks fine. Yeah, this is the entire of it. And here we have um like on the Z depth buffer fighting Z fighting.
And my solution in Java was to just bring the dot a little higher. That was my solution. So here in the dot uh yeah in the dot we can just move it a little bit. So let's do 30 here. 30.
Let's do 30.
And there is no Z fighting.
We solve it.
Uh it's a little bit more upward. Uh we can do it like okay instead of 25 to be like 26 or 25.5 like very slightly to increase.
Yeah, we increased it very slightly.
It's fine. It's fine.
Yeah, we have finally some progress.
We finally have some progress and we need to change the state of it and to save that state somehow. We need to figure it out.
Uh, what did I miss?
Uh, thanks for listening. Can you add something custom like a custom game progression and texture? just so you can upload the game. I really want to play it.
Um, this version, no, when we make uh another version, that's when I'll be able to release it. This version, I'll not be able. The next project, I'll be able to release it and it should be heavily inspired by Redstone and maybe other texture pack that adds the looks of Minecraft. If you analyze process cost efforts, you can sort it to reverse Oh, still very slow. That's just for the first compiler. I am learning Russian private. I'm learning Russian.
Uh W, bro. So, you're doing a texture atlas. Uh that's what Minecraft also does. Have you ever tried creating an but actually do they do something with the like I I know they have individual textures um here they have individual textures I know that individual images here I know that and for the game they compile it in runtime into an atlas they do it in into an atlas And this is their texture atlas.
This is what they do uh in the game.
They combine it into this. But what I'm interested is, do they do something with these images before that? Do they just run the game, create this atlas, and directly use the atlas or do they use for some other things these individual images? That would be interesting to know if they do something with them uh individually.
Have you ever tried creating atlas stitcher? I made one takes power two images and source them. Yeah, I've made one when I made the 10 million TNT project uh because I wanted it to support textures because I wanted to release it to uh GitHub here. this project. Um, this Minecraft clone that can blow up 10 million TNT.
It can support texture packs. Here it has, uh, it has Jollycraft.
It has, um, all this disco. This is an OG texture. I remember it.
Um, it has it has the this like old texture packs.
very old texture packs. This I like this texture pack a lot.
And what else? There was other Yeah, this faithful one. And for this to make it work, I had to stitch together the images into a texture so that I could release the project into GitHub. And Cherno revealed it here. in order to have it inside of GitHub. Um, I made the support for texture packs.
And so here it uses the bare bones texture pack by default, which is a popular one, but you can use most texture packs.
Yeah.
Uh, so I've done it once, I can do it again for this project, and it was in C++, so it shouldn't be that hard.
Um, uh, I'll I can even make the textures you want to. No, no, no. Chill. I don't want anybody to do like if somebody does work for me, it it will be paid. I don't want people doing like free work for me.
But I cannot afford like only thing I can pay out is like few cents. Uh right now only thing I can afford is to spend my own time but in the future I will need to create a team of people but not right now. Code can be hidden inside the textures. Do it. Code can be hidden inside the textures.
What do you mean by that? The sky needs something. What if you had shader uh with the course of skybox and the time of day and created light visuals? I could actually you gave me an idea when you mentioned the sky. I could make it like um like in Counter Strike in Counter Strike 1.6 they use just a sky box.
They just use a simple skybox. I can do that. That would be really funny if I just use a simple skybox. Yeah, that would be so funny if this manages to loud. Yeah, to have that sky box at the Yeah, the skybox at the top.
Can we do it even now? Yeah, this skybox.
Yeah, that would be so funny.
Yeah. So, here to have that skybox.
Um, you can analyze the atmosphere into fine golden ratio tearing and generate infinite music and remove the need for image recognition.
What im What do you think of image recognition? I'm not using image recognition. Why would I need image recognition?
Um, you can also inflate texture by instead of raising it. How have you already been streaming an hour? It feels like you started streaming like 10 minutes ago.
Yeah, I just looked at the timer because at 3 hours it needs to end. And I was, okay, how much time did it pass? And it was like 1 hour. When did that one hour pass?
If you hide that inside the texture itself, you need sharpening.
Uh adding clouds should be easy, by the way. It's just one big texture and moving in one direction. You're not completely right. Um yeah, right now Minecraft has them as 3D clouds. These clouds are 3D. They're not a simple like texture.
And I have them the same in my Java clone. Like I can do them. They're not difficult to do. Um, but I've procrastinated on them since I wanted to prioritize the redstone.
Okay, I went through chat. We can focus again on the clone.
Uh, let's uh commit this. Let's commit it.
Man, this change in the console to not get a message every time a mesh is unloaded. This is a game changer. before I had to wait here all of the messages to go through and then the game actually closes. This is a game changer, man.
Like somebody mentioned it. Why is your console spamming so much? And I was like, I can change it and I changed it and it's like game changer because look at how fast it closes. It's open. I hit escape and it's closed. It's instant, man. It's so cool, man. So cool. Let's uh commit it. Let's commit it.
Wait a minute. Why do I have these?
Why do I have these files? Oh, removed.
Uh, air, anvil, cactus, dandelion, grass, few mesh, pool, and where we're doing this. Now, what should I call it?
Uh, drawing.
drawing redstone uh the the full redstone mesh redstone dust mesh doesn't matter.
Nobody's going to see that. Only future me will trigger with that commit message.
Uh let's start it again.
Like I could do the clouds texture just to have simple clouds. I could do that.
I could do it. Why not? But not right now. Not right now.
H. So we have this red stone.
We have this red stone.
And what are we going to do with it? It needs to uh we don't we did this was the easy part. We need now to figure out the hard part. Uh because the redstone has a state. If we uh go towards it and press F3 with it, you every block has a block state or some people call it metadata.
You can see it on the bottom right. And this redstone has uh if you look at it, where is the east?
East.
The east. What else?
Uh, east is side, north is up, south, south side, and west is Yeah, I figured it out. West is none.
Yeah, this metadata if you can if you can see if you can notice it on the bottom right you can see the it says Minecraft redstone wire the east is says site the north is saying up power is nine the south says site and the west is none what this means is uh this is right now the the west the west is saying none so There is no mesh there. No mesh is being drawn. Here it's the south. And it's saying the south is the site. The site is just this little part here. Here you can notice it's not here. But here we have it. And now the interesting part is this side. This is the north. And the north it says up. So when we have up, we also have the site here. We also have the site. That's the meta data for this.
And just using that data and the power is nine. The power determines the color because here if it's zero, it's this darker red color. So with all of that data, we know how to render the redstone dust.
And sure, we can have that data, but we need to store it somehow. That's what we commented in the previous stream. Uh somebody mentioned Minecraft has a class called metadata. So probably we need to also create a class called metadata that handles this and maybe we can store it inside of the chunk or the subchunk and to be a hashmap. Every block uh coordinate to if this block has metadata that subchunk to have a hashmap that has a key of the block position that points towards a class that's metadata that has this data. and we when we save it to a file to save that metadata and then to be read uh when we load it something like that that's what we have to decide how are we going to approach this problem because it's not easy problem to solve because sure this has metadata that's like the custom for the redstone but this has different metadata here it's boolean values for each site uh and uh Here for the piston it's which side it's facing if it's extended or not. Every there are all kinds of different metadatas.
So what maybe they use a parent class called metadata and has children classes that inherent the metadata class. Maybe like I could have a ver abstract class metadata class and to have redstone metadata that inherits the parent metadata maybe I don't know and the reststone dust block will just convert that like u abstract metadata class into redstone metadata so it can get whatever it needs Maybe maybe h but why should it be an abstract class?
It will not have any methods. It it just needs to store all kinds of variables.
It just needs to store all kinds of variables.
I don't know, man. I'm just a Java guy.
I'm not sure on how C++ does it.
Uh, what did I miss?
Um, is the sky currently a texture right now or just a solid color? Uh, just a solid color. Precalation of cataloges. What do you mean? But in newer versions, you can customize the F3 menu so it's not as cluttered.
Yeah. Um, I know about that, but I just haven't done it.
Uh, F3Q.
F3Q help. And then how would I change it?
Um, I don't know how to change it.
Can we Minecraft change F3 debug menu? Let's change it.
Then press F3 plus F6 to open option screen. F3 plus F6.
Oh, it should be newer versions, not here probably. Damn it. Damn it.
Hold F3 and press. No, no, I don't have it. Damn it.
H.
Uh, we don't have it.
Do time on. 121.4.
We're so close. Oh, come on. I I can prepare in the meantime the the newest version.
Why not? I'll create an instance.
Why not the newest version?
Okay.
And I'll put it to prepare. I'll probably need to exit here.
It's still complaining.
Um, why doesn't it start?
I prepared a new version, but it doesn't start.
Um, no matter. We need to figure out how to store the metadata. Oh, and something else. We need here collision uh boxes.
We can do that. Before the metadata, we need to solve these collision boxes and maybe organize a bit the code because I copy pasted lots of code and we don't need to do that.
H we need here just like we have here custom collision box here dynamically to have these ones as well.
I need to figure out how launch.
Um, why is it not launching? Task while downloading from remote server could not download.
Please change the version. Try again later.
Let's close it and open it again. Let's try again. Okay, now it's downloading.
Now it's downloading.
I'll wait the newest version to download on the site and by then uh we need to figure out how to do custom creation shapes for that are dynamic because before I did them like this but now they're like I was storing the collision shapes inside of the blocks themselves. So the torch has this collision shape but that's seems to be wrong since here we are getting the collision shape from the like when doing the mesh itself.
>> Press enter to enable the narrator.
>> Uh I don't want a narrator.
Uh let's stop the music.
Music. No music.
And uh let's create a debug world.
Uh, no, not here. Here.
Debug mode.
Debug world.
Create.
Yo, now this is the newest version.
What's that over there?
What's that?
What's that?
Ah, it's gone. It was here. What was it?
Uh, let's go here now. Game mode, creative.
And what?
Here, the textures are a bit different.
It's as if they have a slight outline.
Uh, let's remove the particles.
How to remove the particles?
The menu is different here.
Man, I wish there was a search.
Particles decreased. Minimal. All minimal.
Sure. And F36.
We want what do we want in overlay FPS game version.
What else?
GPU utilization. That's cool.
Yo, there's so much information here.
Light levels.
Looking attent. Yo, this is helpful. I don't want memory.
I don't want all of this.
System specs DPS 3D crosshair. I'll keep it. Chunk borders.
I think that's it.
Done.
Um, now we have absolutely nothing.
Absolutely nothing. Light map. There's a light map.
F3 + 4. Oo, light map. Yo, the light map.
Uh, you need the light map to generate the light. Like, duh. Obviously, uh, my my Java clone for my Java clone, I couldn't figure out how to generate it.
So, I just copied their light map for um a few times of day. And uh so the light just drastically changes since I'm not doing not generating a true code since I don't know how they do it. I just copied their texture.
Uh let's hide it. Let's uh let's I want I want just the information of the the block state. Yeah, block state.
I want that.
And block tax maybe.
Lu tax state particle render stats post effects.
Yo that's cool.
So how can I remove uh this on the debug charts profiler hidden that text? How can I remove it?
Can I remove it?
The additional text I cannot probably remove it.
Let's see what's up with chat.
What's up with chat and portal gateway? Oh, see what's up.
H um at least we cleaned up the menu. At least we did. Oh, can we move them around? Actually, I think there were other options.
Can we move them around?
You can also quickly swap between performance profile game scale. Press escape. Go to options.
GI scale entity hit boxes. Okay. Uh force game crash.
Why would I need the game to crash? To advance to tips. Game mode switcher.
What else?
Uh, let's increase the GOI skill.
Where is it?
Where is the GOI skill?
Where is the GI skill? Um.
Let's do what's the maximum. Oh, it's at the maximum four. It's at the maximum.
I really want to remove that text there at the center of the screen. It's very annoying.
But what can we do?
Um, look at everything that is on and remove the unwanted stuff. Bit late cuz it's late here. What's up? Yo, what's up? Um, Maskell, what's up? Or Clay, what's up? How late is it for you, Mke?
Oh, yeah. You're of course you're from Turkey. Like, it's close enough to my hours. For me, it's 10:00 p.m. For you, it's maybe at most 11:00 p.m. probably.
Okay. It's the same time as for me.
Yeah. Okay. You're the same time zone.
Yo, hello. What's up?
where I am in Bulgaria.
It's close to Greece and Romania in Serbia. I have to go to sleep at 11:00.
Yeah, having a time to go to sleep is nice, like to schedule it. My time for to going to sleep is at 1 a.m. I have an alarm for going to bed at 12:55.
Um, and at 1:00 a.m. I'm at at bed.
For me, it's at 1:00 a.m. I'm from Poland and it's 900 p.m. for me. Damn, it's 9:00 p.m. Yeah, for me it's 10 p.m.
Maybe I should do stream speed earlier.
Uh, it's really improves live quality.
Yeah. Hey, what's up?
Yeah, maybe I should do streams an hour earlier. I don't know.
It's 8:00 p.m. for me. What's your end goal with everything you're making? Just to learn. Mostly to learn. But right now, an additional goal to make a copy of all of Redstone. And then the other goal is to make a game heavily inspired from Redstone, an original game.
And I think I can make it. Are you Are you from pawn too?
Like you, I decided to read books before sleep. Yeah. Reading books before sleep is a game changer because we usually look at screens and they have blue light which makes it harder to go to bed. And there's something else like in this generation we do a lot of Tik Tok shorts, YouTube videos, we numb ourselves. So we stop thinking much and when we go to bed now all of the stimulation is gone and so we're constantly thinking about everything.
And you know how in the computer when you hit shutdown and it's saying programs are running cannot shut down.
And it's the same with going to bed when you're thinking of something you cannot shut down their programs running. And when you read a book you shut down all the programs when reading a book. You stop thinking about what happened in your like daytoday life. And for 10 minutes 30 minutes of reading a book before bed you reset. And when you hop on the bed, you instantly go to sleep.
Like that's a life hack I started like a few months ago and I haven't stopped.
I'm almost done with the Dune books. I'm at I'm I'm after the movies. I'm ahead of the movies.
Um let's see.
Original game. Yeah, original game. But not right now. Right now we're doing a onetoone copy. Do you plan to add actual networking? No networking. It will make it too complicated. And follow the Minecraft network protocol and join actual Minecraft servers. No. No. Uh there glasses for that I think such as MCA alpha servers.
As of now, no multiplayer as of now.
We'll see about it. Also books kind of bor so it's easier to sleep. Yeah. I was thinking some random things. Will will you port the vanilla spaghetti cold for the physics?
What do you mean? Uh books kind of relax his mind. By the way, can you see your game? Yeah, you can see my game. Why not?
Uh this is the Java game and this is the C++ one. We finally added the mesh for the rest on dust.
And we need to update the collision uh boxes. We need to add more collision boxes.
Um what did I miss?
I mean, I've done it before. It's not that bad for Minecraft cuz I eat before going Oh, so I have to deal hunger.
Um, I don't eat right before bed. I eat three hours before bed at least. I wait 3 hours before bed to eat. I don't eat before bed.
Uh, like it's hard to go sleep with empty stomach. Look at MC for the movement.
Living entity travel. The simple game looks smoother than the Java game. Uh because the Java game is barely surviving. Java game is very low FPS.
It's barely surviving. Uh let's open the the FPS counter. Like the Java game is really bad. Like here the render distance is not that bad. like the render distance is very short and I'm on a very powerful machine and I'm barely getting 60 fps barely and on this power powerful machine here and the the C++ one I have vync here I have ving here uh it locks at 165 fps I have ving there. Uh, I can stop it actually.
Can stop the Vync.
Uh, where did I set it?
Uh, here. Let's remove the ving. And it should show the FPS is probably not that high.
Uh, since I don't have first time killing the terrain generation lowers the FPS.
Uh but here when after everything generates it goes maximum 300 and something but we don't have first time culling. If we add first time culling we can reach 500 FPS probably if we add first time because I'm rendering everything. And the thing that lowers the FPS the most is rendering like rendering the meshes. The more meshes you render the lower the FPS goes. Like obviously duh. and adding custom coloring would make it so these chunks behind me do not render. I just render what I see. So here uh looking upwards at the sky will be the maximum FPS and looking downwards uh at everything will be the lowest FPS with first time because now everything needs to render.
This is the worst case scenario like this. This is the worst case scenario and it will be like the minimum will be 300 like something like that. But I'll put uh the V sync.
I'll put the Vync.
Uh let's see what's up with chat.
Uh what did I miss? Yeah, I need to drink some water.
Let's see what's up.
Welcome to the world of compiled code.
We should start using Linux.
I've used Linux in the past, but now I'm on Windows. Still better than empty stomach. I had switch back to Windows cuz Linux and content creation doesn't work at all. I found everything worse creating Linux with a little elbow grease. No, no, no, no, no, no. You cannot elbow grease everything. You cannot convince me. You cannot elbow grease everything. There are still some issues.
But still, if more people use Linux, those issues will be gone for sure.
And it's doing pretty good even with the low player like user base.
Like I have to make animations and I have to do some editing.
Uh first I'm curing plus invisible face cing. What's invisible face curing? Plus botching. I'll not do botching. Hyperl.
Yeah, I've tried Hyperland. It's cool, but I prefer i3 window manager. I prefer i3.
I3 is very cool.
Uh I have to make a mesh, have to do some editing. I can record fine on anything. And there's plenty of editing software.
Uh it um it also might because you have like four games to open at once as well.
Yeah, D Resolve doesn't work at all. No, Resolve works, but it crashes way more than in Windows. Premiere Pro is sad one to lose, but I usually do boot windows to like play code. Doesn't Windows updates break your Linux uh files?
Kid in life. Way worse than I don't like kid in life. You render every block. Uh I render subchunks. I don't render every block. What didn't work with Da Vinci?
It was just randomly crashing.
Uh but not every time I managed to render videos. It was not that bad. It's doable. Uh but like okay. Uh with on Linux Resolve has limitations with the audio codec. Um it doesn't support like what you have on Windows by default.
Um, it's it adds annoyances and right now I don't have the time. Uh, I cannot prioritize it. Render every book. What uh I answered all this already. What PC specs do you have? I have uh pretty good ones.
Um, here. Oh, I removed them. I removed them. The PC specs.
Yeah, I removed them.
Bummer.
Bummer.
Um, yeah, I don't know how to show them here.
Oh, I lost. Oh, okay. Yeah, you can see them here. the CPU Ryzen uh and the the GPU RTX 360 Ti and the RAM 64. But I shouldn't mention that in these in these times.
You heard nothing about the RAM.
I bought it way back a long time ago.
Hey, what's up? What's up? What's up?
Uh let's uh bring some attention to Wix.
Um invisible face cunning. It is what you described the other day. A cube has six faces, but you only renders three because you can only ever see three faces at most. Any block? Oh.
Oh, that was for the clouds. That was for the clouds. So that's invisible face culling. So instead of drawing six, you draw only three. Yeah, that's interesting. Yeah. Yeah. So that's what it's called. I didn't know that was the name.
Uh the license issues. A lot a lot issues with Linux Venture Resolve.
Perhaps on ECS system Linux bro Miri has a big problem with Linux Bros.
To be fair, I called most the time in Linux. Yeah, Linux is the best for calling. Uh do you know the song? I don't know this song. At least the name.
Yeah, I'm on Hyperland. Hyperland is fine. I use site three is RAM GPU CPU hungry. Linux when someone actually enjoying the moment. I can't let him have fun. No, it doesn't really break anything. The only thing that annoying with Windows was fixing secure boot to play Call of Duty and Windows doesn't have secure boot by default. So, I had to sort that out. can check in task manager with how your monitor can have uh maybe game resolution.
Uh I don't know.
Um monitor is 1080p actually. Not sure if it's called that.
Maybe something else. Just call it that.
Uh, I use Linux for months and I like I never act and you should use Linux.
Wait, wait, wait. What happened? The the RAM was 1 GB, I think. Was the RAM 1 GB?
Let's look at the vault. You wait.
Let's look at the vault.
Wait, let's look at the one. What happened with the RAM?
Why is it like so much? I didn't do anything.
What hap? Yeah, it was like 500.
What happened with the run?
Uh, I'm fast forward. I'm moving forward a bit.
Wait, wait, wait, wait. That's the Oh, that Okay, okay, okay. That's the Minecraft. The original Minecraft. I got scared for a second.
Yeah. It's just Yeah, it was just uh slow with changing. Yeah. Yeah. It's fine. It's fine. There's no Yeah. Yeah.
It just Yeah. Yeah. It's from the original Minecraft.
No. No. Everything's fine. Everything's fine. Everything. Chill. Chill. Chill. I got scared for a moment. Like I was like, do we have to solve another memory leak? I use Linux from um I was trying to improve Minecraft but I built ECS system for entities and inverse kinematics.
Yo infinite loop live stream clone is hungry. What up do you use to see FPS?
That's the MSI after burner.
That's it's called MSI After Burner and it has um where was it? this MSI After Burner, but it uses a it installs. When you install this, it also installs this. I think here, this is what you actually configure to get the all the FPS and RAM usage. You need to configure it. But where uh somewhere here? Yeah, here you you can set whatever you want. The GPU, everything everything's here. And I can have the the average FPS, the 1% lows.
This is really helpful, the 1% lows since FPS changes a lot. This is more realistic what FPS you will get. But I haven't enabled it since I have to press start point. You need to press the start point to actually get it going. And that's annoying.
And that's annoying. And I just have the FPS and the RAM usage.
Um uh what's up? What did I miss?
When I make my projects and photos to optimize because my laptop is a [ __ ] box.
uh it's very good to program in a bat laptop. If you look at uh in the past where programmers were programmers were very limited with hardware, they had to become better programmers. But now when programmers are limited by hardware, they ask the consumer to buy better hardware. Like um if you're limited from hardware, you that's a very good environment to become a good programmer.
right now when I have uh all the resources I will need. This is very bad.
This is extremely bad to have the best CPU, the best GPU because now if I release this game, I'm sure most people will say the FPS is very low. This game is unplayable. Like I'm sure of it. I'm sure of it. Um but that will be for future me to figure out.
Um, being able to have 10,000 mobs in the world will make Minecraft actually feel like a world honestly it wouldn't even slightly matter. You had 17 apps open at once.
Uh, I don't know how much there was in past honestly don't some black magic I roll for Minecraft to do.
Currently, Micro Juice has straight up PNG low. Are you using ECS? Uh, in my Java clone, I use CCS in my Java clone.
Uh, where is it? Here. Uh, I have this uses entity components. Actually, the mobs are not entity component system.
They are just uh spaghetti code. Uh, but uh I do have entity component system.
And actually the sub chunks each one of them uses the entity component system.
Believe it or not they use the mesh renderer component and the mesh filter component I think um like from the inspired from how Unity does it.
I did it like Unity does it. Uh we need to focus actually and make some progress. I'll read chat one last time and we'll add the custom collision for the rest on dust and then we'll figure out what we're going to do with the meta data.
Uh what did I miss?
Is the texture copyrighted? Yes. The glitch should be a creepy dimension with its own entity called it. This ent basically mobs are Italian.
Your to views YouTube maybe because of the video the video I have uploaded. The white people would probably die probably. Can't you use the anvil color or something to do the same outlines for redstone? Yeah, I just I'll just do that. But I have to do it manually. Like even for the anvil, it's manually done.
Uh here for the where is the anvil? Here the anvil.
Uh here is the anvil. I just do this. I have to manually describe how the creation box looks like. It has to be done manually. There's no way around it.
Some outlines are exactly like the mesh. Like this block. The outline is exactly following the mesh but it's not everywhere the case.
like this for example. This you need to make it manually by hand. It cannot every time follow the mesh.
Uh so I have to but here the problem with the redstone is even here look at how the outline is like this. This is the outline and here is different like it's constantly changing.
H. And where is just the dot? Here is just a dot. And this is for that.
H.
Uh, let me think about it.
Let's render them one by one like this.
One by one. Uh, to see what outline each one of these should have and then we'll combine them. But they will not look the best because in my clone here there will be lines, additional lines. It will be a little bit annoying. But what can you do? What can you do?
What can you do here? Minecraft combines them to look nicer. But I'm not Minecraft. I'm I'm doing the naive simple approach. it will not look the best because I'm just using simple cubes.
Let's look at Twitch.
If you add Exe is a non- Steam game can use Steam FPS over is more optimized and has DLS infos which are missing in Yo that's interesting.
Yeah, I'll do this. I'll do this but not right now. But I'll save your suggestion.
I'll save it for later.
with William's suggestion.
Save it for later and see what's up.
Um, see you. Have a nice night. Bye, Mkelli.
Nice having you. Probably next week you're going to start getting No, let's not focus on the numbers. We need to focus on the project, not the numbers.
The numbers change every time. I need we need to focus on what we can change what we have effect on.
I don't have a effect on the views.
Imagine making the outline for a perfect circle. That would be impossible. Just would be has a circle. But actually um maybe Rayip has support for spheres and circles. Like wait a minute. Does Raip have circles? If it has circles, I can do circles.
Uh, it has a cylinder. It has a sphere.
It has a circle. 3D circle. We can do circles.
We can do circles.
We can do circles.
Uh, not very complicated. This would be a square. Is Is it possible to make one big mesh for the thing? Make it invisible and do that for the outline.
one big mesh. Yeah, but I will need big meshes for like all the objects uh by Muskelli.
Howdy. Love to see the project coming along. Yeah, me as well. Same.
Same, man. Same.
Let's see now. Um we'll focus on the outline.
We'll focus on the outline.
Let's see now.
Oh, wait a minute.
What if h I was thinking why don't I have the outline because I was going to simplify it because here look at how the redstone dust just combines uh the redstone dust combines these pieces uh in the end result. And I was thinking, okay, this has this outline and the circle has this outline and I'll just combine them. I'll not think about it that much and it will just be a little bit ugly here. It will have separations, but I was thinking about it.
No, no, no. It should be true code. It should be true code. I was thinking to manually set it up for each state, but there are too many states. No, no.
Now the dot will have this outline and this part will have this outline. And I'll just overlay them together.
Um we have this outline for the rest dot which is uh not here which is here.
Here we have it only for this. We need to make it for the other ones as well.
For the other ones as well and for these upward parts. But in order to do that, to make it easier, um I'll hide away uh I'll hide away some of the parts so it's easier to set up the collision boxes since I need to do them manually.
Um, let's see.
This got you stumped. What do you mean?
Hello, guys. If it works, it works.
There's no way this song in relip was amazing, man. Like, everything's possible with reli because it uses open gel. Like, Minecraft is done in open gel. Like if you think in first principles, do you have two Minecraft clones or what? Like I see one in the desert, then you're in the plane with an inventory.
What is the thumbnail?
Yeah, it's from the previous stream. I had disco stone and blue stone. The disco stone had random colors.
Like confused. Try add pistons and test the red stone. Okay. Like I have a couple of Minecraft clones. This is the Java one and I started the new one since it got very unoptimized. But I have redstone here and I have the the piston.
But this is the Java one.
This is the Java one.
And it has piston.
And it has ambient occlusion around it, but that's the Java one. Right now, we're doing the C++ one, not this one.
Uh, this one.
And we're trying to do the outlines.
We have the outline in the center for the little dot. We need to do the outline for the outward parts. The outward parts as well.
Um, why links randomly die? Did you disable them? Uh, I think they're disabled. Uh, I'm not sure if they were like that by default or did I disable them, but uh, I like to leave them as disabled since uh, like if possible, I would like to make it possible for like a single person to post links.
Uh, I'll see if that's possible.
But I don't know how that would be possible.
Uh, let's see what's up with YouTube.
Hi, I just got here. Hello. The occlusion goes away when piston is active. Yes, but let's look at how it's in uh original Minecraft.
I'll show you in the original Minecraft.
Uh create new world. Creative create new world.
In the original it's uh also like that.
Um piston redstone torch.
Man, this snow is annoying.
Oh, come on. I needed that.
uh here like this. And here uh here it's harder to see. Right now we have ambient occlusion around it. And see what happens when you turn it on. It's gone.
Just like in my clone. It's the same.
Like it's the same.
Uh not here. Here it's the same. We have ambient occlusion and now there's no ambient occlusion. is the same.
Um Oh, yeah. Is it permit?
Per permit wixer.
Yeah. I don't know. Oh, no. Like permit.
Ban. We are not banning Wix.
Wix is our brains.
Restrict VIP. Grand Vip. Can I make you a VIP?
Wix. Sir, unable to add VIP. Visit the achievements. I cannot. Sorry. Wix.
I need to I don't have permissions. Ask somebody. Ask the I don't know, man. Ask Twitch quasi connect. No, I don't have quasi connectivity.
Technically, this is more of bedrock clones since bedrock is main in C++.
You're making bedrock and java.
Well, yeah, I'm making both.
But uh C++ will focus just on redstone.
What are you going to name this? Uh think of a name. Think of a name. You can think of a name. I'll use it if it's good. When Ender Dragon will not add the Ender Dragon sadly, we're prioritizing Cstone. Can use a bot that filters links. Is the project published on GitHub? No. No. And the only project you can see uh you can see two projects that are open source. My old Minecraft coins.
There's uh let me see uh github.com.
Let's see now. Vauil engine and let's see repositories and filter by public uh public ones and was in this one as well. Yeah, this old project. This is my old Minecraft clone that was a year ago. You can look at this clone. It's a C++ one when I followed the churn open tutorials.
It's an open- source one.
And this is my uh this is my 10 million TNT one. It supports textures. It has texture packs.
Uh you can look at this one. It's um can look at this one.
Um I'm not sending this one. This uh I don't want people looking at this one, but it's public. It's public.
I think it's public. But like there's nothing to see here. Like it's like on very old and bad codes.
like very very very old and but yeah but this is my 10 million TNT clone which is mostly compute shaders it's mostly compute shaders and uh geometry shader like stuff like that the actual code is mostly the the actual code is just churn's game engine series it's just the cho game engine series.
If you ask me to write this code on my own, I will not be able to do it. Since I was writing the code while following along his tutorials, I'll not be able to do the code myself. And that's why I hate watching tutorials because I learned I don't learn much from them. I learned a lot more doing a project myself. Even if it's bot, even if I make a lot of mistake, even if it's sloppy, even if it's spaghetti code, even if the performance is super bad, like here this clone is a very bad performance, the Java clone.
Even with all of those things, um the difference is I learn the most. I learn a lot more because you learn from the mistakes. And right now I started over in the C++ clone and um we did like we're doing a lot better. We have infinite terrain. Uh we don't have memory leak. The RAM is a lot lower. We can lower it even more but it's good enough. The terrain is infinite and we can uh this is my favorite part. I I'll show it. Uh if I increase the movement speed.
We will not be using this feature much at all. Maybe it was unnecessary, but I like it. The being able to travel fast and the terrain to prioritize you. Look at how the terrain prioritizes you and then it generates everything else. This is my favorite feature which we're not using at all.
This was just for the fun of it.
Yo.
Uh, hey man. Give it up. Thank you for the donation, man. It means a lot, especially in these times. But I need to say, I'll say it every time. Um, thank you for the donation. But it will be better for us both if you use this money to buy yourself a a nice cup of coffee, something to eat, some kind of snacks during the stream. Um, I think we it's it's going to be win-win better like that to keep the money. I don't want to encourage people giving money, but I don't want to stop people from doing that. So, thank you for doing it. Yeah, it's not it's not that deep.
Yeah, that is right. So, yeah, thank you. Like the most important part is thank you for that. Um, it helps, but I also don't want to encourage it. That's why I say that. I just don't want to encourage it and I don't want to reject it at both times because it helps because it helps. Like, do you know how much uh YouTube videos earn? Do you know how much a YouTube video earns?
Uh like um here like this like uh right now this channel is not earning anything because it doesn't have 1,000 subscribers. Uh but this video like I can compare with the previous channel with the main channel because that channel is monetized here. like um like this video 3,000 views. It would be like€3 or 4. It's like €1 per,000 views.
It's something like that. Like it's very hard to earn like to make u to earn some kind of money through um just the ads.
Here for example, this would be €25 this video. And it it took me a lot. Like each video takes me so much time to do.
Like like the money per hour is like nothing. It's nothing. It's nothing. So a donation like that is like this is like 5,000 views. Like that's that's huge. So that's why I'm like thankful of that. But I don't want to encourage it. I don't want to encourage it.
Uh nice usually have very few views.
Rich boy. So, this is basically Bedrock or console edition clone but customizable. Keep up the good work.
Um, what's up?
Permit requires stream elements. Okay, I'll download stream elements.
You man, cats are welding. You need to go in creator dashboard settings and moderation. Yeah, I'll look it up later.
Like outside there are tons of cats and like they sometimes fight.
Since I don't live in an apartment where I live there tons of cats.
Tons of cats. You would be surprised how many.
Um let's save the suggestion.
Yeah, I'll look your suggestion afterwards.
Uh, let's see what's up.
Um, must be orange cat. Yeah. Uh, we there are our cats are orange cats, but there are some gray ones and there's a black one. There's one black cat and it always comes and uh attacks my orange cats. Like I I don't know how to keep that cat away.
You going off topic talking code. Yeah.
Sorry. Sorry. Sorry. Sorry.
Yeah. Yeah. Yeah. You're right. You're right.
Yeah. I'm talking about cats. Yeah.
Yeah. Uh we went a bit we went off topic. Yeah. Let's lower the speed because right now we cannot it's difficult to go near the the meshes.
Uh let's lower the speed.
Let's lower the speed.
Yeah. Okay. Let's add the collision. to add the collision. Let's remove all of these and leave and leave leave just one of these just one of these meshes and add collision box just for it. Let's do that. I and I'll even just put a timer to not get distracted.
Timer five minutes and then I'll look at chat.
Yeah, let's do 5 minutes. I'll do five minutes and then I'll look at chat so that we can do a lot of progress. Let's speed on this.
Let's see now. Uh let's go to the block and here let's copy collision boxes.
Collision box. Let's put it here.
Collision box. Let's remove the old one.
Add the new one. And let's start it to be default, the biggest it can be. And we'll go from there.
Uh we'll go from there.
Uh generate mesh. Let's hide most of them. Let's do the the one that goes upward. Let's do that. So, let's hide.
It should be best if I move this code in a separate function because we're just copying it around.
But it will have so many like methods to inject.
Okay, we'll leave it. We will not organize it. We will not clean it up.
Even though it's copy paste of the same code. This is the dot. We'll remove it.
This is the upward. We'll save this. And we'll comment all of these out. We'll comment all of these out.
And so let's start it. And now we should have the regular block hover. The simple one.
The simple one. Like this. Sure. And let's make it to be exactly where this is. exactly where this is.
Oh, we have a problem. Oh no, we have a problem because we rotate it.
We rotate just the mesh. How are we going to rotate the block hover? Oh no, I didn't think of that.
Oh no.
Oh man, didn't think about it.
Uh, damn it. How am I going to rotate the block? Okay, let's not think. Let's code. Let's code. Let's just do the block hover right now for this and we'll think for the rotations later. This is future me problem. Let's just do it now.
Let's not think of it much. How should it look like? Let's go to the other world uh to the debug world.
And how should it look like? It should be like this. But let's look at where is just it.
Uh do we have it just the upward one?
Uh I would assume we would have just the upward one since it would be easier to see to differentiate differentiate.
Where can we see just the ports one?
Uh, does anybody see it? No, I cannot see just the port one.
Bummer.
It has just this side one, but it doesn't have just the upward one.
It's not the end of the world. It would have been easier, but what can you do?
Um, I cannot find it.
I cannot find it. Okay, let's let's just use this one. Doesn't matter.
So, it will go from top to bottom and it will go um if this character can just stop for a moment.
Uh, let's go in spectator. Game mode.
Spectator.
Oh, but then I don't have the blockore creative.
Um, it's a little bit behind it and a little bit after it. Okay, sure. And here, how many blocks? Let's go inside of the other world. We need to see the pixels.
We need to see the pixels.
Uh, dust.
Glow stone dust. Can we place glowstone this? No. Okay, doesn't matter. I'm getting distracted.
Uh, let's put a block.
Let's put Oh, this was the worst one I could have picked. Let's pick wool.
Let's pick wool. Like this. And this is the block hover.
This is the block outline. So, how many pixels would it be? Um, let's say two pixels. And here two pixels. And from top to bottom. And here one pixel. Let's do that. Let's do that.
And which direction is this by default?
I think it's the north direction. This should be the north. Yeah, it's the north. It's the north side. So, h let me think about it. And towards where is the north? Actually, it's towards the negative Z. It's towards the negative Z.
Sure. So, here. H.
So, let's go here.
Let me think about it. So, the Yaxis should be from 0 to 16 most likely, and it should be on the Z.
So the Z should be zero to one. And here let's do from 2 to 14.
Let's do that. That should be enough.
Yeah, that looks all right.
That's look that looks all right.
Uh should I make it smaller?
Should I make it smaller?
It's hard to tell.
Uh, it looks fine.
Looks fine.
Um, yeah. Okay, we're out of time. Let's look at chat.
Let's look at chat.
What did I miss?
Make your speed slow and fast when control is done.
Oh, I can Oh, I can make it slower.
Okay.
Yeah, I was saying speed hotkey.
Let me see what's up with the cats.
They're not mine cats for sure. They don't do that. They're wilding outside.
Let's see what's up.
I just closed the window. That solved it.
There were some cats fighting.
They were fighting and I just closed the window.
There were some other cuts.
Open your chat on your phone.
Uh um I open it here on the stream so that you guys know when I'm looking at chat.
Uh when chat is not here, you'll guys know that I'm not looking at chat. Oh, come on, man.
Ignore these calculations. I know how much 1 + 3 and 3+ 1 is. Ignore these calculations.
How long do you think this game will take to finish? I don't know. And what will this game have? Just the redstone.
There is no finish. There is always more. Just the redstone. Does it does it stay in one place with rotation? Uh yeah, it will stay in one place. Just leave.
If you go on SP, you can change speed with scroll. Okay. Okay. Um, he will read that in three minutes. Hey, what are you going to do at rest? Yeah, I'm adding Cstone. Uh, you should just flat world with redstone ready format.
It's easier for normal world. Yeah, I can do flat world. What are you creating your um it's my this is with C++. Ever heard of fun? But recording your project is always an option.
What do you mean? Uh the more you iterate, the better your stuff is. You missed everything.
Uh why was the RAM usage three some minutes ago, bro?
Um um because of the the other I was responding to that guy. Okay. Uh it was probably 3 GB because of here because of here the it slowly changes the RAM here.
If I quickly change it like you will think here it's 1 GB. It just changes slowly. And here this torch has a problem but we'll ignore it for now.
That torch has a problem. Oh, and another problem. Let's ignore this.
Nobody saw it.
Nobody saw it. Okay. Uh, yeah, we have the block outline. We have the block outline.
Um, yeah. Uh so uh let's uh let's we have the outline for this and for the dot. So now if we add the dot let's go back.
Uh what's up? I hope this problem will fix itself type of situation. And the border line is the same width size as a single dot I think. Okay.
Um here uh let's bring back the dot.
Come on Visual Studio. I want to uncomment not to comment my comment.
And here let's bring back the dot collision box.
And now here, look at what we have. This is what we have.
This is what we have.
And now we need the same for this side.
But that will be difficult.
Uh I think because of rotation. No, we can. It's not that difficult actually as I think about it. Uh let's do one of the sides. Let's do one of the sides.
Let's comment all of these.
Let's bring back one of the site.
This is the Where is um I'm lost. Here is the site.
Let's bring this. Oh, come on. run comment every time, man. Every time.
Uh, and then here, um, let's have the default 0 by zero by default. The full block, the full block outline. That's how we'll Yeah. So, we Wait, why is the dot there?
We need to remove the dot.
Why is the dot there?
Oh, here is the dot.
Wait a minute.
H Wait a minute.
Wait a minute. It managed to work without hitting here. Generate. It managed to work. That's interesting.
That's interesting.
Yeah, I know of the shortcuts. I know them.
I know the shortcuts for commenting and uncommenting.
But um thanks for writing them.
If I didn't know them, it would be of uh great help.
H yeah. So what outline this side should have? This is the north side. This is the north side.
Uh let's go back.
This is the north side.
Oh, wait, wait, wait. It was falling.
Uh, here. This is the This is the east. This is the north.
I just need uh this is the south. I need just the north.
This and this is the south again.
Come on. I just this this this this is the north. So it should be this outline.
And what's the difference from this?
Is it from start to finish? Like is it full 16 blocks here? Is difficult to say since I cannot place blocks.
I cannot place blocks here.
Damn it.
I cannot place blocks here and it's difficult to see.
Um go in a quick super fat world to check. Yeah, but um I cannot force this state.
I cannot force this state like here in the metadata. I cannot force it. Can I?
Can I force it? This state like somebody said you could change the state with some kind of a debug stick.
What's that about? Debug.
Some kind of a debug stick.
I think you can. One sec. Let me check.
Okay.
Thank you.
Uh give debug. Okay. You need to give command. Okay. Okay. Okay. Okay. Okay.
Okay.
Give player. I can just do this. Uh debug stick.
Yes. And what can it do? East.
Yo, this is cool. This is cool. Okay, let's go to the flat world. Yeah, this is cool.
Yo, come on. Peaceful. Peaceful. Creative.
Super flat. Customize preset. Uh, red stone. Ready. Use. Done.
Um, red stone or blue stone, whatever, whatever you like to call it.
Red stone. Perfect.
And some lights, please.
Lump or glow stone.
Some glow stone. Cuz it's so dark.
Like, why is it so dark time?
It's dead day. Come on, man. I want it to be day and give um debug stick.
Perfect.
East.
Uh no, north power.
Selected south. What should I do?
Uh I'm hitting it. I'm hitting it. Uh, a right click is the what happens by default has no properties.
Has no prop.
Uh, let me do or should I be in spectator game mode spectator? No.
Uh just Google search it. Okay. Debug stick. I can hear your thoughts.
Can hear your thoughts.
Um usage uh can be used to change block state. Hitting the block allows player to select the block state key they wish to change. For example, switching between the condition and the for a command. Using the block allows them to cycle through the valid value using the block. What's using the block? Defaults to right click on mouse or left trigger on most controllers to uh for the block state key. Again, as an example, the player can make command block phase.
Sneaking while hitting using cycles through the block states using the directly on interactive block without sneaking, use the block itself.
Okay, I need to sneak.
Yo, yes, yes, yes, yes, yes, yes, yes.
Look at it. Look at it. Look, look, look, look, look.
Yes, yes, yes, yes, yes. Oh, I can change the power. Yo, that's sick.
Yo.
Yo, this is it. And okay, I want to compare it. No, it broke it. No, we had such good progress. It broke it.
Uh, west, south, north, east.
Okay. I want to compare it with this.
So, um, west. Okay.
South.
Sure. Now, this is here from the start.
And two blocks difference here. Two blocks difference. And is it two blocks difference here as well?
Kind of.
Yeah. Yeah. Yeah. Something like that.
And here is the full all the sides. All the sides. Okay, this was helpful. Yeah, man. This stick is so helpful.
It's super helpful.
Time set day then do game rule. And this is super helpful, man. You guys are gems. I should have started streaming way earlier. Like you guys have genius suggestions. Time set day game roll do daylight daylight.
Uh here maybe it's different.
Uh here maybe it's different.
Hey they changed it.
Yeah, they probably changed it. Attack is changed. Right click is set. Yeah, the hitbox of the redstone dust uh states uses the dot hitbox as a base like for the redstone side hitbox with uh as the redstone dot and is the same width as the redstone dot. And for the one you're doing right now is the same as the reststone hitbox, but one of the sides tended towards the wall. Yeah.
Uh break blocks around it for easier CR lines. What are we doing today? We're doing the rest on dust. I think uh there's a whole menu in the world settings with these types of Oh, nice.
Uh it's advanced something. Uh advanced time, advanced weather instead of do advanced time.
Advance time and what was the other part? False.
Maybe advance time. False. Yeah. Okay. Nice.
Yeah. Thank you. Thank you.
Uh let me just do the uh dot as well. Um yeah. Okay. This is a lot. Sure. I didn't need the stick for that.
Yeah. Okay.
Uh, that was useful.
We have 30 more minutes. 30 minutes.
We have 30 more minutes.
Uh, what can we do in half an hour?
Hopefully the block outlines.
So, the height, uh, this is for the side for the north side. I think this is for the north side.
This is for the north side. Yeah, it's the north.
is the north. So the y should be one.
Let's do one. And then this is the north. So it was negative z, right?
Let me quickly start it.
Uh the north is negative z.
So from zero up to 14 and then the sides are from 2 to 14 should be like that.
Yeah, this should be it. And look at how there is distance. Maybe it should be smaller. I think I think it's smaller actually.
I think it's smaller.
Yeah, I think it's smaller. It's smaller.
What if you do three and 13 like the viewer suggest suggested and I ignored?
Maybe.
Um, yeah, it's fine like that. It's fine like that. Maybe. Maybe.
Okay, let's bring back the dot.
Uh, we'll do Wait a minute.
Wait a minute. Am I doing it right?
Um, this is the dot actually. Oh, let's do four. Why don't we do four?
Why don't we do four?
Wait a minute. What's happening here?
Yeah, it's a bit ugly.
Damn, it's a bit ugly.
Uh, here. What's up?
Wait a minute. Why is it um why is this more extended? This is towards the X. Yeah, the negative X and positive X.
Uh which one is it? It's should be this one.
So, it should be like this.
Yeah, these are the custom block outlines, but they're so ugly, man.
They're so ugly. Uh, let's bring back this.
Oh, come on, man. You cannot be serious.
It's commenting the comment every time.
Yeah. Okay, let's look at it now. Now, we should have the mesh as well.
This is the custom outline. It's not perfect in Minecraft here. They combine it.
These imperfections, they combine them.
And I'm not Minecraft. I'm doing my best.
Like, let's say this is good enough.
Let's say this is good enough. Mile is so ugly.
this custom outline. It needs to be like this because um like it needs to be like that because uh here redstone has thousands of states. I cannot by hand do all of them.
It needs to be done by code and this is the best I can do. That's the best I can do as of now. Uh we can this will be good motivation for a future stream improvement. We don't have the time for this right now. These little outlines here to solve them. Like this is the best we can do.
Um what I missed.
Yeah, I was checking quick. Very impressive. Thank you. How uh how are you streaming playing Minecraft coding without your It's probably dying if I look at performance.
It's probably doing its best. Like the RAM is 55% usage. CPU is 14% usage. The GPU is 60% usage.
Uh it still has more room to go. It has more room to go.
Uh it's got optimization.
how he's got the RTX 3060. It's, excuse me, it's 3060 Ti. Uh, but it's pretty much the same. The difference is the memory it has. I think actually 360 is better since it has 16 GB and 360 Ti, which I have is 8 GB of memory and like that's too little.
Wait, I thought it was optimized.
Yeah, it's optim uh it's kind of optimized. I think it's throwing you off cuz the dust texture is not centered to the actual hit box in Minecraft.
We got but I have 64 and I can open more than 17. I have with brave with 70 tabs.
Yeah, it's just the RAM usage. Hey guys, does Minecraft really fry your computer?
Easiest game to run depending on the settings you use. Like if you increase the render distance to like uh more than like the maximum like here you you have a maximum in the render distance. Where is it? Here 32 chunks. But if you went above the maximum like 200 chunks, it will fry your PC obviously.
like uh Minecraft. It depends on how you set it up on how what settings you use.
He's ready for heavy usage. Can't you make the inside of the hitbox not render if it's appearing behind another hitbox?
Wait a minute. Can't you make the inside?
Well, I'm just rendering here outlines.
These are just like uh lines. These It's not a mesh. It's not a mesh. And so I don't have that much control over it.
It's not like a mesh where you can decide you where you can change the uh drawing order from clockwise to counterclockwise to change to play around with it or like to curl faces.
These are just lines. What I can do is like right now I go over all the collision boxes and I draw a cube wire frame around them. I can instead just draw lines and here to like look at all of the ranges, all of the boxes to see if they collide and wherever they collide to not draw lines there. But it will just be more complicated and it's not a priority.
we it's doing the main job, the custom outline. It makes it easy to um target other blocks. It makes it easy to target other blocks. It's not that big of a deal.
Like the main issue with the Java clone was that here with the Java clone. Oh, I the outlines are gone.
Uh let's start a new world.
I don't know why the outlines were gone.
And they're still gone. H, that's interesting.
Let's restart it.
Um, in the Java clone where I didn't have custom outlines, custom block outlines. Um, they're still gone. I must have broken them. That's weird. They were here. I'm sure of it. I must have removed the outlines for some reason. They're gone. But here, like you couldn't uh target the block behind it because of the outline here.
Like it's destroying the grass, but it should destroy the block itself.
Like it was very annoying. And if I place a redstone torch, like it destroys like here, I'm targeting the block, but it destroys the torch because of the outline.
And here it's doing its uh like it's good enough. It's good enough. We can target blocks behind it. It's good enough.
It doesn't look the best, but it's all right.
Um let's see.
I thought he was just calling on a work laptop. Who told you that optimizing?
You ever heard of minus?
Oh, is this for like the Oh, like some flags. The optimization one like what was it? Like there was there was a flag somewhere.
Where was it?
The Vauxil engine.
And here I think I had let's go to the folder.
Let's go folder in here the pre-make.
I had some flux. Yeah, I've used before flux.
What was it? I've used flux like this.
Yeah, like here. Optimize. optimize on.
Yeah, but in Visual Studio I'm not sure where I should enable them.
Uh so maybe here in the configuration manage configuration do we have and here I even have for the release I have release what debug I can just hit release.
What else?
Um, so you're saying to use this, you're saying to use this build commands here.
I don't know. Will this work?
No. Yeah, I don't know.
In pre-make, I know how to do these things. In here, I don't know how to do optimizations.
Yeah, that's really low RAM usage. My main menu in my game is 16 GB.
Um, could you elaborate? Yeah. What's this?
I also want to know what's this. Is it for optimization? Flak, you need some memory optimization. You shouldn't need that much memory unless um like are you talking about these five 100 mgabytes of RAM? I know I can lower them. I just haven't prioritized it.
Yo, Mkei, like why are you up?
Like you said you were going to bed at 11 p.m. Team food before back friend. My energy refilled. Go to bed. Yeah. What's up? Yo, quicker and a hacker. What's up?
A bit late today. Yeah. Right click on the project solutions project properties. Oh, okay. Okay. Okay. Okay.
Project properties. Yeah. Yeah. Thank you. W. Yeah. Wix again is the brains.
Wix is the brains.
Uh let's close this project. Oh, we don't have project properties. I think I think we don't have since I'm running it from the folder.
I'm running it from the folder since I'm using CMake. It just makes working with CMake a lot easier. Also, I should do it in CMake instead. I should do it in CMake. So can I do it here? The C some C make option.
Um probably see advanced settings.
It doesn't matter. It's not a that big of an issue.
It's not that big of an issue. Don't care about it.
Um, switch to project view. Switch to project view means applying maximum automation level. Well, that improves performance. It makes completion times unbearably slow. Can generate with cmake. Then you open that. Yeah, I'll save this uh suggestion. I'll save it. I'll do it some other time.
I'll do it some other time.
I'll save it here in X Calendar.
It's just weeks giving suggestions like the ones I'm seeing.
Mojack actually optimize Minecraft so that when you're AFK, the FPS gets lower to reduce CPU GPU usage. When you're back to playing the game, it goes back to normal.
Um, I feel super energetic. Go to bed, Mali.
You plus solar optimization behind the scenes is compiler flag optimization level three. Nice.
Um, optimization flags. I'll look them up.
I'll look them up, but not right now.
I'll look up the flux later.
Not today, but later.
Uh, the more I learn about issues with Minecraft with small things that are not yet fixed, the more I learn to focus on important stuff and leave perfection to another day. Please, please, please add particles ticks to hand animation.
Partial ticks. What do you mean by that?
The hitbox is a full block. Uh lighting definitely needs some work but it's like really close to real Minecraft partial tick uh float calcul first step of rendering which tells the progress take to next. I don't know what this means. You can do tick plus partial tick for animation. I don't know what that means. I know the tick system which is 20 times per second. Maybe 20 ticks. I don't know.
Oh, no. It's like 20 ticks. Uh, but it's Yeah, it was something like that. How many monitors you got? I got two monitors.
Uh, and I like 1:00 a.m. is good time to sleep, honestly. No, only changing in project generator. Pre-make. Uh, I'm not using pre-make for this project.
Pre-make was for for a previous project.
It was for a previous one. 23 is too early when I can barely sleep. five hours is an optimization but it's very very aggressive and can break some things.
Uh how do you manage different blocks?
What do you mean? O3 is compliant with CPP standard won't break anything. Nice.
That's good to hear. Kind of copying you with that daily routine.
I like every day I draw 3 hours. No, you can't. But here like honestly I'm not doing like 3 hours of actual coding.
Like here I'm mostly with chat like chatting around. It's let's say it's mostly like half an one hour and a half of actually coding for the stream. Now you can CMake was made for you to set it once in CMake. Is barely slower to compile. just barely debugable weeks coming up with all the ideas.
Yeah, 20 ticks per second. Oh, TPS you tick 20 times per second and if you render in between of ticks, partial ticks will be Yeah, I have the tick system in the the Java clone. I have the tick system.
Uh where was it? Here thick. Did I have it stick?
Yeah, here I just set it like each tick is 0.05 seconds which will make it 20 times per second. No, each tick is yeah 0.05 seconds per tick. And here uh every game loop, every time we loop, I just check how much time has passed. If 0.05 05 seconds have passed to do a game tick and then like to subtract the 0.05 and the next frame we check again and that's how I did 20 ticks. That's was my solution for having 20 ticks in the Java clone.
That was my solution progress in time to next stick from zero to one. He used to make three hours actually coding.
Yeah, it it used to 10% stream 9% like it deserve models using that.
Uh or is it just faces that make a cube?
Yeah, we barely make progress.
Um then you open that release already has Oh, okay. both releasing this. You can see this if you enable verbose build 99% reading chat. Yeah, we're making zero progress. Actually, I was thinking to do a silent stream just on Twitch with copyrighted music where I own 100% just code. Where I 100% just code. I was thinking of doing that. I haven't done it, but I was thinking of doing it like to put a vibe stream where is copyrighted music on Twitch and it's just coding like without looking at chat at all to have some streams like that. I was thinking about it.
Uh let's make some progress because we have 10 minutes. We'll do five more minutes and then we'll do a recap of the stream.
We'll do five minutes and a recap.
Let's try to Okay, what we currently have is this man. Did we do this for 3 hours, man? for three hours. Just this man, we are such a slow pace. Like once we got chatters, the productivity went to the sink.
The productivity went to the sink. When there was when there was nobody in chat, it was just coding, coding, coding, coding. You can look at the um the first few streams, it was just coding. And sometimes Mskelli was there when I was doing the skeletons.
So we have this part. We now need to do it for these parts as well. And it will become a little bit messy.
We need to do it for these parts as well.
Let's see now.
here.
Let's remove all of this.
All of this.
Oh, come on, man. That's so annoying.
That's so annoying.
These comments and comments again.
Comments again. I I want it to be a toggle. That's so annoying.
Uh, so we brought back this. We brought back these ones. We need to give him a block hover like this one. We need to give him a block outline.
Like this one. A block outline.
We need a block outline which we can give it here.
So let me comment this out. This is for uh let me see. This should be for the dot. I don't know. This should be for the up. This should be for the north side.
And this is for This is for north up probably.
So we need three more for south then west then east.
So the south should be let me see uh the Z axis should be from 15 to 16 probably. Let's check it.
Uh yeah I think so. Yeah, I lost one of it. I lost one of the collisions.
Oh, because there's a limit.
There's a limit. Max collision boxes.
It's five. How much is the maximum that we will need? It's um How much is the maximum?
We need four at the site. Five.
Nine. We need nine. We need nine.
I reached the maximum collision boxes.
We need nine.
Yeah. Okay. And now let's do the other sides.
Let's do the other sides.
H.
Let's do the other sides.
So, this is the north and the south.
need we need the west. Uh what direction is the west?
Uh let's remove this FPS counter because it's uh taking up space.
Where is the MSI after burner?
Where is it? I need to close it.
Close.
Uh and let's see where the west is. The west is towards negativex.
The west is x h. So let's restart it with zeros in here 16.
So it's the negativex. Uh let me see about that is the negativex. So oh wait oh I reset it. Yeah. Yeah. The west. This is it. This is the west. So this is the x-axis. So the xax. So it's from 0 to one the x-axis and this is the z.
This is the z. Okay.
Sure. So here 0 to 1 and here it should be 4 to 13.
It should be like that.
It should be like that. Yeah. Perfect.
And now we need the the east side. We need the east side, which should be pretty much the same thing, but here 15 to 16 and here four and well, I'm confused.
I'm confused.
It's 15 to 16 on the X and the Z from 4 to 13, I think. Let's test it.
Yes. Okay. And now we need the bottom parts. We need the bottom parts as well.
Oh, come on, man.
We need the bottom parts.
Uh, how many? One, two, three, four.
This is north, south, west, east, east.
So, the south is uh let me think about it.
Let me think about it. Um north and south.
Um so this is the north and it's from Z from zero to uh 13 probably. So it should be So it should be from the Z on the Z should be from four to 16 probably. Most likely I don't know.
Most likely. Yes.
And we need to actually render it the mesh. Now where I've commented, we need to uncomment it.
We need to uncomment the mesh.
Man, it's so ugly.
Okay. Okay. Let's the progress.
The beauty is in the journey, not the destination.
Uh let's see now.
Um okay, I'll I'll look at chat. We don't have much time, but I'll look at chat. I missed a lot of chat. Uh it's actually wholesome like you complain about no progress, but you like a grand parics is in time in between for animations. We're trying to implement a redstone before lighting. Is that wrong?
We have the same time zones. Yeah, that's cool. That's cool. Hi. Yeah, testing the redstone alignment. Yeah, I'm just doing the block outline skeletons were so fun. The double comment is a thing you'll never stop doing.
Do you read similar code to quote things?
I don't know what that means. Wouldn't be easier to make redstone stuff procedural for one side and create function for rotating. I'm rotating it at least the mesh. I'm not rotating the block outline. I'll figure out the block outline. Hello pizza. Hello water.
That is so familiar to Minecraft. Uh I finally finished my weapon system.
Nice.
I fixed enemies.
Nice.
You did. You are doing a lot of progress it seems.
Uh at this point just say you need to work on it. Why was it blue? Uh just look at the previous stream.
Uh yeah I need to work on it but it's like it's pretty finished. Lots of progress. It looks as good and much better. Microsoft have seen online create a Discord server. I had one but I deleted it since it was too distracting.
You can see how much I am distracting myself with the chat.
about how creation works in Minecraft.
Probably made by parkour community.
That's cool. What's the site? What's the site?
Share some share some with us. That outline thing will be It's for future me to figure out. Yeah, it's for future me. Maybe redstone you could make it full block with five transparent faces. It's fine.
It's fine.
Uh yo yo yo yo. I'm missing out on Twitch. What's up? Hey yo, hi. In which programming language you made?
Minecraft. I have in Java. I have in C++. Hey, hello. My internet sucks.
Might as well.
It hid links. Oh no, it hid the link.
Oh, come on. Uh, can you do like uh ww space uh google.com like that?
Okay. Uh, now we have this and we are over the 3 hours. Let's just finish this. Like before we end the stream, let's finish this. We also need these sides and that will be it. We just need these sides as well.
Uh, we just need two more sides. Two more sides.
Um, let me think about it. So, this is for the south. This is Yeah, for the west and for the east. See, this is negative x. Negative x west negativex. So, on the x is from 0 to um 0 to 13, I think.
Uh, and then here is from 4 to 13. And for the east it should be uh from east should be it should be from 4 to 16.
4 to 16 and here is the same. And that should be it.
That should be it.
Uh, have I have I gone past the limit? 1 2 3 4 5 8 9 Let's just increase the limit just to be sure. Let's just increase the limit to 10. Hit boxes, collision boxes, block outlines, however you would like to call them.
Yeah, that was it. Okay, this is it.
What an abomination.
This is it.
We managed to do something today.
Yeah, that's the custom block outline.
And that's it. It's so hideous.
It's so hideous.
Uh but that's it. That's it.
Um uh visible not yet. Maybe try just the main part warming around.
You have to see the actual name. You should remove the outline for the mo middle part of the redstone. Make it look less ugly. Ah, it's fine. It's fine. Yeah, I'll do a summary for what we did because we are at 3 hours and the stream always has a limit of 3 hours.
So, let's do a summary.
Um, what do we do? Uh, we finished the mesh for the redstone dust. Before it was just the dot at the center and now we have the upward directions. We have these sides. We have the full mesh. We just need to change its state to be like here all the possible states. We can change the color with the color color overlay. That's easy. And we have all the possible uh configurations we can set it in.
Um so we have all the possible meshes and we have the outlines. Uh these outlines are much better than mine.
Sure, but we're doing whatever we can.
Um, this is the outlines. We added the outlines in this stream. And that was it for this stream. That's what we managed to do this stream. And look at how when you focus them, it works. The the work we did that I showed in the video, it's still working even here. Even for this mon monstrosity, even here in this mess, it manages to catch it. And we can select just it. So here we can select the block behind it.
Here the block behind it. That's what we did in this dream. That was it.
And in the next stream we'll have to think of the how we're going to do the state. Each block has metadata custom data.
We have to figure out how we can uh store that data. But that's for future me to figure out, not for current me.
Uh, I'll read chat and we'll end it.
Like the little dot in the middle, partial ticks tick and discrete update step.
This reminds me, for example, if the game updates, so he removes that. Yeah. It is commonly used for smooth animations.
Do you know the name of the site? Oh, forget about that. What site? Uh, there was a site for the collisions. Sorry, wrong person. Block shading.
Goodbye P. This was an awesome stream.
Wiki collisions even if wasn't around low. Good job today, bro. It's looking good. You just got a subscriber. Thank you. Yeah, we'll be ending it. Bye, guys. Thank you all for watching, joining. Thought I was already sub when I saw you before. Yeah, good stream.
Thank you guys. Bye guys. We did three hours today. Yeah, I'll look at this link. Thank you, man. Thank you. You guys have awesome suggestions. Bye, guys.
Vidéos Similaires
resume fixed instantly 😭 Comment “app”andI’ll sendyou the link #parakeetaipartnership #resumetips
Ritcareer
686 views•2026-05-31
3D Basics in C
HirschDaniel
2K views•2026-06-05
Re: 🗣️📍theprophedu📍2026 GST 103 CLASS (E-EXAM REVISION)
theprophedu
636 views•2026-06-04
Search Algorithms Explained in 60 Seconds! 🤖💨
samarthtuliofficial
218 views•2026-06-01
People of Game of Thrones using JavaScript DOM
AltCampus
296 views•2026-05-30
Instagram accounts got PWNed
EricParker
13K views•2026-06-03
So What's Odin Lang Even Good For
TechOverTea
131 views•2026-06-01
🚀 BCS613C Compiler Design | Module 1 to 5 Schema Evaluation 🔥 | VTU 6th Sem 💯 #VTU #bcs613c #exam
Pranavaa-y4y
104 views•2026-06-02











