[video member=cmuratori stream_platform=twitch stream_username=handmade_hero project=code title="Passing Rotation and Shear to the Renderer" vod_platform=youtube id=kizKx0bdr3Q annotator=Miblo] [1:32][Recap and set the stage for the day] [2:41][A few words on responsiveness vs aesthetics] [6:01][handmade_world_mode.cpp: Introduce GetClosestTraversable to enable the HeroHead as well as the HeroBody to search for and snap to the closest point] [11:40][Run the game and see the head snap] [12:13][handmade_sim_region.cpp: Make the head keep facing in the direction is was going] [13:19][Run the game and watch the head's facing direction] [14:42][handmade_world_mode.cpp: Disable the sword in favour of implementating strafe hop] [15:43][Run the game and try out the strafing] [16:35][handmade_world_mode.cpp: Make the head not recentre] [17:19][Run the game and try the movement] [17:36][handmade_world_mode.cpp: Use a weaker spring to recentre the head] [18:32][Run the game and try out the recentering] [19:03][handmade_world_mode.cpp: Make the head not recentre] [19:49][Run the game and try out the movement] [23:07][handmade_render_group.h: Add XAxis and YAxis to render_entry_bitmap] [25:19][handmade_opengl.cpp: Make OpenGLRenderCommands work with render_entry_bitmap] [27:16][Blackboard: Handling parallelograms] [29:09][handmade_opengl.cpp: Calculate the four points] [32:51][handmade_render.cpp and handmade_render_group.cpp: Make DrawRectangleQuickly and PushBitmap work with render_entry_bitmap] [34:29][Run the game and see that everything is messed up] [35:01][handmade_open.cpp: Correct the point calculation] [35:16][Blackboard: How we are calculating the points] [35:55][Run the game and see that we're good] [36:06][handmade_render_group.cpp: Consider how best to specify the axes] [41:52][Blackboard: Rotating the body's YAxis to point to the head] [47:05][handmade_render_group.cpp: Make PushBitmap and GetBitmapDim take XAxis and YAxis] [50:57][handmade_world_mode.cpp: Make the body's YAxis point towards the head] [58:51][Run the game and admire the stretching] [59:42][Q&A][:speech] [1:00:19][@soysaucethekid][Zircon encrusted tweezers? Are you moving to Montana soon?] [1:00:33][@fr0styninja][Why does our limbless hero need suffer in such gruesome ways] [1:00:59][@twitch_makes_me_itch][Do I need the payed version of Mischief to change the background color?] [1:01:29][@evraire][Will you try rotation to visually compare against shearing before deciding?] [1:02:26][@cvaucher][You wrote the scale / shear this way because it's already done in the software renderer but these transformations would usually be done in a vertex shader, right?] [1:03:52][@novynn][Some other games have done similar move styles, but they use a floating indicator instead of separating the head from the body. Your thoughts?] [1:04:06][@soysaucethekid][For collision detection will there be skewed boxes as well or will it just be AABB?] [1:04:35][@garlandobloom][So we move tile to tile? Haven't seen the new movement] [1:04:46][@erdomina][Are we eventually going to move these over to shaders?] [1:06:23][@garryjohanson][Any word on the new debugger?] [1:07:09][@garryjohanson][You had a stream about someone contacting you about making a debugger] [1:08:50][@insofaras][I doubt the concept of shaders is going anywhere soon] [1:12:57][@Miblo][Do you think you'll use the spring code from the other day on the camera movement? I'm imagining a critically damped spring would be the thing to use for that] [1:15:26][@garlandobloom][For camera stuff I just do x += (x - dest) / 10 or something like that. What would that be?] [1:16:20][@garlandobloom][That's not accounting for t, that's if it was instantaneous] [1:17:28][@Mr4thDimention][Should be (dest - x) I'm assuming] [1:17:42][@garlandobloom][I used to do like fixed FPS, so it was fine, but I've changed. Hold on I'll look it up] [1:18:04][Blackboard: GarlandoBloom's camera movement] [1:21:06][@jim0_o][Plans on adding camera shake or blur or similar if the hero gets hit or a bolder hits the ground near the hero?] [1:22:04][Wrap it up][:speech] [/video]