Let's Code DOOM #2 - Binary Space Partitioning Tree

Sdílet
Vložit
  • čas přidán 6. 09. 2024
  • Tutorial on Binary Space Partitioning. Using Python and Raylib library we will create a 3D game like Doom. This series looks at building and traversing a binary space partitioning tree.
    ------------------------------------------------------------------------------
    I have no monetization on the channel, but if you wish to support the channel:
    BTC:
    bc1qpmpk4swlwtj8kvwva5j7zlth6c33vzp8epx8w9
    Any crypto on ETH or BNB:
    0x855a59b4c926b96206e492774cd93d81287490ef
    Any crypto on TON:
    UQCnBXmaYswK9chnjw_KDPbf9uYGd6ZChexNc_iyLKllVKxd
    Email me ( coderstandalone@gmail.com ) that you supported the channel and I will thank you in the next video!
    ------------------------------------------------------------------------------
    Two line segments intersection:
    stackoverflow....
    Source Code:
    drive.google.c...
    #python #doom #raylib #coderspace

Komentáře • 46

  • @cheesewiz9609
    @cheesewiz9609 Před 6 měsíci +4

    I love how you're putting together this series! So much fun, and a lot of information to process! Definitely going to re-watch a couple times until it clicks, but one thing you taught me in this video was how you use the cross product to determine the front and back after the splits, which I didn't know how was done before! Thanks and looking forward to learning more! :)

  • @sonicfan88321
    @sonicfan88321 Před 6 měsíci +4

    Always a fun time for learning when a new Coder Space video appears in my notifications

  • @reasonable78
    @reasonable78 Před 4 měsíci +2

    I got all of this working in gamemaker so far. I look forward to the rest of the videos. great work, very fun and informative.

  • @1just_josh421
    @1just_josh421 Před 6 měsíci +1

    This is incredible you deserve so much credit and also credit for not just showing us the code but teaching us how and why it works

  • @AJB2K3
    @AJB2K3 Před 6 měsíci +9

    Have you considered writing this up and publishing it as a book?

    • @shadow_blader192
      @shadow_blader192 Před 6 měsíci +3

      Isn't there already book about how to create Doom?

    • @AJB2K3
      @AJB2K3 Před 6 měsíci

      @@shadow_blader192 step by step by coder in python?

  • @muhammadnaumanimtiaz4451
    @muhammadnaumanimtiaz4451 Před 6 měsíci +1

    Finally much anticipated second chapter is here!!!

  • @Temple_Cloud
    @Temple_Cloud Před 4 měsíci

    Thanks Coder Space! I just recently found your content and it is absolutely wonderful! For me personally, it strikes the perfect balance between conciseness and explanation. Each video are like the notes I would take from learning a new subject, but with a fantastic visual component. Thanks so much for sharing, and for all your time and effort with these. Great stuff!

  • @AppliedCryogenics
    @AppliedCryogenics Před 5 měsíci

    I love the iterative annealing approach to finding a good splitting seed. (I like to brood over my computer as a complex result gets better and better and better! Genetic algorithms are fun to watch for the same reason.)

  • @matthewburditt166
    @matthewburditt166 Před 5 měsíci +1

    looking forward to the next video

  • @dillon4683
    @dillon4683 Před 6 měsíci

    Thank you, I was just researching BSP.

  • @romangeneral23
    @romangeneral23 Před 5 měsíci +9

    Did an A.I. voice this ?
    Edit: Yup an A.I.

    • @therayvenn3482
      @therayvenn3482 Před měsícem

      it’s simple text to speech, it’s been around for many years.

  • @rrplayer
    @rrplayer Před 3 měsíci

    Now you need dimnamic light

  • @SkyFly19853
    @SkyFly19853 Před 6 měsíci

    Thank you so much for this explanation.

  • @nickst2797
    @nickst2797 Před 5 měsíci +1

    Do you plan to cover PVS and VST in the future?

  • @MW-ou2ic
    @MW-ou2ic Před 5 měsíci

    I'm new to all this but I love your videos. Does this series build off of your previous doom series?

  • @Xxx_HA7u6ATOP_228_xxX
    @Xxx_HA7u6ATOP_228_xxX Před 3 měsíci

    Did you think about wad compatibility? Is it possible?

  • @pharaoh9483
    @pharaoh9483 Před 6 měsíci +2

    bro, it would be good for u to use ur real voice!! Also nice metallica background musice !!

  • @f.artemenkov
    @f.artemenkov Před 6 měsíci

    I've tried to use BSP in my engine for collision detection and found out spatial hash grid works much faster. I supposed that is because spatial hash grid algorithm has no recursion.

  • @kplays_6000
    @kplays_6000 Před 6 měsíci

    What's the feasibility of having kind of like a multi-story building where you can have a portal on one BSP tree (as a set of stairs, for example) and on passing it you go to a second level rendering a second BSP tree, and render both? I'm just looking to make a two story house or something

    • @CoderSpaceChannel
      @CoderSpaceChannel  Před 6 měsíci +1

      Using a single 2D BSP tree you can make the illusion of multiple floors, meaning there are stairs to a floor above or below, but these floors are offset relative to the starting floor.

    • @kplays_6000
      @kplays_6000 Před 6 měsíci

      @@CoderSpaceChannel Awesome! So having like a two story house would be possible, right? Or a large building?

  • @deltapi8859
    @deltapi8859 Před 6 měsíci

    good videos and respect for the endurance. but the first section is explained way too briefly to be able to understand the logic that comes later. A few examples of some queries of why this speeds up things would have been much better to understand the problem, which helps to understand the logic.

  • @nickst2797
    @nickst2797 Před 6 měsíci

    Thanks! Can you give a rough estimate on how many episodes this series will have?

    • @CoderSpaceChannel
      @CoderSpaceChannel  Před 6 měsíci +5

      I'm guessing about six episodes, but it's not certain.

    • @nickst2797
      @nickst2797 Před 6 měsíci

      @@CoderSpaceChannel Thank you very much!

  • @walaahamed7961
    @walaahamed7961 Před 6 měsíci

    Can i ask your opinion about which is better for making a Game ?pros and cons ? OpenGl or Raylib ??

    • @CoderSpaceChannel
      @CoderSpaceChannel  Před 6 měsíci +3

      Since Raylib is built on top of OpenGL, let's think of it as the same thing, but with a more convenient API. And the main advantages of Raylib are a lot of built-in useful functions (physics, ray casting and many others). The funny thing is that to use Raylib to its full potential you need to know OpenGL

    • @walaahamed7961
      @walaahamed7961 Před 6 měsíci

      @@CoderSpaceChannel Many Thanks to the expert advice

  • @nickst2797
    @nickst2797 Před 3 měsíci

    Any news on an update on the series?

    • @CoderSpaceChannel
      @CoderSpaceChannel  Před 3 měsíci +3

      I apologize, there's been an unforeseen delay. But I'll be back to releasing the video in a little while.

    • @nickst2797
      @nickst2797 Před 3 měsíci +1

      @@CoderSpaceChannel My man, no need to apologize! You are offering incredible value. I just asked to know if the project still goes. Take all the time you want. BTW, do you think it would be easy to transition the codebase from python to C? Since raylib supports both.

  • @greenlemon9155
    @greenlemon9155 Před 6 měsíci

    What about avl tree ??

  • @linami1338
    @linami1338 Před 5 měsíci

    Привет. Вопрос, как можно с тобой связаться? Дискорд/Тг/Почта. Что угодно. Есть пара вопросов)

  • @math_without_words
    @math_without_words Před 2 měsíci

    Please, make HOI4 on python

  • @gsestream
    @gsestream Před 6 měsíci

    no tree is better than a tree. use entity bvh that does not need a central acceleration structure. simpler to implement. same equal speed. yes the no-tree is part of the entities themselves. yep entity is both level structure and objects. no difference. planes are the 3d extension generalization from 2d lines boundaries btw. ominous to be making your own doom.

  • @U4rce_dev
    @U4rce_dev Před 3 měsíci +1

    Вернись на ру канал, какашка

    • @math_without_words
      @math_without_words Před 2 měsíci

      Он от русского комьюнити не получает денег

  • @idjles
    @idjles Před 6 měsíci

    I think you are German

    • @OpenGL4ever
      @OpenGL4ever Před 5 měsíci

      I don't think so. His English pronunciation is far too good for that. If English is not his native language, he will at least have had the opportunity to grow up speaking that language in some English-speaking country. It would also be possible for at least one parent to have English as their first language.
      Also, his name is Stanislav Petrov, which is not a German name. This is more suitable for the Czech Republic or any other country east of Germany.

    • @printAndplaylab
      @printAndplaylab Před měsícem

      @@OpenGL4ever its a text to speech.

    • @SingleBoy-je5kp
      @SingleBoy-je5kp Před měsícem

      He is Finnish

  • @carlsonbench1827
    @carlsonbench1827 Před 4 měsíci

    Robot voice is horrible

  • @rezashir3873
    @rezashir3873 Před 5 měsíci

    you are amazing