I Remade Minecraft But It is Optimized!

Поділитися
Вставка
  • Опубліковано 7 кві 2024
  • In this video, I will talk about the optimizations that I did for my C++ Minecraft Clone!
    #cpp #gamedev #minecraft #opengl
    Join my Discord:
    / discord
    Try my Steam Game Midnight Arrow:
    store.steampowered.com/app/23...
    Join this channel if you want to support me 😻:
    / @lowlevelgamedev9330
    Repo:
    github.com/meemknight/ourCraft
    Minecraft Clone Playlist 🟩:
    • Minecraft clone
    Full Game Guide in C++ 😎🕹️!
    • Make a C++ game FULL G...
    Music: Evan King - Everything is Okay
    / contextsensitive
    contextsensitive.bandcamp.com/
    Minecraft soundtrack: C418 - Aria Math
    Minecraft soundtrack: C418 - Subwoofer Lullaby
    Minecraft soundtrack: C418 - Minecraft
  • Розваги

КОМЕНТАРІ • 259

  • @linksword7110
    @linksword7110 Місяць тому +325

    you should greedy mesh air, or you cant?

    • @lowlevelgamedev9330
      @lowlevelgamedev9330  Місяць тому +85

      😂😂😂😂 ye good idea, next April fools video

    • @Zevest
      @Zevest Місяць тому +13

      It’s been a while since last time I heard this

    • @lod4246
      @lod4246 Місяць тому +9

      (or you cant do that)

    • @TripZGaming_YT
      @TripZGaming_YT Місяць тому +3

      is this an optimized mod for minecraft? If not can you make one that absolutely obliterates sodium? Is it even possible?

    • @_BuZzer199
      @_BuZzer199 Місяць тому +1

      @@lowlevelgamedev9330 add the create mod to this clone + Steam N' Rails, Create Enchantment Industry and also Create: Copycats Plus to your MC copy to make it a slightly original game

  • @SavageDaAverage
    @SavageDaAverage Місяць тому +217

    Bro made Bedrock 2.0. Mad respect!

    • @razorgmyt6772
      @razorgmyt6772 27 днів тому

      normal Bedrock is c#, right?

    • @The_Cow
      @The_Cow 27 днів тому +12

      ​@@razorgmyt6772c++ I think

    • @JoopiterGD
      @JoopiterGD 24 дні тому +5

      @@razorgmyt6772 Legacy console is C#, but bedrock is C++

    • @gamethecupdog
      @gamethecupdog 22 дні тому

      ​@@JoopiterGDWhere did you hear this? I only see C++ showing up, but I'm seeing no sources.

    • @crimmerz2000
      @crimmerz2000 2 дні тому

      @@SavageDaAveragec# and c++ are two different things btw

  • @bartekburmistrz8679
    @bartekburmistrz8679 Місяць тому +111

    You could hugely increase performance by using meshlets instead of the standard rendering pipeline, Other things you could do is 1. Greedy meshing 2. In the standard pipeline gpus always check a 2x2 grid during rasterization so If you have lots of small triangles (less then 2x2 pixels it will hit performance quite hard, mentioned in UE nanite talk/website), 3. Don't really understand if you talked about this or something else but you can only ever see 3 faces of a block so you don't even have to bother with checking the rest 4. mipmaping will make the game look better 5 Some kind of occlusion. You may also be limited by something stupid like texture streaming recommend you use renderdoc quite easy to use yet absolutely amnazing it helped me so many times I can't even count. Greate video, really enjoyable to watch

  • @DRAGNIL68
    @DRAGNIL68 Місяць тому +62

    i love watching your vids at 1 am

    • @lowlevelgamedev9330
      @lowlevelgamedev9330  Місяць тому +17

      Best videos to watch 💪, but after that go to sleep 🔫

    • @InfiniteCoder01
      @InfiniteCoder01 Місяць тому

      But after that I will go and my my homework

    • @SPL1NTER_SE
      @SPL1NTER_SE Місяць тому +6

      I love watching your videos at 5 am… before I go to bed 🗿

    • @Settiis
      @Settiis Місяць тому

      3:20 am for me

    • @yahia098
      @yahia098 24 дні тому

      No I will watch more i don't need sleep i need more vids​@lowlevelgamedev9330

  • @kidnamedfinger.productions
    @kidnamedfinger.productions Місяць тому +22

    If it gets modding api it might become a really cool game.

    • @yeppiidev
      @yeppiidev 19 днів тому

      reminds me of minetest

  • @MortonMcCastle
    @MortonMcCastle Місяць тому +10

    This is awesome! I've been thinking about hyper-optimized Minecraft clones lately. I wish I was skilled enough to make one. I have ideas, but ideas alone aren't worth much.
    Just finished watching the video. Thanks for making it!

  • @toksic424
    @toksic424 Місяць тому +19

    Seriously though, this is sick! I genuinely hope your channel grows because this is a top tier resource.

  • @distantrepublic
    @distantrepublic Місяць тому +52

    Very nice video, thank you for making it.
    A few things:
    Did you consider adding ambient occlusion at all? Seems like a minor performance hit that makes the lighting look very good.
    Did you see Vercidiums video on using 6 different meshes for each face for a chunk, so you can do face culling on the CPU side and might mean you can save memory bandwidth on face data.

  • @know_how1063
    @know_how1063 Місяць тому +7

    yo, i had this idea a while ago, i glad someone actually did it because im way to lazy

  • @alvesvaren
    @alvesvaren Місяць тому +9

    Would be cool if it talked the minecraft protocol, so you could join vanilla servers

  • @leflo_
    @leflo_ Місяць тому +12

    Have you seen Vercidium video on optimizations ? There are some steps that I find quite interesting

  • @sti3167
    @sti3167 Місяць тому +2

    To learn something new you could also try ray tracing voxels in compute shader instead, it has way bigger potential and overall way more natural for voxels, once you implement caching of traversal and low-res pass to exploit ray&frame coherence(can do it at CPU too) it's basically instant.. gotta use mip-maps for grid though. Also lower overheads for textures, not necessary to use uv unwrapping.
    P.S sure triangle rasterization still fine for voxels but it's boring and has overheads/annoying

  • @panagiotisapostolidis6424
    @panagiotisapostolidis6424 Місяць тому +3

    you should look into working on Cosmic Reach, another very promising minecraft-like game, that already has a small community around it.

  • @davidconnor2817
    @davidconnor2817 29 днів тому +1

    Good job, can't wait for more.

  • @lupuskt
    @lupuskt Місяць тому +1

    Seeing chunk buffer data stored in list + map combo made my eye twitch. Unless i misunderstood something in that code snippet, you gonna choke your memory on linear reads of lists and additions to map - making whole idea of huge buffer obsolete, I know that its very convenient and clean, but good ol' malloc/realloc would perform much better on simple data. Dont wanna nitpick, this might be just a macro optimization in the end, chunk view culling + sorting is deffinetly much more costly part of code anyway. Good luck with optimizations and bug hunting :D

    • @lowlevelgamedev9330
      @lowlevelgamedev9330  Місяць тому

      I know that it looks terrible but it is a reason for that. Chunks will be allocated sepparately in the first place, no way around it they are too big so one pointer per chunk, so it is a map to acces it fast. But the list is there because I need to know the order in which I used them, because I want to always throw away the least used chunk. so this is actually a least recently used cache. and again no wat to use one big, buffer that thing has like one gb of memory (measured) ther's no way I can use than when I need load and unload chunks many many times per frame

  • @kairu_b
    @kairu_b Місяць тому +1

    Great work!

  • @RawFish2DChannel
    @RawFish2DChannel Місяць тому

    About Z-Pre Pass optimisation, I read somewhere that you can get more performance with it, if you for example send less vertices to render it.
    For example if you rendering normally, you still need to send vertices multiple times, even if they are adjacent, because if you don't texture coodrinates will be messed up, but if you send same vertex for adjacent blocks, or even better, make a simple greedy mesh geometry (one quad for many block faces) I think it can definitelly increace performance.
    But I haven't tested that yet (I'm also playing with making optimized Minecraft-like renderer)

    • @lowlevelgamedev9330
      @lowlevelgamedev9330  Місяць тому

      yo that sounds like it might really help, the problem appaeently is that z pre pass doesnt work with discards in the frafment becahse the gpu cant optimize early depth anymore so I have to look at that

  • @gandev5285
    @gandev5285 Місяць тому +6

    Use mesh shaders like the minecraft nvidium mod does to make the game only compatible with like 20% of the GPUs out there but run really good lol.

    • @lowlevelgamedev9330
      @lowlevelgamedev9330  Місяць тому +4

      ye that's one reason I don't want to use mesh shaders :((

    • @ettiSurreal
      @ettiSurreal Місяць тому

      ​@@lowlevelgamedev9330 youd be able to support mesh shaders on all gpus from the past 6 years if you written this on dx12 or vulkan, but i dont blame you because these apis are much lower level and more difficult to implement

    • @nnnik3595
      @nnnik3595 Місяць тому

      @@lowlevelgamedev9330 Unless you start over and switch to Vulkan.

  • @Houstonruss
    @Houstonruss Місяць тому +9

    I mean you remade it and *tried* to optimize it.
    Why the heck did you not START with frustrum culling?
    You can't have AO or smooth lighting the way you started.
    Any plans to have occlusion culling?
    Shadow culling?
    Colored lighting?
    The chunk visualizer is pretty nice.

    • @lowlevelgamedev9330
      @lowlevelgamedev9330  Місяць тому +3

      well because that was a thing I will do anyway so I wanted to make the other parts as good as possible, for ao I will probably use ssdo or something and I'll see what other things I'll add

  • @cyanmargh
    @cyanmargh Місяць тому +36

    The real reason why minecraft is slow is not the graphics. I can't say for sure, but imo the biggest problems are: pathfinding for a large number of mobs, simulation of all processes (except particles, probably) on the CPU side and the fact that the game does not use any of parallelism with many layers case (and i'm not sure is it even possible)

    • @riley1636
      @riley1636 Місяць тому +26

      Well graphics are actually a big part of it... Thats why sodium mod works. It updates a lot of the rendering engine with modern OpenGL. Same with nvidium, which uses modern graphics techniques like using meshes. Minecraft's rendering engine is outdated and slow.
      Dont get me wrong, theres a lot more too but most people will see a huge improvement with a better rendering engine alone. This is already proved by performance mods. When everything is already loaded into memory (i.e. no cpu intensive chunk loading) the main bottleneck is typically graphics.

    • @dieselgeezer18
      @dieselgeezer18 Місяць тому +4

      @@riley1636 Minecraft on low end CPUs can be a pain in the ass. If you run towards unexplored chunks the game starts stuttering, and if you use an elytra or fly in creative mode it becomes a crazy stuttery mess

    • @cyanmargh
      @cyanmargh Місяць тому +3

      @@riley1636 I understand what you're saying. and yes, indeed, the graphical component of Minecraft really suffers, as evidenced by the devlogs of enthusiasts who recreate its graphics (although most still do not do such important things as mobs, particles, blocks with custom models such as anvils, etc. , this is still quite clear evidence). However, i think the graphics are not a bottleneck - that's what I wanted to say. It is much easier to draw 1000 chunks than to simulate same amount correctly. Especially if the game has many objects with non-trivial logic (unlike, for example, noita, where pixels work according to relatively simple laws). By the way, to confirm this, i need to do accurate performance measurements. Without this, it's just a thought experiment (and the result of observing that a couple hundred mobs can cause more lag than a giant factory from create mod)

    • @riley1636
      @riley1636 Місяць тому +3

      @@cyanmargh I think youre right in theory, but in practice minecraft doesnt usually have that many mobs all at once for it to be a major issue. You're right though, its more of a thought experiment right now without measuring.

    • @lordawid
      @lordawid Місяць тому

      @@riley1636 mesh shaders are not "meshes". nvidium utilizes the new mesh shaders. It replaces vertex and fragment shaders with just one mesh shader which works similar to compute shaders.

  • @NightWalkerx
    @NightWalkerx Місяць тому

    Top tier content 🤝🏻

  • @IvanPopelyshev
    @IvanPopelyshev Місяць тому +4

    Unified geometry, still 30 FPS? Its strange, how do you upload that gpuBuffer partially?

    • @lowlevelgamedev9330
      @lowlevelgamedev9330  Місяць тому +1

      well I think it is just the fact that there os too much geometry, after the frustum culling I get to very good fps

  • @ZerSKYi
    @ZerSKYi Місяць тому +6

    What about making cubic chunks like in Cubic Chunks Mod?

    • @ZerSKYi
      @ZerSKYi Місяць тому +3

      It works by generating the terrain of Minecraft in chunks of 16x16x16. Using this method the map's height was able to be increased by 500x while also improving performance.
      "With 16x16x16 chunks we don't load all the chunks underground that we can't see, massively reducing the memory load. The memory usage is probably the main improvement, although there could be others like creating standard 16x16x16 chunks for air - use just a few special bytes to describe an empty air chunk, massively reducing memory usage and simplifying any code interaction (rendering, physics, AI) of an empty chunk (extend to all dirt chunks, all water chunks, all rock chunks."

    • @nnnik3595
      @nnnik3595 Місяць тому

      ​@@ZerSKYi There is a few "known bugs" with that mod and the sky light engine.

  • @Mihnnnea
    @Mihnnnea Місяць тому +1

    instant mi am dat seama ca esti roman dupa accent

  • @Snikker
    @Snikker Місяць тому

    wait until he finds out that the distant horizons mod uses 3d skyboxes instead of loading the chunks

  • @griffinmartin6356
    @griffinmartin6356 Місяць тому +1

    you should make it so it can connect to normal Minecraft servers allowing it to be a custom client

  • @bacon_with_brussels_sprout
    @bacon_with_brussels_sprout Місяць тому

    I haven't watched your series, But is it possible to use codes from other optimization mods on Minecraft to optimize the game?
    Edit: Im not smart so don't take my words for blah blah and just correct me, But wouldn't if each chunk instead had huge data and then each block and every block didn't have individual pos data, More block data and blockstate can be loaded (such as biome color?)
    Edit 2: Blockface culling
    Edit 3: Buffer light updates

  • @guardianoftexas5188
    @guardianoftexas5188 29 днів тому

    You should release this 😂😂😂 as a pre alpha launch so we all can explore it for fun.

    • @lowlevelgamedev9330
      @lowlevelgamedev9330  29 днів тому +1

      yes I want to do that but I want to finish gameplay stuff first, untill than you can easily compile it and try it yourself 💪💪

  • @TheeAcid
    @TheeAcid Місяць тому

    redstone optimisations needed when it's time. hoppers cause stupid lag

    • @bacon_with_brussels_sprout
      @bacon_with_brussels_sprout Місяць тому

      Just don't code it to be laggy in the first place

    • @nnnik3595
      @nnnik3595 Місяць тому +1

      Hoppers now work much better in the latest version of Minecraft and Lithium basically makes them lag free.

  • @DccToon
    @DccToon 22 дні тому

    another way to make it run on low end hardware:
    low quality lighting
    directx version [if you use opengl]
    no hd water
    this could be like a toaster version to the game

    • @lowlevelgamedev9330
      @lowlevelgamedev9330  22 дні тому

      ye I want to add something like that in the settings when the game is ready💪💪

    • @DccToon
      @DccToon 22 дні тому

      @@lowlevelgamedev9330 lets gooo

  • @RANJITH-fi1di
    @RANJITH-fi1di 19 днів тому

    Instead of rendering whole chunk to render upto -260 can u render only 10 blocks under the player y position because player can't see under the grass blocks unless digging helps increasing fps ??

    • @lowlevelgamedev9330
      @lowlevelgamedev9330  19 днів тому

      almost, unfortunatelly it's not that easy but there is an advanced cave culling algorithm that finds lut what you can see and improves the fps even more

  • @_GhostMiner
    @_GhostMiner 2 дні тому

    Now add 13 years of updates and see how well it'll run

  • @VM-AM-XUE69
    @VM-AM-XUE69 Місяць тому

    wow

  • @Heavy_Lvy
    @Heavy_Lvy Місяць тому +3

    the thumbnail and title make it sound like youre just recreating Bedrock lmao.

  • @Broom-fz2gm
    @Broom-fz2gm Місяць тому

    Where is the folder space? I don't see it anywhere.

  • @EvilPumpkin1337
    @EvilPumpkin1337 Місяць тому

    nice video mate...

  • @Volian0
    @Volian0 Місяць тому

    Wow, I thought single VBO would improve things

  • @rodrigoetoobe2536
    @rodrigoetoobe2536 Місяць тому +2

    wasnt minecraft built using "entt" an ECS library? it would be really hard to beat them using OOP instead of ECS

    • @ahmedwafi2171
      @ahmedwafi2171 Місяць тому

      I don't know why am loving your video man!!.....also I suggest you do make a beginner OpenGL series if you can XD.....

    • @lowlevelgamedev9330
      @lowlevelgamedev9330  Місяць тому

      hmmm I don't know, I don't use neither OOP nor ECS 😂 and it doesn't really matter, what you are talking about relates to gameplay stuff, I haven't gotten there yet

    • @kplays_6000
      @kplays_6000 Місяць тому +1

      The Bedrock edition was, yeah. Java didn't use ECS though

    • @lowlevelgamedev9330
      @lowlevelgamedev9330  Місяць тому

      thx bro 💪 I might do some beginner opengl stuff

    • @TheoParis
      @TheoParis Місяць тому +1

      @@kplays_6000 Yes - minecraft bedrock edition uses entt. I was thinking of making a minecraft clone with vulkan and the flecs ECS myself.

  • @axorusmt7042
    @axorusmt7042 Місяць тому +5

    Have you seen FinalForEach's minecraft clone?

    • @lukasjetu9776
      @lukasjetu9776 Місяць тому +2

      just wanted to say that!!!

    • @lowlevelgamedev9330
      @lowlevelgamedev9330  Місяць тому +6

      yes, nice project tho I would have to rewatch his first video to see if his optimizations are better than mine, regardless he uses Java so it's different

    • @SimplyTheRedMelon
      @SimplyTheRedMelon Місяць тому

      Ik i wasnt the only on here feom cosmic reach lol

  • @cxlappsed1548
    @cxlappsed1548 25 днів тому

    So i came from a java background, any tips on learning cpp its hard

    • @lowlevelgamedev9330
      @lowlevelgamedev9330  25 днів тому +1

      yess, the first tip is don't treat c++ like java. Don't allocate things on the heap often. I use containers and stuff that do allocations for me but other than that in that project I trped the word "new" less than 10 times. And you saw the scale of it so don't overuse new. Other than that I have some recent videos on tips for starting learning cpp for gamedev 💪💪

    • @cxlappsed1548
      @cxlappsed1548 25 днів тому

      ​@@lowlevelgamedev9330Alright thanks, CPP has a lot of complex stuff that confuses me, like the #ifendregion type stuff,I understand variables etc

  • @Artleksandr
    @Artleksandr 26 днів тому

    Man invented the bicycle. This is called minecraft bedrock edition.

    • @lowlevelgamedev9330
      @lowlevelgamedev9330  26 днів тому

      so who will maintain minecraft bedrock edition if no one learns how to make it again?

    • @Artleksandr
      @Artleksandr 26 днів тому

      @@lowlevelgamedev9330 fair enough.

  • @toksic424
    @toksic424 Місяць тому +3

    Why you don't try to make a game with Vulkan (or you can't do that)

    • @lowlevelgamedev9330
      @lowlevelgamedev9330  Місяць тому +3

      fuck 😂😂 I don't know vulkan yet but maybe in the future, who knows, if I will do vulkan I will use this comment for the video 💪

    • @nnnik3595
      @nnnik3595 Місяць тому

      @@lowlevelgamedev9330 btw Vulkan has mesh shaders on most modern GPUs.

  • @otter5293
    @otter5293 Місяць тому

    Out of curiosity, are you from Romania? Your acceent sounds like it, and if you are, I'm happy to tell you: "Si eu sunt!"

  • @Wolf-yp2qk
    @Wolf-yp2qk Місяць тому +4

    Bruh, why even say it was optimized?

  • @MrHamof
    @MrHamof 29 днів тому +1

    6:40 The way to solve this performance issue is to do the depth render at a reduced resolution, you can get the rough shape of the geometry at a much lower resolution than what you need for the display, and this can significantly reduce the cost of doing this. This video explains how this is often done in game dev: ua-cam.com/video/CHYxjpYep_M/v-deo.html

  • @oglothenerd
    @oglothenerd 29 днів тому +1

    Do you do greedy meshing?

  • @NekuroMC
    @NekuroMC Місяць тому

    Damn imagine what he could do if he was High level game dev

  • @KeopsVisuals
    @KeopsVisuals Місяць тому

    Imagineaza-ti in viitor dupa ce se mai dezvolta inteligenta artificiala poate va schimba modul in care minecraft se genereaza sau se proceseaza combinat cu computere mai puternice si mai eficiente

  • @FiFaRdoH.
    @FiFaRdoH. Місяць тому

    why do you sound like the Toppat Clan Leader from Henry Stickmin

  • @principleshipcoleoid8095
    @principleshipcoleoid8095 Місяць тому

    Wouldn't at some point you need more space for textures?

    • @lowlevelgamedev9330
      @lowlevelgamedev9330  Місяць тому +1

      I have a 16 bit index for textures so I can have 2^16 textures, that's more than enough

  • @arq634
    @arq634 Місяць тому

    what about lod

  • @mikhailhumphries
    @mikhailhumphries Місяць тому +1

    i tried to get into c++ but i have no idea where to start and theres no easy way to get in

    • @ProGaming-kb9io
      @ProGaming-kb9io Місяць тому +3

      first do a hello world, and then study:
      variables, for/while loops, if, else, switch statements, functions that take nothing and return void, functions with parameters, functions that return values, a bit on classes/structs, enums, a bit on raw pointers and references, a bit on templates,
      then go back and study a lot about inheritance and different rules, rule of 5, 3, none, learn about different types of casting: static, dynamic, reinterpret, c style cast, learn about const, and constexpr, go back to pointers, smart pointers, go back to templates and learn SFINAE and a bit of metaprogramming.Go back on functions and learn lambdas, function pointers, RAII.
      Some people might differ with the order of things, but this order to learn c++ is ok
      From there you will know what to do next.

    • @HappySlappyFace
      @HappySlappyFace Місяць тому

      Google "freeCodeCamp c# certificate" it's a course that was made last year and it's entirely free and made in collaboration with microsoft

    • @mikhailhumphries
      @mikhailhumphries Місяць тому

      @@ProGaming-kb9io how do you even compile 3d model?

  • @squidwardmasterstudios1992
    @squidwardmasterstudios1992 Місяць тому

    Mojang: See you in court buddy

    • @MichaelPohoreski
      @MichaelPohoreski Місяць тому +2

      *Zach Barth:* _Notch on his blog admitted Minecraft ripped off Infiniminer. “The act of borrowing ideas is integral to the creative process. There are games that came before Infiniminer, and there are games that will come after Minecraft. That’s how it works.”_

    • @roywempor8395
      @roywempor8395 13 днів тому

      unless he sells it, its not a crime

    • @MichaelPohoreski
      @MichaelPohoreski 13 днів тому

      @@roywempor8395 That's incorrect. One CAN sell a Minecraft clone as long as you don't use ANY assets you don't have the legal right to. In the 1980's there where court cases that ruled *gameplay is not copyrightable.*

  • @SavageDaAverage
    @SavageDaAverage Місяць тому +2

    You should remake yandere sim and fix that games code too and remove the questionable features.

    • @nicknamedd_
      @nicknamedd_ Місяць тому +1

      Not really worth of effort in it's entirety.

    • @SavageDaAverage
      @SavageDaAverage Місяць тому

      @@nicknamedd_ true lol

  • @Sorin96SecondChannel
    @Sorin96SecondChannel Місяць тому

    When a Romanian does an even better job than Mojang. :))))))) Respect frate!

  • @_PanFoX_
    @_PanFoX_ Місяць тому

    Yo we have the same GPU

  • @principleshipcoleoid8095
    @principleshipcoleoid8095 Місяць тому

    I wonder.. aren't linked lists pretty much always worse than dynamically allocated vectors?

    • @lowlevelgamedev9330
      @lowlevelgamedev9330  Місяць тому

      yes, but there are some times when they are usefull, that is one example because the most common operation is renoving and adding elements, and I also have that map to instantly acces each element

    • @principleshipcoleoid8095
      @principleshipcoleoid8095 Місяць тому

      @@lowlevelgamedev9330 it sounds like trading off some storage for speed. Always have to benchmark but I guess you did and found the tradeoff to be good

  • @DOTADER
    @DOTADER 21 день тому

    Would this game run on linux?

    • @lowlevelgamedev9330
      @lowlevelgamedev9330  21 день тому +1

      yes tho I'm not doing linux dev, you can help me compile it on linux if you want but all of the things that I use are cross platform 💪💪

  • @annonimusfroggo
    @annonimusfroggo Місяць тому +2

    Java minecraft's optimisation almost makes me want to play bedrock

    • @fsForward
      @fsForward Місяць тому +2

      Mojang was talking about rewriting the Java version with C++ (and a small percent in c#). I hope they still think thay way.

    • @lowlevelgamedev9330
      @lowlevelgamedev9330  Місяць тому +1

      well yeah, but for that you can use thing like optifine

    • @lowlevelgamedev9330
      @lowlevelgamedev9330  Місяць тому +2

      hm interesting, tho that would kill all of the current mods :(

    • @davidddo
      @davidddo Місяць тому

      ​@lowlevelgamedev9330 worth it

    • @Felipe-rn1gf
      @Felipe-rn1gf Місяць тому

      @@fsForward 🗿

  • @OliverJ440
    @OliverJ440 21 день тому

    challenge for you. I have. Very old laptop with only 1gb of ram and a cpu intel atom. You goal is for the game can run t least 15 fps on this. Note that is has. Very old graphics card the i dont remenber the model

  • @Broom-fz2gm
    @Broom-fz2gm Місяць тому

    I want to play the game, can you make it available for download?

    • @lowlevelgamedev9330
      @lowlevelgamedev9330  Місяць тому

      you can easily compile it: clone the repo, right click inside the folder space, open with visual studio, select from the dropdowm of the play button, ourcraft, add a 64 bit release and ctrl+f5
      if you have any problems ping me on my discord server 💪

    • @Broom-fz2gm
      @Broom-fz2gm Місяць тому

      @@lowlevelgamedev9330 i cant use discord, im too young for it.

    • @Broom-fz2gm
      @Broom-fz2gm Місяць тому

      @@lowlevelgamedev9330 where is the folder space?

  • @BalintCsala
    @BalintCsala Місяць тому +1

    1:51 Each F is only 4 bits tho

    • @lowlevelgamedev9330
      @lowlevelgamedev9330  Місяць тому

      you're right and I just realized it 😭 idk how I messed that up, but at least people will get the idea

  • @squaretriangle2294
    @squaretriangle2294 Місяць тому

    Are u gonna add command?

  • @sebbog
    @sebbog 22 дні тому

    Cosmic Reach

  • @raulhernandez2010
    @raulhernandez2010 Місяць тому

    Your english is good, but its kind of hard to understand what you’re saying. I think it had to do with the accent + slight slur (some words seem blend in with others) good video tho 😊

  • @Neuer_Alias_erstellen
    @Neuer_Alias_erstellen 23 дні тому

    do you use LODs?

  • @BALDO3
    @BALDO3 Місяць тому

    How do I build the game?

    • @lowlevelgamedev9330
      @lowlevelgamedev9330  Місяць тому

      well it seems to have a build problem rn but I'll try to fix it today and also put building instructions in the readme 💪

    • @BALDO3
      @BALDO3 Місяць тому

      @@lowlevelgamedev9330 Thanks bro, keep up the good work! 🙏

  • @HumanGamer
    @HumanGamer Місяць тому +3

    Try using Vulkan instead of OpenGL. You can get up to 3x performance improvements.

    • @pootis1699
      @pootis1699 Місяць тому +2

      Isnt vulkan notorius for being annoying to use?

    • @sti3167
      @sti3167 Місяць тому +2

      @@pootis1699 Not exactly.. vulkan is as low level as it has to be - you shouldn't be using it if you don't know why you need it, and its also better than dx12 in that aspect, vulkan is more consistent and has more resources available online.. though both of them has it's own pros and cons, unique features. You can optimize a lot of things in vulkan, but it's better to start with opengl or dx11, so that you would have some idea of how things are working.. overall it allows a lot of optimizations to be possible, because now that's you who creates "pipeline" and everything, not the driver or API

  • @Caro122-
    @Caro122- Місяць тому +1

    how can i download this game

    • @lowlevelgamedev9330
      @lowlevelgamedev9330  Місяць тому +1

      I don't have a release yet but you can compile it from my github, right click inside the folder and than click open with visual studio, make sure you compile in the release mode

  • @noitamrofnisiM
    @noitamrofnisiM Місяць тому

    cubic chunks

  • @timosan9622
    @timosan9622 Місяць тому

    You should work in Mojang

  • @RaulK
    @RaulK 14 днів тому

    You sound romanian!

  • @AssociationFriends
    @AssociationFriends 7 днів тому

    C++ Minecraft or yet another minetest

    • @lowlevelgamedev9330
      @lowlevelgamedev9330  7 днів тому

      hm it's not made in minetest it that's what you are asking, but I'm trying to get to their level and to be honest they got kinda far

    • @AssociationFriends
      @AssociationFriends 6 днів тому

      @@lowlevelgamedev9330 (sorry for my english)just joking, sometimes i think this is too much C++ Minecraft in UA-cam

  • @Mordecry
    @Mordecry Місяць тому

    mama accentu de roman e prea mare :)))

  • @Kwame.283
    @Kwame.283 16 днів тому

    making minecraft in c++ is legit bedrock edition

  • @drrockstar4040
    @drrockstar4040 Місяць тому

    Minecraft Legacy Console:

  • @SimplyTheRedMelon
    @SimplyTheRedMelon Місяць тому

    Whose here from cosmic reach

  • @Wariowa345
    @Wariowa345 Місяць тому +2

    you should copy minecraft protocol so this works with minecraft servers

  • @flamingkillermc2806
    @flamingkillermc2806 Місяць тому +1

    Yo are you Bulgarian?

    • @Kitulous
      @Kitulous 15 днів тому

      sounds more hungarian to me

    • @Kitulous
      @Kitulous 15 днів тому

      nah he's romanian/moldovan judging by other comments

  • @samuel-zagueiro-raiz-de-rua
    @samuel-zagueiro-raiz-de-rua Місяць тому +1

    AAAA

  • @Hajdew
    @Hajdew Місяць тому

    so from 20 to 30 fps? bruh

    • @lowlevelgamedev9330
      @lowlevelgamedev9330  Місяць тому +1

      ye, fortunatelly after adding frustum culling I got to 60 fps 💪

  • @Dehhoy
    @Dehhoy 18 днів тому

    minecraft bedrock is already fast and made with C++

  • @mylittleheartscar
    @mylittleheartscar Місяць тому

    Mojang where u at?

  • @SoriPop
    @SoriPop Місяць тому +5

    bro still using intel...

  • @davidddo
    @davidddo Місяць тому

    LODs?

    • @yarik_superpro
      @yarik_superpro Місяць тому

      yeah lod for a cube,bravo

    • @lowlevelgamedev9330
      @lowlevelgamedev9330  Місяць тому

      well good point but apparently nvidium can do it without lod so no, also they are not that easy to do :(( but who knows maybe in the future I will do them

    • @davidddo
      @davidddo Місяць тому

      @@yarik_superpro look up distant horizons

    • @ettiSurreal
      @ettiSurreal Місяць тому

      ​@@yarik_superpro you can always make a bigger cube. thats what the distant horizons mod does and it allows you to see thousands of blocks away

    • @Broken_Mesh
      @Broken_Mesh Місяць тому +1

      ​@@ettiSurrealAs stated it is not necessary or ever detrimental as new geometry must be computed. I believe you're missing the reason for why lods increase performance. It has not as much to do with decreasing the triangle count as it has with decreasing the number of sub pixel triangles (Which cause a dramatic performance loss). Nvidium already deals with that problem.

  • @BabanDlh
    @BabanDlh Місяць тому

    Omg Minecraft Bedrock

  • @regele4063
    @regele4063 21 день тому

    miros accentu de roman

  • @usr3801
    @usr3801 4 дні тому

    now rewrite in rust

  • @_Br0x
    @_Br0x Місяць тому

    why am i watching this

  • @uadev
    @uadev 24 дні тому

    Still slower than Minecraft with all its complexity with performance mods, especially w/o shaders

    • @uadev
      @uadev 24 дні тому

      At least in comparison to my r5 5600g w/o videocard. You haven't shown any tests side by side with MC

    • @lowlevelgamedev9330
      @lowlevelgamedev9330  24 дні тому

      after the frustum culling it's faster than optifine with similar shaders. However it's not faster than something like nvidium. I would have to implement the more advanced culling algorithm first

    • @uadev
      @uadev 24 дні тому

      @@lowlevelgamedev9330 if so then hope it will be compatible with Minecraft protocol at least partially

  • @EatSleepCodeRepeat_
    @EatSleepCodeRepeat_ Місяць тому

    imagine if this was made with python💀

  • @klocity
    @klocity Місяць тому

    Mojang taking notes rn
    Nah just kidding we all know they are too lazy for that

  • @Turjo-music
    @Turjo-music Місяць тому

    @mojan

  • @satyamrajrawat5947
    @satyamrajrawat5947 Місяць тому +1

    When developer don't have money to buy Minecraft they make their own💪

  • @TGKPostsSometimes
    @TGKPostsSometimes Місяць тому +1

    do you also want to get sued?

  • @mohamedbenali3828
    @mohamedbenali3828 2 дні тому

    You must be romanian

  • @upsurge5541
    @upsurge5541 Місяць тому

    so bedrock?

  • @mms72
    @mms72 Місяць тому

    .

  • @CrystalClear51
    @CrystalClear51 Місяць тому +1

    thats what minecraft bedrock edition was for

  • @epicstar86
    @epicstar86 Місяць тому

    reaI