I found what makes even simple loops 4x slower

แชร์
ฝัง
  • เผยแพร่เมื่อ 25 ก.ย. 2024
  • The ideas are baked into the Entity Component System or ECS architecture and it can turn a loop that takes 2 seconds to run into one that takes more than 8 seconds!
    Join us on Discord: / discord
    Follow us on Twitter: / ourcadehq
    📚 More resources to understand ECS:
    Scott Bilas GDC 2002: www.gamedevs.o...
    Evolve Your Hierarchy: cowboyprogramm...
    Adam Martin ECS: t-machine.org/i...
    Benchmarks: github.com/noc...
    ECS FAQ: github.com/San...
    Memory in JS: / memory-in-javascript-b...
    Data Locality: gameprogrammin...
    🎬 ECS Talks:
    Overwatch architecture: www.gdcvault.c...
    SAConf: • Entity Component Syste...
    RustConf talk: • RustConf 2018 - Closin...
    👾👾👾
    Ourcade is a playful #gamedev community for open-minded and optimistic learners and developers. 🎮🕹👾🤗 ourcade.co
    #javascript #ecs

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

  • @supertommy
    @supertommy  2 ปีที่แล้ว +3

    Here's some more ECS talks:
    Overwatch architecture: www.gdcvault.com/play/1024001/-Overwatch-Gameplay-Architecture-and
    SAConf: th-cam.com/video/SFKR5rZBu-8/w-d-xo.html
    RustConf talk: th-cam.com/video/aKLntZcp27M/w-d-xo.html
    Check the description for even more resources!

  • @addvector4918
    @addvector4918 10 หลายเดือนก่อน +2

    I wasnt expecting an ecs runthrough from the title but you did a great job running it down!

  • @DanieleTabanella
    @DanieleTabanella 2 ปีที่แล้ว +5

    Pure gold, can't wait to access that repository

  • @browsermage
    @browsermage 2 ปีที่แล้ว +2

    Your content is getting better and better Tommy, well done!

  • @dakunskye
    @dakunskye ปีที่แล้ว +2

    Skipping the ECS fanboy bit, pack your data in chunks that its likely to be read in and access it in predictable ways. ECS doesnt mean this by default and can be done with some pre planning and understanding how arrays work.

  • @terry-
    @terry- 2 ปีที่แล้ว +2

    Great! I knew there was an evolution from plain OOP. I think this seds me in the right pad.

  • @LawZist
    @LawZist 2 ปีที่แล้ว +1

    Really enjoy your videos!

  • @th1nhng0
    @th1nhng0 2 ปีที่แล้ว +2

    Great content

  • @Mickey-pt7yi
    @Mickey-pt7yi 2 ปีที่แล้ว +2

    I'm looking forward to it so much, I just wanted to ask if there is a complete video about ecs. I've been researching the use of ecs+phaser recently, but it's a bit difficult to use. I hope I can see it sooner, looking forward to it!

    • @supertommy
      @supertommy  2 ปีที่แล้ว

      We do have a playlist for bitECS and Phaser 3: Beginning ECS in Phaser 3
      th-cam.com/play/PLumYWZ2t7CRtUDC3eEpa5EZgSmbSdBBI7.html

    • @supertommy
      @supertommy  2 ปีที่แล้ว

      I think you’ve seen some of them but it goes through sprites, then Arcade Physics, and lastly Matter Physics

  • @indycinema
    @indycinema 2 ปีที่แล้ว +1

    You make great videos sir. You need more subs.

  • @annbushhome
    @annbushhome ปีที่แล้ว +1

    top notch content

  • @y-li2983
    @y-li2983 2 ปีที่แล้ว +1

    Great video.

  • @EridCR
    @EridCR 6 หลายเดือนก่อน

    Hi! Have you released the repository? I tried looking for it, and I couldn't find it.
    Thanks for these videos!

  • @DarkDunkelheit
    @DarkDunkelheit 2 ปีที่แล้ว +1

    Amazing video, but Phaser already has an ECS under the layer I think, so I guess some things already are optimized but other aren't like in the example??

    • @supertommy
      @supertommy  2 ปีที่แล้ว +1

      Thanks! Phaser 3 does have the concept of components and they are used more like mix-ins. Phaser 4 has plans to use a Struct of Arrays style of ECS by using bitECS but things may change as development continues on that!

  • @reddaygr
    @reddaygr 7 หลายเดือนก่อน

    This video would have the same impact with or without the ECS section. Really ECS doesn't mean anything when your initial talking point is just about iterating an Array without messing up the data locality.

  • @Architector_4
    @Architector_4 ปีที่แล้ว +3

    ...god, why did you have to add in extremely loud whooshing sound effects that make it hard to understand what you're saying during them ._.

    • @regys9521
      @regys9521 11 หลายเดือนก่อน

      it is also really distracting to say the least

  • @jeeperscreeperson8480
    @jeeperscreeperson8480 ปีที่แล้ว

    It's enough to open an Intel optimization manual to discover more loop optimizations besides memory access.

  • @Evan842Complex
    @Evan842Complex 2 ปีที่แล้ว +1

    So there is alpha?

    • @supertommy
      @supertommy  2 ปีที่แล้ว

      Not yet but working on it!

  • @dontvoteme2829
    @dontvoteme2829 ปีที่แล้ว +1

    Bruh my computer just looped like 16x slower

    • @supertommy
      @supertommy  ปีที่แล้ว

      It can definitely vary!

  • @execute214
    @execute214 8 หลายเดือนก่อน

    It's windows, that's the cause