[video member=cmuratori stream_platform=twitch stream_username=handmade_hero project=code title="Seamless Ground Textures" vod_platform=youtube id=YAaqiKuSmsk annotator=Miblo annotator=dspecht annotator=ZedZull] [1:48][Take a look at the state of things, but actually address a typo] [2:46][Weird stuff can happen when you're using memory directly] [7:31][Get back to what we were doing, i.e. making seamless ground tiles] [9:27][Blackboard: How to get seamless tiles in] [13:12][Loop over tiles in a 3 * 3 grid] [15:25][Make sure that the Center accurately reflects that we're in a different Chunk area] [16:51][Blackboard: Center considerations] [17:12][Change the meaning of Center] [19:10][View the results in-game and review the code] [19:57][Correct the computation] [20:32][See where we're at] [21:19][Take another look at it and see] [21:49][Owl of Shame is peeking at us right now because we forgot to use the new Center] [22:31][We are now seamless across X, but not Y] [22:58][Turn off the tufts and take a look at what we're doing differently with the Y] [24:15][Consider the problem and try flipping the Y and X to see which one is done major] [25:04][What is wrong with our Y-handling?] [25:42][Our edges are probably lining up in the wrong order] [26:05][Check and see if that's the case (in-game)] [27:38][Tuft it back up] [28:42][Give it a little bit of slop] [29:25][Force us into a case where we run out of tiles right away] [31:00][Fill in each EmptyBuffer by reusing old tiles] [32:08][Keep the Chunk that's furthest from the camera] [35:01][Introduce Real32Maximum] [35:46][Find whatever Buffer would be best to replace] [37:39][Compile and review the code] [40:08][Let's see, it looks like 16 GroundBuffers is too few] [41:54][Do the detail splats last] [43:50][What should we do in 15 minutes?] [44:49][Make the code-reloading tell us when the code is reloaded] [47:23][Test the new and improved live code editing] [48:27][Casey is a little concerned that we're drawing too much...] [49:00][Shuffle the code] [49:46][Count how many GroundBuffers fit on the screen] [50:16][Assess our current situation] [51:26][Q&A] [52:04][@jazzy_josh][Are the randomly generated floor tiles being cached yet?] [52:20][@freddukes][Do you think having things in place like static cast to put more checks, e.g. int to pointer, is useful over standard C-style cast which just ignores all type-checking? Wouldn't a static cast have found that bug at the start of the stream?] [55:29][@QuickliGames][Do you think the clumpiness is actually due to splat distance from the centre of the chunks?] [57:20][@cdawzrd][Do you know why the trees are wiggling around sometimes?] [59:03][@cezonezor][What is causing the lag?] [1:01:12][@maato_][Are there still places where the background colour shows through the ground tiles?] [1:02:39][@cmbasckeira][Is this Chunk code already prepared for adding holes to the ground?] [1:07:01][@insofaras][Could you make code that ensures a certain frame-rate but uses extra available time to generate the ground textures in the background, maybe generating a low-quality version first to avoid having no texture at all?] [1:08:58][Recap, a glimpse into the future and closing remarks] [/video]