Handmade Hero»Episode Guide
Adding Font Metadata to the Asset Builder
?
?

Keyboard Navigation

Global Keys

[, < / ], > Jump to previous / next episode
W, K, P / S, J, N Jump to previous / next marker
t / T Toggle theatre / SUPERtheatre mode
V Revert filter to original state Y Select link (requires manual Ctrl-c)

Menu toggling

q Quotes r References f Filter y Link c Credits

In-Menu Movement

a
w
s
d
h j k l


Quotes and References Menus

Enter Jump to timecode

Quotes, References and Credits Menus

o Open URL (in new tab)

Filter Menu

x, Space Toggle category and focus next
X, ShiftSpace Toggle category and focus previous
v Invert topics / media as per focus

Filter and Link Menus

z Toggle filter / linking mode

Credits Menu

Enter Open URL (in new tab)
0:25Recap and plan for today
0:25Recap and plan for today
0:25Recap and plan for today
4:54We want the ability to load multiple fonts
4:54We want the ability to load multiple fonts
4:54We want the ability to load multiple fonts
6:20TODO(casey): Are there larger numbers than 4096...?α
6:20TODO(casey): Are there larger numbers than 4096...?α
6:20TODO(casey): Are there larger numbers than 4096...?α
7:06Using more explicit asset structs in the asset packer
7:06Using more explicit asset structs in the asset packer
7:06Using more explicit asset structs in the asset packer
12:23Moving the font loading code to a separate function
12:23Moving the font loading code to a separate function
12:23Moving the font loading code to a separate function
17:20Freeing the memory taken by the fonts
17:20Freeing the memory taken by the fonts
17:20Freeing the memory taken by the fonts
18:25We need at least a font for the game and another one for debug purposes
18:25We need at least a font for the game and another one for debug purposes
18:25We need at least a font for the game and another one for debug purposes
19:01Our STB code path is broken for the moment
19:01Our STB code path is broken for the moment
19:01Our STB code path is broken for the moment
19:30Making fonts available as usable assets
19:30Making fonts available as usable assets
19:30Making fonts available as usable assets
20:16AddFontAsset
20:16AddFontAsset
20:16AddFontAsset
21:25Pulling together duplicated code into AddAsset
21:25Pulling together duplicated code into AddAsset
21:25Pulling together duplicated code into AddAsset
27:39Hardcoding the codepoint count until we know the range of characters we want to load
27:39Hardcoding the codepoint count until we know the range of characters we want to load
27:39Hardcoding the codepoint count until we know the range of characters we want to load
30:21Initializing the global font device context at startup
30:21Initializing the global font device context at startup
30:21Initializing the global font device context at startup
36:34Building the font tables
36:34Building the font tables
36:34Building the font tables
38:58Writing the asset font information into the asset file
38:58Writing the asset font information into the asset file
38:58Writing the asset font information into the asset file
41:41Faking the horizontal advance using the width of the current character
41:41Faking the horizontal advance using the width of the current character
41:41Faking the horizontal advance using the width of the current character
45:22Loading the font data from the asset file
45:22Loading the font data from the asset file
45:22Loading the font data from the asset file
45:45The codepoint loading gets tricky when using more than one asset file...
45:45The codepoint loading gets tricky when using more than one asset file...
45:45The codepoint loading gets tricky when using more than one asset file...
50:48...but we can do the codepoint rebasing per file!
50:48...but we can do the codepoint rebasing per file!
50:48...but we can do the codepoint rebasing per file!
57:35Q&A
🗩
57:35Q&A
🗩
57:35Q&A
🗩
58:05abnercoimbre Give us a sec
🗪
58:05abnercoimbre Give us a sec
🗪
58:05abnercoimbre Give us a sec
🗪
58:25garlandobloom I tried to explain to someone that a color is just a uint32 and I am not sure I got it across
🗪
58:25garlandobloom I tried to explain to someone that a color is just a uint32 and I am not sure I got it across
🗪
58:25garlandobloom I tried to explain to someone that a color is just a uint32 and I am not sure I got it across
🗪
59:01Blackboard: "Color" -> Ambiguous term!
59:01Blackboard: "Color" -> Ambiguous term!
59:01Blackboard: "Color" -> Ambiguous term!
1:03:46Robrobby You added Textmetrics into the struct and then decided to alloc it - why? And whats the benefit?
🗪
1:03:46Robrobby You added Textmetrics into the struct and then decided to alloc it - why? And whats the benefit?
🗪
1:03:46Robrobby You added Textmetrics into the struct and then decided to alloc it - why? And whats the benefit?
🗪
1:05:02ijustwantfood About the language having different fonts. Would this apply to added packages by other people?
🗪
1:05:02ijustwantfood About the language having different fonts. Would this apply to added packages by other people?
🗪
1:05:02ijustwantfood About the language having different fonts. Would this apply to added packages by other people?
🗪
1:06:00garlandobloom I'm talking about in terms of how the GPU cares about the color of a pixel, as opposed to a struct with float r,g,b,a. Which is not really necessary for a buffer thing
🗪
1:06:00garlandobloom I'm talking about in terms of how the GPU cares about the color of a pixel, as opposed to a struct with float r,g,b,a. Which is not really necessary for a buffer thing
🗪
1:06:00garlandobloom I'm talking about in terms of how the GPU cares about the color of a pixel, as opposed to a struct with float r,g,b,a. Which is not really necessary for a buffer thing
🗪
1:06:22Blackboard: GPU ~ CPU
1:06:22Blackboard: GPU ~ CPU
1:06:22Blackboard: GPU ~ CPU
1:14:07An0nymal Do any systems ever represent light as an actual frequency and change that value based on interaction with the simulated environment?
🗪
1:14:07An0nymal Do any systems ever represent light as an actual frequency and change that value based on interaction with the simulated environment?
🗪
1:14:07An0nymal Do any systems ever represent light as an actual frequency and change that value based on interaction with the simulated environment?
🗪
1:16:28cubercaleb If you take in user input at some point will you worry about blocking Unicode control characters?
🗪
1:16:28cubercaleb If you take in user input at some point will you worry about blocking Unicode control characters?
🗪
1:16:28cubercaleb If you take in user input at some point will you worry about blocking Unicode control characters?
🗪
1:16:44Robrobby So you care about the stack memory. When would you start to really measure it, or is some gut feeling enough? I would never had that idea before not getting an actual error
🗪
1:16:44Robrobby So you care about the stack memory. When would you start to really measure it, or is some gut feeling enough? I would never had that idea before not getting an actual error
🗪
1:16:44Robrobby So you care about the stack memory. When would you start to really measure it, or is some gut feeling enough? I would never had that idea before not getting an actual error
🗪
1:17:15TheSizik What is HDR?
🗪
1:17:15TheSizik What is HDR?
🗪
1:17:15TheSizik What is HDR?
🗪
1:18:51EnemyMouse Do you think there will be a time when CPU and main bandwidth is fast enough to replace GPUs entirely, going back to the days of software renderers?
🗪
1:18:51EnemyMouse Do you think there will be a time when CPU and main bandwidth is fast enough to replace GPUs entirely, going back to the days of software renderers?
🗪
1:18:51EnemyMouse Do you think there will be a time when CPU and main bandwidth is fast enough to replace GPUs entirely, going back to the days of software renderers?
🗪
1:19:12Wind things down for dinner
🗩
1:19:12Wind things down for dinner
🗩
1:19:12Wind things down for dinner
🗩