I programmed Minecraft from scratch... again.

2022 ж. 14 Қаң.
550 800 Рет қаралды

Grab Atlas VPN for just $1.39/mo before the deal expires: atlasv.pn/jdh 👨‍💻
come back next week im making minecraft again itll be fun i promise
PATREON: / jdah
CODE: github.com/jdah/minecraft-again
EDITOR: NeoVim
VIMRC: gist.github.com/jdah/4b4d98c2...
THEME: gruvbox
RESOURCES:
learnopengl.com
opengl-tutorial.org
shadertoy.com (that specific shader is www.shadertoy.com/view/MsB3WR)

Пікірлер
  • Grab Atlas VPN for just $1.39/mo before the deal expires! atlasv.pn/jdh

    @jdh@jdh2 жыл бұрын
    • 🤔 Okay

      @Magnogen@Magnogen2 жыл бұрын
    • 🐏

      @meiilol@meiilol2 жыл бұрын
    • hello

      @sonsofdarmy4325@sonsofdarmy43252 жыл бұрын
    • DON'T FOLLOW WHAT VPNS SAY TO YOU!

      @lenadams854@lenadams8542 жыл бұрын
    • make a good game

      @nil0bject@nil0bject2 жыл бұрын
  • Not bare bones enough, write it in machine code based off of your own instruction set, running on your own custom hardware that you mined the silicon for yourself

    @thegavinjackson@thegavinjackson2 жыл бұрын
    • Nah that’d be too slow and error prone, he’s gotta write his own language and compiler, this way it’s much faster than writing machine code when he starts the project

      @jrgerba@jrgerba2 жыл бұрын
    • @@jrgerba thats why its a joke.

      @danielekott4704@danielekott47042 жыл бұрын
    • give me a few months

      @jdh@jdh2 жыл бұрын
    • omg!

      @M9625Rahul@M9625Rahul2 жыл бұрын
    • He’s gotta build the monitor this all displays on

      @noam5153@noam51532 жыл бұрын
  • normal people: Why buy the cow when the milk is free JDH: Let's make a cow

    @williamjpriest7475@williamjpriest74752 жыл бұрын
    • then, on a fling, he will decide to spark electricity through some carbon based matter to create organic soup which eventually evolves to a cow

      @not_herobrine3752@not_herobrine37522 жыл бұрын
    • Sus

      @valpha359@valpha3592 жыл бұрын
    • @@not_herobrine3752 good soup

      @aizal1468@aizal14682 жыл бұрын
    • ye, but he did not even mine his own silica for his computer, and now even use a proper programming language instead of going to the better way of writing his own os for the minecraft he wants to build later.

      @thorin1045@thorin10452 жыл бұрын
    • even if it is little dump, I still like it

      @liab-qc5sk@liab-qc5sk2 жыл бұрын
  • The actual insanity of these videos is ridiculous, just making 3D engines from scratch because he wants to. Amazingly impressive!

    @h1ndlet@h1ndlet2 жыл бұрын
    • It's actually a fun (for nerds like me, at least) hobby, seeing how it's essentially creating viewable and interactable universes using only math and the power of computers. And the linear algebra and trigonometry involved can be learned without too big of a problem even by not very great or educated mathematicians like me (thank you 3blue1brown for teaching me more than my entire highschool did); and it's a mind-blowing experience itself, combining many "I will never, ever use this IRL" concepts into a practical, working whole.

      @DeuxisWasTaken@DeuxisWasTaken2 жыл бұрын
    • @@DeuxisWasTaken I tried using a 2d engine to do 3d and gave up after suffering math

      @puppergump4117@puppergump41172 жыл бұрын
    • I have to agree with @The Crazy Pineapple making engines is fun. I even make videos about it. But anything 3D graphics related is pretty interesting for me :)

      @t3v727@t3v7272 жыл бұрын
    • This is extremely far from scratch considering how much bgfx does for him... :)

      @SK83RJOSH@SK83RJOSH2 жыл бұрын
    • You should check ThinMatrix’s Equilinox series… be amazed 😊

      @nkusters@nkusters2 жыл бұрын
  • 1:20 I love that since C++ is a kinda middle-level language both low-level and high-level programmers can find common ground in complaining about it

    @alexandernyberg8668@alexandernyberg86682 жыл бұрын
    • lol yeah

      @thewitheredstriker@thewitheredstriker2 жыл бұрын
    • c++ is the best

      @awuuwa@awuuwa2 жыл бұрын
    • C++ is such a weird beast since the standard is so big and complicated that you can really just pick a style and write code in it, whether it be "C with classes" or "C# but I pretend to be cool." Then you read code written by other people and suffer greatly

      @Catonator@Catonator2 жыл бұрын
    • @@Catonator I feel like "C# but I pretend to be cool" is someone I know. I'm not sure who, but I must know someone that does this

      @okuno54@okuno542 жыл бұрын
    • @@Catonator Apologize for the stupid question, but what makes C# not cool? Is it just it being easier, or what?

      @notme8232@notme82322 жыл бұрын
  • jdh: *complains about people using engines and shortcuts* also jdh: *uses a rendering library*

    @nicopad2260@nicopad22602 жыл бұрын
    • It's for combatabity

      @tappineapple3381@tappineapple33812 жыл бұрын
    • while this is a valid point lets pretend that it's for easy cross compatibility with all platforms because the old one didn't run on windows and used openGL (vulkan better fight me)

      @universallyepicnarwhal9102@universallyepicnarwhal91022 жыл бұрын
    • @@universallyepicnarwhal9102 I'm sure you could get it compiled on windows pretty easily. I was referring to cross-compatability between graphical api's...

      @tappineapple3381@tappineapple33812 жыл бұрын
    • jdh in a parallel universe: writing my own rendering library in assembly

      @lx4302@lx43022 жыл бұрын
    • Cut him some slack , even 2 years ago he used a rendering library

      @mashug1731@mashug17312 жыл бұрын
  • The only appropriate option would have been to code in HolyC, make it 16 color, and include elephants.

    @cgfgsks201@cgfgsks2012 жыл бұрын
    • i agree. he could also implement a drivable truck so he can hit the glowing... well you know.

      @the_zlatk0@the_zlatk02 жыл бұрын
    • ..... What on Earth is HolyC????

      @nikkiofthevalley@nikkiofthevalley2 жыл бұрын
    • @@nikkiofthevalley A language designed for an OS from god, implemented by someone with schizophrenia.

      @abbanf@abbanf2 жыл бұрын
    • @@abbanf hey, the dude wrote a compiler, don't do him like that

      @user-qp3qj2jv6f@user-qp3qj2jv6f2 жыл бұрын
    • @@user-qp3qj2jv6f so what? Writing a compiler is definitely not an impossible task, people do that all the time in unis

      @pavelkalugin4537@pavelkalugin45372 жыл бұрын
  • Looks awesome! You're getting a bit of peter-panning (8:14, where the shadows aren't touching the objects). This could be from a constant bias that you may have added to fix shadow acne, but for the future it's much better to have an adaptive bias. Look up slope-scale depth bias if you have the time. Nice work mate, love the vids!

    @halberd3776@halberd37762 жыл бұрын
    • That’s actually due to depth map resolution :) I should have cranked it up to 8192x8192 for the shots in the video - but IIRC there is already slope-scale depth biasing in the lighting shader!

      @jdh@jdh2 жыл бұрын
    • I like your funny words magic man

      @__8120@__81202 жыл бұрын
    • ​@@__8120 AHHAHAHAHA

      @joaoruss0@joaoruss02 жыл бұрын
    • @@jdh probably you can just grow the shadowed part a pixel or two (I mean adding to the border)

      @pavelkalugin4537@pavelkalugin45372 жыл бұрын
    • Looks like you're casting from back faces, not front faces? Otherwise, yeah, you need shadow cascades for an open world. Which sucks.

      @SimonBuchanNz@SimonBuchanNz2 жыл бұрын
  • I need that video on the top 10 reasons you hate Rust. It would be hilarious and informative from someone who's done an insane amount of low level computing.

    @AndrewScott007@AndrewScott0072 жыл бұрын
    • Professional Rust shill here, and I'm also curious why he dislikes the language. I do agree it was probably a good choice to avoid it here though, given the game-dev scene is still so-so in Rust.

      @zombie_pigdragon@zombie_pigdragon2 жыл бұрын
    • @@zombie_pigdragon Rly ? Look at Tantan he's using rust (bevy) for some of his projects and it seems like it's working. I have never heard someone complain about rust being used in a game. Like the language a game is done in shouldn't really matter. The only thing that matters is if it's a good game or not.

      @sutsuj6437@sutsuj64372 жыл бұрын
    • @@sutsuj6437 Of course it's possible- I've been keeping an eye on it, though I left that out of my first comment. Right now, I'd even argue that if you're willing to put in work at a similar level to this video, everything is available, sans examples. But those examples are a key part- with finished products comes learning tools, and features and ergonomics. The Rust gamedev scene doesn't have that yet, and it'll be years before it can catch up to C++. I'm sure it's possible today (and in fact, I hope someone will) to recreate this video with wgpu and patience, but it'll still show more rough edges than C++ for a while longer.

      @zombie_pigdragon@zombie_pigdragon2 жыл бұрын
    • @@zombie_pigdragon As someone who tried rust for games... Yeah sadly it's not that great for games. Still use it for literally everything else though.

      @telnobynoyator_6183@telnobynoyator_61832 жыл бұрын
    • @Zombie_Pigdragon would rust have better performance if it had those things?

      @longiusaescius2537@longiusaescius2537 Жыл бұрын
  • when this engine is pretty finished, it'd be cool to see an in depth explanation of the math and how everything is organized and works together kinda like you did with the jdh-8

    @OrangeDied@OrangeDied2 жыл бұрын
    • Great idea please do this

      @user-ry4ip9ps9x@user-ry4ip9ps9x2 жыл бұрын
    • @OrangeDied Roblox pfp?

      @longiusaescius2537@longiusaescius2537 Жыл бұрын
    • @@longiusaescius2537 yes

      @OrangeDied@OrangeDied Жыл бұрын
    • @@OrangeDied nice, Napoleonic wars are very aesthetic

      @longiusaescius2537@longiusaescius2537 Жыл бұрын
  • Jdh I really hope you end up doing a crash course lesson on game engine concepts and implementations some day. I noticed that you skim over many details for the sake of staying on topic, but I'm sure that many other people along with myself would also appreciate a video that gets into the nitty gritty. Amazing work in this video as usual, you've got me hooked on to your channel!

    @alexanderdavis319@alexanderdavis3192 жыл бұрын
    • I agree so much! He should definitely find the time to explain what he likes of libraries and how he has written this code!

      @lauritslolck@lauritslolck2 жыл бұрын
    • Me too !!

      @astroid-ws4py@astroid-ws4py2 жыл бұрын
    • jdh doesn't seem to be the type of person that knows how to teach what he knows. That's a skill separate from the knowledge you have.

      @BrunodeSouzaLino@BrunodeSouzaLino2 жыл бұрын
  • jdh: "java is stupid and to easy" me an java programmer:"yes"

    @popeofrei4124@popeofrei41242 жыл бұрын
    • lol " *an* java programmer" Almost missed the joke

      @ilmalocchio@ilmalocchio2 жыл бұрын
    • @@ilmalocchio i didn't get it :(

      @semihkaplan@semihkaplan2 жыл бұрын
    • @@semihkaplan Yeah I guess the "an" was just a typo and there is no further joke here.

      @dasKeks28@dasKeks282 жыл бұрын
    • @@dasKeks28 yeah i guess

      @semihkaplan@semihkaplan2 жыл бұрын
    • @@dasKeks28 not a typo, n oway. Try to type "a" right now and consider how bad your finger would have to slip to type "an" instead. It's a very nuanced joke. He's calling himself stupid, and he gave us a hint of evidence for it (bad grammar)

      @ilmalocchio@ilmalocchio2 жыл бұрын
  • I think it may be somewhere in the blur / bloom / composite section - "screen-space ambient occlusion" at 8:36, there is a region of brighter shadow along the bottom edge of the objects. Maybe you've addressed this but it looks like a flaw as is. Likely you've improved on it already. I hate to nitpick as this work is far beyond my capability and I'm truly impressed.

    @billr3053@billr30532 жыл бұрын
  • ive written a comment like this before on one of your previous videos (obviously previous) and i still stand to it: i love every single video you upload since i not only very much enjoy every computer science-ish content you upload but i also enjoy the way you make the videos and you yourself, still i would love to see the c minecraft version becoming bigger, maybe becoming a bigger community project the more it grows and attention it gets, with some real gameplay and multiplayer, i just love the idea of a super fast running c-made minecraft clone made entierly by you and your community, please dont let this die hahaha

    @kritischparken@kritischparken2 жыл бұрын
  • Great work, I enjoyed every frame of the timelapse of the coding process. Seems the shadow a bit off and the ambient ocullusion was wrong but meh the shadow was sick.

    @playbyan1453@playbyan14532 жыл бұрын
  • bro im so glad to see u back. i saw ur first vod on my recommended and then moved on to watch every single video on ur channel more than once. glad to hear ur gonna post more and is very excited

    @RecklessGames@RecklessGames2 жыл бұрын
  • I am continuously amazed how much effort you put into every video you make. The results are really impressive!

    @Tantandev@Tantandev2 жыл бұрын
  • A new jdh video is the best thing to wake up to after sleeping past all my alarms

    @GameKraken@GameKraken2 жыл бұрын
  • Great to see you come to the C++ side of the force. We fear and love C++. But seriously, with concepts, modules and coroutines in C++20, it's a whole other language now. It's modern-modern C++.

    @luizchagasjardim@luizchagasjardim2 жыл бұрын
    • The features in C++20 can be pretty amazing, but it's a shame that they're still crudely bolted on top of the "old" C++ which was crudely bolted on top of C. The features might be "modern" (whatever that means), but C++ is not modern and never will be unless the entire world suddenly starts writing C++20 overnight and all known and maintained code magically transforms as well. Tons of professional C++ developers still write C++ like it's 1998. And tons of actively maintained code is still written in that style as well. And onboarding devs to this new style is not easy either, as it's hard to deny that with all those cool features there has also been an explosion in complexity in an already complex language.

      @robinmattheussen2395@robinmattheussen23952 жыл бұрын
    • @@robinmattheussen2395 I agree 100%. That's why I started avoiding working with C++. It's my favorite language if I'm working alone or with a team where everyone thinks like me. But I've been in teams where one guy wants to write C, another guy wants to slap virtual everywhere and a third guy is randomly mashing the keyboard but somehow it compiles and no one can refactor it now.

      @luizchagasjardim@luizchagasjardim2 жыл бұрын
  • Yes! I remember being amazed when you first uploaded the original, IIRC I watched it about a week after it came out. And now you've built an OS, a computer, and now you have re-done it, even better! Great job!

    @theemeraldfalcon9184@theemeraldfalcon91842 жыл бұрын
  • Great work! All of your projects and videos just hit the right spot!

    @theocrob@theocrob2 жыл бұрын
  • The shadows being lighter near the edge of the block casting it is bothering meeeee Regardless of that minor nitpick, amazing work as usual

    @melody_florum@melody_florum2 жыл бұрын
    • Yeah it's a bit odd I also think it must give a special unique charming vibe to the game after some time though (think of all of Minecraft's quirks that we just got to enjoy haha)

      @Hack3900@Hack39002 жыл бұрын
  • As a minecraft dev this is actually great, insane fast progress :D

    @CeilingPanda@CeilingPanda2 жыл бұрын
    • You worked on minecraft?

      @LoggyDev@LoggyDev2 жыл бұрын
    • hey wait a minute why is there a video with over s million views on your channel

      @yeppiidev@yeppiidev2 жыл бұрын
    • Oscar Åkesson? didn't your brother also do something?

      @nil0bject@nil0bject2 жыл бұрын
    • U worked on minecraft, mr minecraft dev?

      @echoptic775@echoptic7752 жыл бұрын
    • Yes, I work at Mojang currently, no I dont have a brother :^) edit and because I was immature and basically ignored dcma as that wasnt really a thing when I was too young to understand stuff

      @CeilingPanda@CeilingPanda2 жыл бұрын
  • Crazy how much better this one looks than the last one, well done!

    @ramenu8150@ramenu81502 жыл бұрын
  • I can watch people recreate minecraft from scratch for years. There's something so satisfying about listening to what goes into and also setting up your own algorithm for interpreting this invisible voxel data into a mesh generated representation I'd bet money you could make a game out of that alone. And if I knew more coding than just looping through arrays I'd make one

    @user199x@user199x Жыл бұрын
  • Congrats on getting a sponsor! Looking forward to how you make this!

    @Magnogen@Magnogen2 жыл бұрын
  • Surprised to see this on my homepage when it was uploaded a few minutes ago lol

    @FrostBitttn@FrostBitttn2 жыл бұрын
    • Yeah i got the notification instantly

      @echoptic775@echoptic7752 жыл бұрын
  • Gosh I love this, well put together and everything! Great work :3

    @krystostheoverlord1261@krystostheoverlord12612 жыл бұрын
  • Woooooow nice I'm so glad you started doing engine-programming-related content again! Keep up the good work!

    @nini700@nini7002 жыл бұрын
  • It would be really cool if you start your own programming tutorials for languages like c and c++ considering how skilled you are.

    @_M_643@_M_6432 жыл бұрын
  • Can't wait to see you make Minecraft using C# in 2024.

    @InappropriatePolarbear@InappropriatePolarbear2 жыл бұрын
    • Happy 2024

      @Novatailonpawz@Novatailonpawz2 ай бұрын
  • Your Minecraft videos were some of my favourite videos on KZhead. Thanks for making more!!!

    @smellthel@smellthel2 жыл бұрын
  • Awesome work! Look forward to seeing what you do with it :)

    @mkrichey1@mkrichey12 жыл бұрын
  • Programmers when they have free time :

    @0yousif0@0yousif02 жыл бұрын
  • You are easily, and by far my favourite coding youtuber.

    @appliedskater@appliedskater2 жыл бұрын
  • Wow you just blow me away. Genius. My first programming language was C under Unix, best environment dev setup I have used.

    @semilife@semilife2 жыл бұрын
  • Thanks, it is so much more interesting to hear about the engine mechanics than whatever gameplay.

    @b4ph0m3tdk9@b4ph0m3tdk94 ай бұрын
  • The Cherno should do a code review!

    @fishfpv9916@fishfpv99162 жыл бұрын
  • I can make the blocks show up but getting them textured, and rendering with lighting and collisions is hard as hell for me. Good job, jdh.

    @stevenhorton8604@stevenhorton86042 жыл бұрын
  • please keep this series going! its so interesting for some reason.

    @Zephyr01@Zephyr01 Жыл бұрын
  • Very nice video! I really appreciate you sharing something non-trivial you've made with bgfx. Not very common on the KZheads. It makes me chuckle (in a good way) to see those Rust-like numeric typedefs and Result in there. After moving to C++17, I sorely missed designated initializers, but liked that I could use some C++-specific features (e.g. templates, namespaces) and ignore the rest.

    @ISKLEMMI@ISKLEMMI2 жыл бұрын
  • this is actually the best mineclone i've ever seen i do wish there were more interesting blocks like stairs though

    @gizmoduuuuuuuuuuuuuuuuuuuu2773@gizmoduuuuuuuuuuuuuuuuuuuu27732 жыл бұрын
  • i am very happy to see you back to the Chanel i really like your videos keep up the good work

    @mascaradninja9838@mascaradninja98382 жыл бұрын
  • Glad to see you're getting a sponsor jdh! Keep up the good work!

    @jakehuang3545@jakehuang35452 жыл бұрын
  • PFFFFFTTT Make Minecraft from scratch, anyone can do that but do it twice, now that's impressive.

    @tun1p@tun1p2 жыл бұрын
  • Okay what the hell is up with people hating on c#? Yes it is MS developed but the whole thing is open source (compiler, runtime, libraries etc.) It is cross platform and with ahead of time compilation it has really good speed. So why the hate? I'm genuinely curious.

    @dpeter99@dpeter992 жыл бұрын
    • I wouldn't say I hate it (I used to do a lot of projects with Unity) but for my specific use case it just does the job worse than other languages. If you want a garbage collected language take Go, if you want an easy to use take Python, if you want speed C++ or Rust, etc

      @howdyimflowey4341@howdyimflowey43412 жыл бұрын
    • Eh, I don't even hate it - I've used it at a few jobs full time even. My primary gripe is actually the same as C++: the language feels really bloated. Especially comparing with something like Java, it feels like (imo) there's a lot more you need to keep in your head while you're using it.

      @jdh@jdh2 жыл бұрын
    • @@jdh Java, C, C++, C#... How many languages do you know, if I may ask?

      @achille0072@achille00722 жыл бұрын
    • @@achille0072 "know" is a really strong word for any language 😄 I'm familiar with a lot of different ones (like touched on/messed around with/done projects in more than I would care to list or could probably remember) but most comfortable in Java and C

      @jdh@jdh2 жыл бұрын
    • Its basically just Java, but less original

      @divine203@divine2032 жыл бұрын
  • omg this is what I needed right now. Thanks man. You're a GENIUS!

    @thecancelledclub665@thecancelledclub6652 жыл бұрын
  • What a calm video to watch... thank you very much for producing this content.

    @ItaloPenna@ItaloPenna10 ай бұрын
  • This was a great video, makes me want to pick up a new project! Would love to see a tutorial ;)

    @bagel7860@bagel78602 жыл бұрын
  • Clearly should have done it in NodeJS

    @fidgetymouse@fidgetymouse2 жыл бұрын
  • Nice work! As a C++ developer by trade, what I like about Rust is pretty similar to what brought you to C++ from C; Not having to fumble around with compiler macros, much nicer type definitions, straightforward value formatting etc. It also removes a lot of boilerplate code, provides sensible defaults, and its exception handling is much less fiddly.

    @KingBowserLP@KingBowserLP2 жыл бұрын
  • I am waiting for more! Thank you, that was a cool video)

    @justeugen@justeugen2 жыл бұрын
  • honestly I was a bit distracted and I kinda forgot it wasn't minecraft when you were building the house, job very well done

    @patrickhector@patrickhector2 жыл бұрын
  • modern C++ is sick

    @Basta147@Basta1472 жыл бұрын
  • Just tweak the AO a bit please, you could even render it at half the resolution but you absolutelly need to make it smoother and way less visible, it's meant to be a subtle effect.

    @YOEL_44@YOEL_442 жыл бұрын
  • Omg you dont know how long i have been waiting for this awesome 🙌🏻

    @flobuilds@flobuilds2 жыл бұрын
  • It's super interesting learning about coding and game rendering works through this video, it's super informative! Also, I bet that new MacBook Pro is coming in really handy for code compiling while working on this project, I've heard it's really good at that.

    @TheIshikawaRin@TheIshikawaRin2 жыл бұрын
  • Can't wait for jdh to build a unreal competitor running off a computer that he programmed and built himself

    @callmevarez867@callmevarez8672 жыл бұрын
    • There are RISC-V and FPGAs for that to help

      @astroid-ws4py@astroid-ws4py2 жыл бұрын
  • It's odd, i have an internal war with myself on which lang i like more Odin or C#, cause on one hand i hate everything about the way C# handles memory, and it's OOP nature. It's extremely nice to type, and really costumizeable.. Also loving it in Unity since they compile away to machine code... And it's able to do manual memory management there as well.. That said, I'm also a really big fan of Odin, cause of it's data oriented nature, and simplicity, something amazing about the only loop being a for, and their consistentcy is godly, like one concept in one place means the same in another context and it's wild! Their approach to memory allocation is also quite awesome!

    @dani485b@dani485b2 жыл бұрын
    • C# has unsafe blocks. You don't have to let the CLR do everything if you don't want to.

      @BrunodeSouzaLino@BrunodeSouzaLino2 жыл бұрын
    • @@BrunodeSouzaLino correct, but not as open as using Unity Burst for C# :3 - tho new core 6 comes close!

      @dani485b@dani485b2 жыл бұрын
  • I hope to see more livestreams in the future as well!

    @jaymarksum6542@jaymarksum65422 жыл бұрын
  • Oh yessss, he did it again !!!! love your work jdh

    @scaffus@scaffus2 жыл бұрын
  • C++ is one of the fastest programming languages out there so it’s rad

    @smellthel@smellthel2 жыл бұрын
  • Elephant in the room - what's the bright line next to each cube before the shadow starts? You mention ambient occlusion, too, so I would have assumed "extra dark" in those spots. Is that a bug or an engine limitation? @8:05 ish. It's clearly visible everywhere shadows are shown.

    @R.Daneel@R.Daneel2 жыл бұрын
    • I suppose he just came up with a quick solution by blurring all of the edges of the shadows to a lighter color, hence a bright line at the start of the shadow right next to the cube.

      @algot34@algot342 жыл бұрын
    • It is an artifact/bug from the shadows. To fix it JDH just needs to render everything front and back without any backface culling when creating the shadows maps. There is a full explanation in the comments of the learnopengl article mentioned in the video.

      @damdal1837@damdal18372 жыл бұрын
    • Yeah, this bug kinda negates all the work he put into implementing ambient occlusion.

      @NeasCZ@NeasCZ2 жыл бұрын
  • Wow, this reminds me of old minecraft. (I didn’t exactly play around the time, but I’ve been doing some reviewing)

    @Alderc1de@Alderc1de6 ай бұрын
  • This is pretty amazing! Maybe for the next episode you should add mobs to add life to the game

    @romrom83@romrom832 жыл бұрын
  • Me trying to render a simple cube in opengl: 😭😭😭😭 what am I doing in life??

    @anonymoussloth6687@anonymoussloth66872 жыл бұрын
    • Same but with a triangle instead. Literally the first thing you do in opengl tutorials.

      @syedahkam7164@syedahkam71642 жыл бұрын
    • Try Vulkan mate. 1000× more debuggable.

      @shambhav9534@shambhav95342 жыл бұрын
    • @@shambhav9534 I believe the boilerplate though will be intimidating for beginners. That's why it's always recommended to start with opengl.

      @syedahkam7164@syedahkam71642 жыл бұрын
    • @@syedahkam7164 I don't think beginners who can't code a thousand line boilerplate should even start doing graphics.

      @shambhav9534@shambhav95342 жыл бұрын
    • @@shambhav9534 Thats reasonable

      @syedahkam7164@syedahkam71642 жыл бұрын
  • Idea: you should try to implement redstone into it

    @SantiAcq@SantiAcq2 жыл бұрын
    • that would be sick

      @lstudios3237@lstudios32372 жыл бұрын
  • I'm taking a C++ class this semester, so I'm excited to watch this video. I'll write off watching this video as studying during the weekend. And even if I couldn't, I'd probably watch this anyways. ;D

    @Ceceiliapus@Ceceiliapus2 жыл бұрын
  • Dude! You should make a good in-depth coding tutorial! You make some of the best stuff I've seen with out an engine!

    @oglothenerd@oglothenerd Жыл бұрын
  • What's your problem with C#? Similar syntax to java, speed is pretty much on par, but it seems like it has nicer features, and more flexibility.

    @BlazertronGames@BlazertronGames2 жыл бұрын
    • He said he didn’t like Java, and c# has a garbage collector which ig he doesnt like

      @tommy4808@tommy48082 жыл бұрын
    • My biggest issue is just language bloat tbh - if you're going to work in that sort of world of managed code, Java is at least a lot easier to keep in your head than C# I think. The language just feels like a bit more of a mess imo

      @jdh@jdh2 жыл бұрын
    • @@tommy4808 I do actually like Java a lot, it's probably the language I'm the most familiar with out of any - and 99.99999% of the time the garbage collector is fine - but for this project it comes down to portability (meaning not Java ☹), performance, and ease of adoption (meaning not C#) for me

      @jdh@jdh2 жыл бұрын
    • @@jdh What do you mean by bloat? Do you have some examples?

      @BlazertronGames@BlazertronGames2 жыл бұрын
    • @@jdh epic

      @tommy4808@tommy48082 жыл бұрын
  • Nah, Cpp is my favorite language

    @nialyavuzturk379@nialyavuzturk3792 жыл бұрын
    • same it's both low-level and high-level on the same time, depending on how you want to use it

      @benjamindreyer9884@benjamindreyer98842 жыл бұрын
  • that deferred shading i feel really made this clone look a Lot like minecraft, more so than any other clones ive seen

    @GigglebunsUV@GigglebunsUV2 жыл бұрын
  • I was looking forward to seeing some pistons or a JDH version of redstone.

    @Somerandomdude420@Somerandomdude4202 жыл бұрын
  • As a Rust fanboy, I appreciate the friendly Rust hate. 👍

    @magnum_dingus@magnum_dingus2 жыл бұрын
    • 🦀🔫👨‍💻

      @jdh@jdh2 жыл бұрын
    • How do you find a Rust dev? Pretty easy, they’ll tell you.

      @deviousengineer8398@deviousengineer83982 жыл бұрын
  • Coming from your previous videos I was expecting something like „Recreating Minecraft in assembly without os in 24 hours“ but I like C++ so I liked this one too 👍

    @matteoreiter@matteoreiter2 жыл бұрын
  • The original video made me want to finally make strides towards learning game making. Thanks!

    @nobyra@nobyra2 жыл бұрын
  • Hi

    @kelvium8669@kelvium86692 жыл бұрын
    • HI

      @Primesky@Primesky2 жыл бұрын
    • Hello first comment!

      @Skizzors@Skizzors2 жыл бұрын
  • I can't believe he don't use Morse code. I'm unsubscribe

    @Linuxfy@Linuxfy2 жыл бұрын
  • Impressive work. Looks like there is a bug with your ambient occlusion where it is inverting a your sun shadows to be lightened instead of additionally darkened.

    @nateshrager512@nateshrager512 Жыл бұрын
  • Great video, as always ! I think you gave me the want to experiment with C++

    @Oxey405@Oxey4052 жыл бұрын
  • These videos always get me in the mood to program something.

    @squaredsquee7814@squaredsquee78142 жыл бұрын
  • I love the videos, you keep me inspired to code :)

    @ghastcrazy5918@ghastcrazy59182 жыл бұрын
  • Nicely done, congrats! I'd turn down the AO a bit and try that the shadows really match to the corners. Properly the shadows don't clamp to the edges because of the resolution of the shadow map (which doesn't matter while creating worlds, but in close ups it's fairly recognizable). Usually the dropped shadow should be adjacent to a normal which faces away from the sun -> this information can get connected? I'm planning to write an engine in C++ as well, I like the language choice. Was thinking about doing it in C because it would deliver more compatibility for future porting, but I really would miss objects. Why didn't you use OpenGL directly with C++?

    @cgtinker@cgtinker2 жыл бұрын
  • Great Video! Now you could add some Caves and other Biomes and maybe a survival mode. :) Would be cool to watch you do that :D

    @umbreonben@umbreonben2 жыл бұрын
  • "C++ isn't memory safe" jdh: "But you see... much like classes, garbage collectors, and other stuff you don't need, you don't NEED memory safety."

    @costelinha1867@costelinha1867 Жыл бұрын
  • I don't know what your talking about but your voice is relaxing. Pls don't stop making videos

    @Dogeforlife0@Dogeforlife02 жыл бұрын
  • One thing in lighting and graphics which you omitted was that lighting is calculated backwards. You have a light, then you cast a ray to that light and follow it till it finally reaching the light.

    @whtiequillBj@whtiequillBj2 жыл бұрын
    • That's not really what is happening here, shadow mapping is wildly different from any sort of ray tracing.

      @inv41id@inv41id2 жыл бұрын
    • Also, not even true with most real time ray tracing. Those calculate each "bounce" forward from the light.

      @SimonBuchanNz@SimonBuchanNz2 жыл бұрын
    • @@SimonBuchanNz Do they though? I thought the typical raytracing method is to trace a ray from each pixel of the camera (presumably from the near plane) because otherwise the vast majority of the light rays never hit the camera and are wasted effort.

      @clonkex@clonkex2 жыл бұрын
    • @@clonkex it's a bit messier than that, since you need to take lots of samples per pixel per bounce, and lots of bounces per sample to get a convincing image, so the naive, brute force approach lots of offline renderers use isn't feasible. Different RT GI implementations have different specifics for working around this, but they all generally amount to persisting the amount of light in the world at each point and then iterating on bouncing it around, which has the effect of flowing the light from the source around the scene before it reaches the camera. That said, the actual form of the persisted world lighting is very heavily camera influenced (to the point of being screen space for Q2RTX), so yeah, not a nice clean answer. RT shadows might be pretty much tracing in reverse, but I don't know if I quite count a single bounce as having any direction?

      @SimonBuchanNz@SimonBuchanNz2 жыл бұрын
  • notch: Lets make minecraft in lwjgl jdh: imagine not doing this on your own custom built computer with a custom built graphics card with your own custom operating system using your own programming language with your own graphics library... what a newby

    @davidfelix5096@davidfelix50962 жыл бұрын
    • Lol so true

      @davidpolberaff8875@davidpolberaff88752 жыл бұрын
  • FWIW, it is possible to do namespaces in C. It's not a built-in language feature, but with C99 and the inline keyword, it's possible to do link-time mangling and compile-time demangling through the use of definition macros and import macros. In practice, it's actually not that bad. You get the same benefits of C++ style namespaces, namely, no compile-time or link-time name clashes of publicly defined functions, types, and globals.

    @nanolith@nanolith Жыл бұрын
  • You video just made my day. :) I'm sick, and so I'm happy that you posted. (:

    @zachgolle1802@zachgolle18022 жыл бұрын
  • 4:05 std::format is available in clang-14 (using libc++ instead of libstdc++) as well as MSVC

    @destiny_02@destiny_022 жыл бұрын
  • Very nice video, really interesting! But could you, perhaps, make a more in-depth video on your thought process of making a 3d engine. It's a very interesting topic for beginners like me and it would help a lot.

    @nik1andr22@nik1andr222 жыл бұрын
  • 3:40 One of the great dangers of C++: You feel safe.

    @ellion0815@ellion0815Ай бұрын
  • You have mad a promise. More Game Dev videos. I will be waiting

    @Viachev@Viachev2 жыл бұрын
  • "Flame wars will boost engagement anyway." Truly, a man of inimitable wisdom. (I too have a soft spot for C++, despite being a huge Rust shill. It makes me wanna tear my hair out sometimes, but I did a lot of robotics stuff with it in high school.)

    @_colonial_@_colonial_ Жыл бұрын
  • I‘ve scrolled a bit through the comments and haven‘t seen a single reference to the clearly superior language. So here it goes: *Rust.* Let the carnage begin

    @mr.norris3840@mr.norris38402 жыл бұрын
  • Dude you should just make an entire series and finish the major parts of the game before all the content and stuff just to style on Mojang, that’ll be hilarious. Amazing progress tho, looks so much better than the real game already

    @ghoulash8650@ghoulash8650 Жыл бұрын
  • Well made video youre good at editing and coding

    @yunus1352@yunus13522 жыл бұрын
  • Your ideas are intriguing to me, and I wish to subscribe to your newsletter.

    @esra_erimez@esra_erimez2 жыл бұрын
  • Jdh: Makes minecraft twice in C and C++ Me: Struggling to make a tetris board render in C#

    @KyleGarzon-gx3hd@KyleGarzon-gx3hd Жыл бұрын
KZhead