[video output=day052 member=cmuratori stream_platform=twitch stream_username=handmade_hero project=code title="Entity Movement in Camera Space" vod_platform=youtube id=TfZUAFh-WJg annotator=csnover annotator=debiatan annotator=theinternetftw]
[0:00][Intro]
[1:40][Recap]
[3:12][Thinking about removing the tile map and making tiles entities]
[5:27][Test entities against every other entity (O(n*n))]
[6:17][Update MovePlayer to perform collisions on active entities]
[9:14][Relative position between entities]
[11:04][Thinking about different actions for different types of collisions]
[14:34][Implementing walking on “stairs”]
[17:42][Fixing compiler errors]
[19:28][Implementing ChangeEntityResidence]
[22:00][Thinking about entity types using a cache to keep high/dormant entity positions consistent]
[25:00][An aside on programming technique (rant)]
[26:20][Recalculating the position into tile space on entity update]
[29:26][Mapping entities into camera space]
[31:40][Exploring the code in debugger]
[35:20][Changing residence of entities when higher residence is requested]
[39:30][Debugging entity collisions]
[42:05][Debugging sticky collisions]
[44:57][Restoring camera movement]
[50:58][Todos for tomorrow]
[53:23][Q&A][:speech]
[54:13][Why can't infrequent entity updates happen in the entity's update logic?]
[56:57][Why do you want to use a 3D vector for position when the Z value is always going to be an integer?]
[1:01:25][Does Minkowski collision detection have to be axis-aligned?]
[1:03:06][Didn't you just implement a bare-bones relational database? Do you think that's a good mental model for understanding today's code?]
[1:05:57][I noticed your characters do not collide with each-other. I thought you changed that?]
[1:07:08][How good is this addressing scheme for the cache?]
[1:08:02][When jumping you just need x, y, z coordinates to make it happen? \[code changes\]]
[1:16:23][Will we switch to some kind of sparse storage for example for the high res entities?]
[1:16:54][How would you handle jumping on a ledge or surface to adopt a new base height?]
[1:18:19][What do you think about physics for character or mob movement in a platformer game, meaning that I press right but it starts to accelerate instead of just move?]
[1:19:16][Now make him jump through the ceiling into the next floor.]
[1:19:54][Why is he so huge?]
[1:20:27][Will the floor area of the zones be flat or will it have slopes and 3D zones a.k.a. hills?]
[1:22:09][Can you change the yellow tile beneath his feet quickly and easily to be greyish and round so it looks like a jumping shadow? Completely not required but why not! \[code change\]]
[1:26:21][If you add walls in the middle of rooms would they be handled as entities for the purpose of collision detection or separately?]
[1:27:04][Too fast!]
[1:30:35][How much has changing the rectangle to a bitmap instead of a rectangle impacted your player-on-player collision calculation?]
[1:30:53][How many zombie DLCs will there be?]
[1:32:02][Shouldn't you be doing this blending in a linear color space?]
[1:33:06][When does the core mechanics of the game come into play? Earlier or later in the dev cycle?]
[1:35:19][Is there an easy way to translate from circle to ellipse collision detection?]
[1:35:50][Do you recommend learning to make a game engine rather than using engines like Unity or Unreal for people new to game development?]
[1:37:50][The rectangle box which you have alpha assigned, is that the same box you would assign hit points to in case the character is injured by enemies or obstacles?]
[1:39:05][How common or practical is pixel by pixel collision check vs overall shapes collision check? Which one is more interesting to you?]
[1:39:50][What are your thoughts on the Allegro library?]
[1:40:00][Stream end][:speech]
[/video]
