0:00A recap of previous stream
0:00A recap of previous stream
0:00A recap of previous stream
2:05New test assets for Handmade Hero project
2:05New test assets for Handmade Hero project
2:05New test assets for Handmade Hero project
4:46Introduction to loading BMP files
4:46Introduction to loading BMP files
4:46Introduction to loading BMP files
6:28Handle player moving up and down 'stairs' before the BMP loader
6:28Handle player moving up and down 'stairs' before the BMP loader
6:28Handle player moving up and down 'stairs' before the BMP loader
10:46Moving up an down implementation
10:46Moving up an down implementation
10:46Moving up an down implementation
14:45Difference between tile map system and tile map positioning system
14:45Difference between tile map system and tile map positioning system
14:45Difference between tile map system and tile map positioning system
15:54Implementation continued
15:54Implementation continued
15:54Implementation continued
17:13Fixing generation code
17:13Fixing generation code
17:13Fixing generation code
21:45Generation code fixed
21:45Generation code fixed
21:45Generation code fixed
22:38Implementation complete. Working tile map system
22:38Implementation complete. Working tile map system
22:38Implementation complete. Working tile map system
26:30A talk on the game's screen resolution
26:30A talk on the game's screen resolution
26:30A talk on the game's screen resolution
39:20Crash course on how to read file formats
39:20Crash course on how to read file formats
39:20Crash course on how to read file formats
43:58Debugging a BMP file in memory
43:58Debugging a BMP file in memory
43:58Debugging a BMP file in memory
49:00Processing the BMP file header
49:00Processing the BMP file header
49:00Processing the BMP file header
50:43Packing a struct to avoid padding
50:43Packing a struct to avoid padding
50:43Packing a struct to avoid padding
53:53Processing the BMP pixels
53:53Processing the BMP pixels
53:53Processing the BMP pixels
59:44Perfect pitch would sell that!
59:44Perfect pitch would sell that!
59:44Perfect pitch would sell that!
1:00:58I missed the part where you handled the endianness of the file, or are bitmaps always the same?
1:00:58I missed the part where you handled the endianness of the file, or are bitmaps always the same?
1:00:58I missed the part where you handled the endianness of the file, or are bitmaps always the same?
1:01:56Do you prefer #pragma pack or gcc-like annotation?
1:01:56Do you prefer #pragma pack or gcc-like annotation?
1:01:56Do you prefer #pragma pack or gcc-like annotation?
1:02:28What's your threshold for number of function parameters before putting them into a single structure?
1:02:28What's your threshold for number of function parameters before putting them into a single structure?
1:02:28What's your threshold for number of function parameters before putting them into a single structure?
1:03:17Could you please describe how the sparse tilemap storage is done so far?
1:03:17Could you please describe how the sparse tilemap storage is done so far?
1:03:17Could you please describe how the sparse tilemap storage is done so far?
1:11:13Why not use a function template to read raw bytes into any struct you cook up, one primitive at a time, instead of compiler annotations?
1:11:13Why not use a function template to read raw bytes into any struct you cook up, one primitive at a time, instead of compiler annotations?
1:11:13Why not use a function template to read raw bytes into any struct you cook up, one primitive at a time, instead of compiler annotations?
1:14:59How will we handle memory when reading files? Would it be wasteful to read into our memory pool, then only use part of it?
1:14:59How will we handle memory when reading files? Would it be wasteful to read into our memory pool, then only use part of it?
1:14:59How will we handle memory when reading files? Would it be wasteful to read into our memory pool, then only use part of it?
1:16:41Could you explain how to handle platform specific data?
1:16:41Could you explain how to handle platform specific data?
1:16:41Could you explain how to handle platform specific data?
1:19:56Would it be easy to implement a generic sparse array to solve our tilemap problem (possibly overloading)?
1:19:56Would it be easy to implement a generic sparse array to solve our tilemap problem (possibly overloading)?
1:19:56Would it be easy to implement a generic sparse array to solve our tilemap problem (possibly overloading)?
1:21:02So we have world chunks and -tiles, didn't we also have screens?
1:21:02So we have world chunks and -tiles, didn't we also have screens?
1:21:02So we have world chunks and -tiles, didn't we also have screens?
1:21:45Why wouldn't you use a function template in the example mentioned before?
1:21:45Why wouldn't you use a function template in the example mentioned before?
1:21:45Why wouldn't you use a function template in the example mentioned before?
1:27:11Will you write asset exporters/importers to get the assets into an efficient format or will you rely on the asset creators tools?
1:27:11Will you write asset exporters/importers to get the assets into an efficient format or will you rely on the asset creators tools?
1:27:11Will you write asset exporters/importers to get the assets into an efficient format or will you rely on the asset creators tools?