how to use OCTREES in your Roblox Game

แชร์
ฝัง
  • เผยแพร่เมื่อ 17 พ.ค. 2024
  • If you'd like to learn more about octrees and quadtrees, check out this video!
    • Trees QuadTree OctTree
    Check out Quenty's Octree module here!
    quenty.github.io/NevermoreEng...
    Ever wanted to learn Roblox Studio & scripting? Check out my course:
    bit.ly/LuaScriptingCourse
    Use code DEV2024 for 33% off!
    My linktree:
    linktr.ee/crusherfire
    Music used:
    Lucid Dreaming by | e s c p | www.escp.space
    Happy scripting!
  • เกม

ความคิดเห็น • 53

  • @cryptic2742
    @cryptic2742 21 วันที่ผ่านมา +19

    Ayy, new video. Octrees seem extremely useful, especially when paired with things like foliage moving in the wind or enitities. As always, keep it up king

  • @Garfield_Minecraft
    @Garfield_Minecraft 18 วันที่ผ่านมา +6

    finally a language I can understand
    this makes sense as a programmer this is my first time learning about roblox studio

  • @AlexPlayz387
    @AlexPlayz387 20 วันที่ผ่านมา +5

    You might not have been the Roblox Studio TH-camr we wanted, but you're definitely the ONE we desperately needed!

  • @bestdevkai
    @bestdevkai 21 วันที่ผ่านมา +1

    Thank you for covering this topic! I was waiting for a nice explanation to this module!

  • @tragicreeze
    @tragicreeze 21 วันที่ผ่านมา +3

    WOAH THAT'S COOL. i could see myself using this in the future. nice video! you're super underrated.

  • @Sercan1479
    @Sercan1479 20 วันที่ผ่านมา +1

    yo bro thanks for making clear and well explained videos on subjects that doesn't already have 5 million tutorials on them 👍👍

  • @Kenny-dj9rk
    @Kenny-dj9rk 21 วันที่ผ่านมา +1

    finally a video about this, when I decided to create my own, it was complicated with so little instruction like this

  • @pot4622
    @pot4622 21 วันที่ผ่านมา +1

    I could see this being useful in terms of possibly rendering objects from the workspace to the replicated storage to help performance on high end games with 100s of thousands of parts/high number of unions.

  • @Salok_z
    @Salok_z 16 วันที่ผ่านมา

    OMG you beat me to it, i wanted to a video about this cause no one has even talked about the grid system on roblox, its been really useful since i discevered how it works

  • @bobbibones
    @bobbibones 21 วันที่ผ่านมา

    Thanks a lot for explaining it so well!

  • @begi-dll
    @begi-dll 21 วันที่ผ่านมา +2

    Would you mind making roblox studio settings / plugins video? I would love to watch it and configure it as u have

  • @yarik_superpro
    @yarik_superpro 21 วันที่ผ่านมา

    You can rewrite the module to using functions and not hooking metamethods, and it will be even faster, I think.

  • @tower9602
    @tower9602 21 วันที่ผ่านมา

    Orc trees are good for constant objects. When it comes to dynamic objects that can move from one place to another you can run into a lot of issues. It’s complexity of proper garbage collection and table’s size limit. Since objects are constantly moving from one grid to another your code will have to spend a lot of time literally removing reference from one grid table to another. Which can get to the point to absolute the whole algorithm. Also don’t forget that extending tables in lua and luau automatically is very expensive. So you will probably have to use table.create() with the first parameter being the whole amount of data in tables, which will use one hell of amount of ram

    • @crusherfire1
      @crusherfire1  21 วันที่ผ่านมา

      There is actually a module using octrees for dynamic objects! Check it out here:
      devforum.roblox.com/t/dynamic-octree-system/2177042

  • @halohasawaken6793
    @halohasawaken6793 21 วันที่ผ่านมา

    Reminds me of the concept of BSPs

  • @Pollux0993
    @Pollux0993 20 วันที่ผ่านมา +1

    Hey, I would really like your roblox studio script theme, how'd you do it like that?

  • @ZweiForgot
    @ZweiForgot 19 วันที่ผ่านมา

    What's that autocomplete plugin you're using?
    also, this video is super helpful and informative

  • @hike8932
    @hike8932 17 วันที่ผ่านมา

    dude that less than or equal to changed its sign, what plugins are you using, when your mouse was hovering around the cube earlier, a white spot was coming at the ends. you gotta list your stuff man, they look pretty good, id like to try them sometime

  • @pu55yEaterr
    @pu55yEaterr 19 วันที่ผ่านมา

    how did i end up here. gotta love it when youtube mixes up unity and roblox tutorials and actually gives me something good. great video

  • @everlastingproductions7489
    @everlastingproductions7489 21 วันที่ผ่านมา +1

    Hey! I really like your editor theme, could you maybe share that?

    • @crusherfire1
      @crusherfire1  21 วันที่ผ่านมา

      You can find that in the community posts!

  • @uliveulearnandregret
    @uliveulearnandregret 19 วันที่ผ่านมา

    does Octree allow that return radius search to return an instance? say if you made a zombie game and wanted to search zombies within radius of the player and all other zombies far away you want to respawn

  • @Sir_Pixelated
    @Sir_Pixelated 21 วันที่ผ่านมา

    I'm still wondering if tick() is deprecated or not, I see a lot of people saying it will be deprecated but it never seems to happen

  • @Sir_Pixelated
    @Sir_Pixelated 21 วันที่ผ่านมา

    hey where do I get the module? I don't see any devforum link in the description

  • @bbucketio
    @bbucketio 21 วันที่ผ่านมา

    What font do you use for the scripts?

  • @CopyCantCode
    @CopyCantCode 21 วันที่ผ่านมา

    great video 10/10 explanation, but i have no clue how to install the nevermore engine

    • @crusherfire1
      @crusherfire1  21 วันที่ผ่านมา +1

      You can just take the code from the github page and slap it into some modules, you don't necessarily need nevermore and there aren't any game-breaking dependencies for Quenty's Octree module except for some visualization module that you can simply remove the code for

  • @NovaWolf_
    @NovaWolf_ 21 วันที่ผ่านมา +1

    Couldnt you just create a region3 bound box say 100,100,100 size and then everything inside that box can be put into the table instead of getting everything in the workspace first?

    • @mool487
      @mool487 20 วันที่ผ่านมา

      u can use any method to get whatever parts u want and put them in the octree, although i heard region3 is worse than overlapparams (like workspace:GetPartsInBoundBox() and all those)

  • @cybecc
    @cybecc 20 วันที่ผ่านมา

    Im sorry to bother but i cant find the module itself, like as roblox asset

  • @undertaleraphael8295
    @undertaleraphael8295 20 วันที่ผ่านมา

    how did u make that when u put ":octree" and it just put the local octree and local replicatedstorage?

    • @rr-qo4in
      @rr-qo4in 11 วันที่ผ่านมา

      th-cam.com/video/ObDp5JlbmFI/w-d-xo.html

  • @Rkyiel
    @Rkyiel 20 วันที่ผ่านมา +1

    damn

  • @wired-fpz
    @wired-fpz 21 วันที่ผ่านมา

    3:27 Could you explain how you got intellisense to work here with the services?

    • @crusherfire1
      @crusherfire1  21 วันที่ผ่านมา

      It's a plugin:
      th-cam.com/video/ObDp5JlbmFI/w-d-xo.htmlsi=8p0U3i7v9Gfj3NLZ

  • @SinstixMain
    @SinstixMain 21 วันที่ผ่านมา

    What about the time it needs to add parts to the ocree first, in the linear search there is no overhead of adding and organizing parts into a data structure unlike octrees where every add operation has some overhead, I think it would've been nice if you included a third test where you include both the time for adding the parts into an octree and the time for searching for it.
    If you did it, you can just pin it in a comment, I'd really appreciate it.

  • @slymicheal8794
    @slymicheal8794 21 วันที่ผ่านมา

    Why wouldnt you just do getpartboundsinradius?? Is that still slower?

    • @crusherfire1
      @crusherfire1  21 วันที่ผ่านมา +2

      As listed in the docs, this is best used for when you have thousands of objects or more. If you have few or a small area to check, the regular spatial query functions will work fine.

  • @akali1745
    @akali1745 21 วันที่ผ่านมา +1

    What Plugin do you use for the scale tool?

    • @Awokein
      @Awokein 21 วันที่ผ่านมา

      It is the base ROBLOX scaling using the beta features. You can enable beta features in your studio :)

    • @akali1745
      @akali1745 20 วันที่ผ่านมา

      @@Awokein Oh cool, Thanks!

  • @ERGO288
    @ERGO288 21 วันที่ผ่านมา

    Basically Minecraft chunks

  • @creeperplayzz
    @creeperplayzz 20 วันที่ผ่านมา

    *"And maybe those children have children of their own"* 💀

  • @AlteFore
    @AlteFore 20 วันที่ผ่านมา

    struk-chure