[video member=cmuratori stream_platform=twitch stream_username=handmade_hero project=code title="Separating Entities By Update Frequency" vod_platform=youtube id=RQUP4ql86k0 annotator=csnover annotator=schme annotator=debiatan annotator=theinternetftw] [0:00][Intro] [2:00][Recap] [5:18][What we're doing and why] [7:23][The state of the world coordinate system today] [9:06][The vision of the new entity system] [11:25][Ballparking entity limits] [18:18][Scaling to large numbers of entities] [20:45][Low- & high-frequency entities] [21:53][Addressing other entities] [25:10][The initial approach for addressing entities] [29:50][Handling re-offsetting in local coordinate space when the camera moves] [34:16][Interaction between low- & high-frequency entities] [35:45][Updating code to add entities with different frequencies] [40:40][Implementing the inefficient version] [43:05][A note about split-screen camera] [45:02][Updating GetEntity to support different entity frequencies] [48:53][Updating InitializePlayer] [52:05][Updating AddEntity] [54:25][Getting the code compiling again] [59:46][Q&A][:speech] [1:00:15][How about hot/cold/frozen instead of high/low/dormant?] [1:01:10][Chat reminds: wrap intrinsic rotations \[code change\]] [1:05:28][Is it a good idea to update the low entities in a separate thread?] [1:06:32][In a dynamically based language how would you handle refactoring without the compiler help?] [1:08:11][I've noticed some game physics break when you increase the fps] [1:10:23][You're just shifting, not rotating \[code change: shift-or rotate\]] [1:18:52][Is there any gameplay reason why we want entities alive even off screen?] [1:20:14][About shifting negative values \[code change\]] [/video]