[video output=day071 member=cmuratori stream_platform=twitch stream_username=handmade_hero project=code title="Converting to Full 3D Positioning" vod_platform=youtube id=FVPxhovGsuE annotator=schme annotator=Miblo annotator=wheatdog] [0:15][Recap] [1:07][Casey talk about "The coincidence of how people use their TODO notebook"] [2:52][Bug fix: Remove the code we left when we were playing around with familiars] [5:39][Decide what to do today: Clean up things by using v3] [6:01][Get rid of the struct "world_difference" and fix other places we were using it] [8:16][handmade_world.h: Change ChunkSideInMeters to v3] [9:45][handmade_math.h: Implement the Hadamard product] [11:16][handmade_math.h: Clone v2 operations for v3] [15:14][handmade_world.h: Offset_ is v3 now] [16:00][Point out the puzzler from world_position can be solved because we now no longer operate on entities without bringing them into the sim_region] [17:28][Back to deal with compiler errors] [23:37][The ground plane should not be the negative bottom sides of Tiles because we want to prevent things from accelerating near the Z bound] [26:12][handmade_world.h: Tidy up the function ChunkPositionFromTilePosition] [29:14][handmade_math.h: Use anonymous struct in union to grab part of the elements we are interested in v3] [31:54][handmade_math.h: Make a v3 "constructor" that append a v2 with a real32 value] [33:05][handmade_sim_region.h: Upgrade P/dP in sim_entity to v3] [33:47][Keep on dealing with compile errors] [35:37][handmade_math.h: rectangle3] [36:34][handmade_math.h: AddRadiusTo should take a vector as a parameter] [37:54][handmade_sim_region.h: Upgrade MoveEntity routine to v3] [43:20][Get rid of GetCameraSpaceP] [43:35][Keep on cleaning up] [47:20][Program now can be compiled] [47:37][Run the game and find out there is absolutely nothing except our hero] [48:01][Make sure that rectangle bound set up properly] [48:33][Blackboard: Explain what we want to make sure in more detail] [56:57][The bug might be Casey broke something in terms of how to store things into chunk position] [58:13][Q&A][:speech] [58:51][@plainflavored][Have you considered using macros that take a name and operator to paste in simple vector functions?] [1:00:02][@llorton][What kind of almond milk are you drinking?] [1:00:12][@donotputmeonpizza][Do you have any suggestions on how to keep up with your 5 episodes a week, when me and my friend have only started watching your videos from the beginning last week?] [1:01:22][@ryanries][Why type 1.0f instead of 1.0?] [1:02:28][@hexagonal_diamond][Have you considered writing tests?] [1:05:36][@rsxole][Can you explain what your Z really means? If it's for separating levels, should tall walls be able to poke into the upper Z layer(s)?] [1:06:36][Reminder: Monster that you fight on two floors at once, going up and down stairs to fight the bottom or the top] [1:07:34][@xanthacroi][How do you tab between things so quickly?] [1:08:39][@mickeyd32][How good of a computer do I need to smoothly code?] [1:10:19][@saltattack][I love you... Will you marry me?] [1:10:36][@nathyks][How smooth is it transitioning a knowledge of Python into C++] [1:11:26][@apathydude][Have you thought more on how the Z-axis will look when finally implemented?] [1:12:35][@biralx][When you work on a game do you work on one project or do they contract you for multiple projects?] [1:12:50][@nicstop][Do you think about data locality all the time, to reduce cache misses?] [1:14:37][@jkr2120][How long have you been programming?] [1:14:50][@plainshane][Are you done working for real - made all your money, and this is just for fun / philanthropic reasons?] [1:15:10][@duroate][How do you determine what gathers in a chunk with the Z-axis? Do you grab entities from all 6 sides of the chunk?] [1:15:27][Blackboard: "Axis aligned bounding box"] [1:18:11][handmade.h: TODO(casey): Minkowski inclusion test for sim region begin / updateable bounds] [1:19:28][@hnau][I recently watched Jon Blow's talk on attempting deep work and became curious: Do you do anything similar from a psychological perspective, i.e. go dancing like Jon does or do you have some other relaxing / rewarding activity that helps to spawn creative thought or gain elusive insights into problems you are struggling to solve?] [1:21:08][@drtwox][Do you think RK4 integration is "overkill" for a 2D game like Handmade Hero?] [1:24:25][@mymlyreen][Hi, just tuned in so it might have been mentioned before, but why are you using assertions in non-test code?] [1:29:38][@d7samurai][What about having two regions - one outer and one inner, include entities that move into the inner and exclude entities that move out of the outer - so there's a "margin" that allows some moving without ping-ponging right across a hard in / out line?] [1:31:13][Call it][:speech] [/video]