[0:04][Recap and set the stage for the day][:speech]
[1:57][Dive into implementing UpdateAssetPackageFromPNG(), adding an Errors stream to asset_source_file][:"asset loading" :"error handling"]
[9:52][Introduce MakeReadStream()][:memory]
[11:09][Note the flexibility of having the first Contents buffer within the stream struct, rather than making everything go through a stream_chunk][:"data structure" :memory :speech]
[12:42][Fix compile errors][:"asset loading"]
[14:17][A few words on :memory arenas][:speech]
[15:53][Set up to enable UpdateAssetPackageFromPNG() to break assets up into tiles][:"asset loading"]
[18:17][Note the need to handle non-tiled assets, with a mention of mom's misremembrance of Krampus as "Krumpus"[ref
[19:43][Introduce ProcessTiledImport() to split up assets into 1024×1024 tiles, for UpdateAssetPackageFromPNG() to call][:"asset loading"]
[31:10][Note the need to invalidate the texture :memory, determining first to load the stuff in before switching to fixed size blocks][:"asset loading" :speech]
[33:44][Consider resizing our title_screen.png down to fit into one of our fixed blocks, with some general thoughts on texture :memory][:speech]
[40:23][Consult the Steam Hardware and & Software Survey[ref
site=Valve
page="Steam Hardware & Software Survey"
url=https://store.steampowered.com/hwsurvey] for VRAM availability statistics][:research]
[44:16][Enable ProcessTiledImport() to load the asset-tile into a provisional bitmap][:"asset loading"]
[47:25][Texture Borders, for sub-pixel :rendering][:"asset loading" :blackboard]
[51:33][Where the 1-pixel border approach falls down: Mipmapping][:blackboard :rendering]
[2:04:21][@sopvop][Q: Since you already have deflate decoder implemented in PNG reader, will you implement deflate compressor for asset files?]
[2:04:33][@frostyninja][Q: Speaking of stupid driver distribution, Sony only have DualShock 3 drivers for PC packaged with their PS Now software. Ridiculous]
[2:05:03][@frostyninja][Q: Spent ages struggling with getting that damned controller to work]
[2:05:07][@ivereadthesequel][Q: My poor friend said when Windows last updated for her it took four hours]
[2:05:14][@toolegit2quit_][Q: Do you think Linux will take over? Seems unlikely. Also remember when the PlayStation 3 had Linux support?]
[2:06:15][@thestalkingwolf][Q: What would it take to make it more designer friendly to develop on an Ubuntu or Fedora platform first?]
[2:08:37][@puremouron][Q: MSVC does a terrible job with mod,[ref
site="Compiler Explorer"
page="x86-64 MSVC 19 2015 U3"
url=https://godbolt.org/g/KDHstB] clang seems to do better[ref
site="Compiler Explorer"
page="x86-64 clang 6.0.0"
url=https://godbolt.org/g/kgY6AM]]
[2:09:19][@enemymouse][Q: Are you going to support more complex languages. Coding your own HarfBuzz text shaping equivalent?][:language]
[2:10:21][@ivereadthesequel][Q: So is our plan to infiltrate Microsoft and make Handmade Windows?]
[2:11:32][@frostyninja][Q: Yeah they need a handshake thingy. You get past that with the driver though. That's exactly why I struggled with it. Writing a rawinput thingy for controllers]
[2:11:47][@frostyninja][Q: Cant enable the controller through userland win32, sadly]
[2:12:38][Brief continuation of the PUBG story][:speech]
[2:13:10][@toolegit2quit_][Q: Isn't a big part of the issue that the operating system would need a lot of traction. If Jonathan or someone like you build an OS it would need a very significant amount of traction to incentivize game developers to build for that platform]
[2:15:08][That's it, with a mention of the new site[ref
site="Handmade Hero"
page="Watch"
url=https://handmadehero.org/watch] and a glimpse into the future][:speech]