Godot 4 C# Tutorial - Minecraft Terrain - Part 2 (Blocks)
Ойындар
Get the source code on my Patreon: / xen42
Join my Discord server idk why not: / discord
Watch part 1 first: • Godot 4 C# Tutorial - ...
Part 3 here: • Godot 4 C# Tutorial - ...
Was made in Godot version 4.2 (mono) with Visual Studio 2022
This video covers implementing different block types and procedural terrain generation.
This is the second video in a tutorial series on how you can make editable voxel terrain with threaded chunk loading/unloading in Godot 4 using C#. This is an intermediate tutorial series that assumes you have working knowledge of C# and Godot, as well as LINQ.
You can also just blindly copy stuff down I can't tell you what to do I'm not your mom.
I want to be real and just call the video voxel terrain but KZread analytics tell me people search for "Godot Minecraft" and we just have to play the algorithm am I right, a man's gotta eat.
I just copied the description from the first video instead of finding new unique ways to say key words for the KZread algorithm. Gottem.
Пікірлер: 30
I like how you actually explain why you're doing something in the code, most people just show you the code and say "this works, don't ask why". Rgba8 refers to an image format that uses 8 bits per color channel, it allows for 256 shades of each color.
@xen-42
7 ай бұрын
Yeah had some comments on an old tutorial asking for more explanations so I decided to make this one a lot slower and actually take time to explain stuff. And right on yeah 8 bits per channel makes sense, so pretty standard colour right
thank you very much. This stuff is really difficult to explain, but you do it so well. I was able to recreate this in gdscript without any issues too!
@xen-42
2 ай бұрын
happy to hear it was helpful!
Thank you for providing this great resource :)
@xen-42
2 ай бұрын
You're welcome!
Just a word of caution regarding Linq. Different platforms have different levels of Linq support so if you ever plan to develop a game for multiple platforms it might complicate matters if your game uses Linq expressions. It won't make a difference for this project but just take note to check to what extend your target platforms support Linq, if at all.
@xen-42
5 ай бұрын
I had no idea!
While not having seen the entirety of the video. I got confused by a lack of explanation surrounding the _Ready override. I don't know whether this was due in part by you prefacing it with something along the lines of don't worry if you don't understand or more the general lack of reasoning around why we were including each part and how they tied into a finished and complete game/voxel experience. Hopefully this is enough of a positive critique to warrant. I think in cases where the explanation of low-level details adds more than it distracts; and/or situations where the low-level details are extensively foundational and/or frequently used concepts it is more helpful than hurtful to provide a moderate level of explanation down to the level of causation. For example, textures seem like an important large collection of resources, and it seemed to me unwarranted for each to have its own definition within a variable, when we can categorize them into some sort of buckets like solid, ... or even like object classes like ores, ... I will revisit this video soon though to finish, because generally you provide a great learning experience.
Awesome job, thanks!
@xen-42
8 ай бұрын
Thanks, glad you liked it so far!
Great video! At 10:40: Mipmaps are a way to create lower resolutions for a texture so that when it is drawn at distance it doesn't need to be the full resolution. I don't know this engine well but "true" here looks like it will auto generate them. Should note that MipMaps are turned off with "BaseMaterial3D.TextureFilterEnum.Nearest" because it would ruin the style.
@xen-42
6 ай бұрын
right I see, makes sense!
thank u
@xen-42
8 ай бұрын
You're welcome!
the textures dont seem to get out of the wierd uv issue, ive gotten it to boot up as a black box, but it doesnt seem to except my textures even after reimporting, any thoughts? and my textures are within the limits of the block texture size so i dunno
My comment got either snatched by KZread automatically or by you because of my pastebin code which is understandable and I didn't think about that until after I had posted it, but I fixed the UV problem, I was just passing _gridWidth twice in TextureAtlasSize by accident. Still having trouble with the noise texture, but I'll keep trying to figure it out.
@Konclan
Ай бұрын
Oh! The copied chunks were sharing a collision and mesh shape for some reason, just resetting them in and reloading the Level scene fixed it I guess. I copied and pasted the chunks, not duplicating them like you said, but maybe that's still wrong idk. It's fixed now though.
@xen-42
Ай бұрын
Not sure where the comment got caught since I dont see it held for review, anyway glad you found the problem! Yeah copy-pasting does the same as duplicating so you really have to always instantiate a new scene. It's a bug with Godot that people seem to be working on but isnt fixed yet!
I have the grass texture gray for coloring, how do I color it? I realize that I probably need to use a shader, but I don't understand how to use it.
@xen-42
7 ай бұрын
Would definitely be with a shader yeah, I'm not actually sure how I'd go about it. Would probably be enough to fill its own video, I'm not really sure how I would do that yet
does anyone else get a The type or namespace name 'Dictionary' could not be found (are you missing a using directive or an assembly reference?) error or is it just me?
@TheLastPhoen1x
Ай бұрын
using Godot.Collections;
Welp, I watched all of this. I am not an intelligent programmer, more of a designer. I just happen to know I have to program so stuff like this helps. If you were interested in working with someone on a sandbox game that isn't just a minecraft clone hmu, I need some help.
You should use a match/switch case for the block manager when picking blocks.
You should really post the videos in higher video quality, its damn near impossible to read anything you're doing on screen ;-;
@xen-42
2 ай бұрын
wdym, I don't get how 1080p is impossible to read
why do you have to make the source code paid!?!? i can't fix a problem without going back through the video now, it's so annoying
@xen-42
4 ай бұрын
food costs money