Handmade Hero»Episode Guide
Allocating a Back Buffer
?
?

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:50Short overview about a backbuffer
0:50Short overview about a backbuffer
0:50Short overview about a backbuffer
2:56Windows message callback
2:56Windows message callback
2:56Windows message callback
4:43Closing the window (PostQuitMessage function)
4:43Closing the window (PostQuitMessage function)
4:43Closing the window (PostQuitMessage function)
9:10about resource handling
9:10about resource handling
9:10about resource handling
12:46Back to closing the window
12:46Back to closing the window
12:46Back to closing the window
15:56about global variables
15:56about global variables
15:56about global variables
17:00Different meanings of static: internal, global_variable, local_persist
17:00Different meanings of static: internal, global_variable, local_persist
17:00Different meanings of static: internal, global_variable, local_persist
22:47Backbuffer, windows, GDI and us.
22:47Backbuffer, windows, GDI and us.
22:47Backbuffer, windows, GDI and us.
23:29resizeDIBSection() created
23:29resizeDIBSection() created
23:29resizeDIBSection() created
26:06GetClientRect()
26:06GetClientRect()
26:06GetClientRect()
30:49CreateDIBSection() created
30:49CreateDIBSection() created
30:49CreateDIBSection() created
31:39StretchDIBits()
31:39StretchDIBits()
31:39StretchDIBits()
38:31CreateDIBSection() usage and explanation
38:31CreateDIBSection() usage and explanation
38:31CreateDIBSection() usage and explanation
48:19About freeing and creating a new DIBSection
48:19About freeing and creating a new DIBSection
48:19About freeing and creating a new DIBSection
53:42Device context and Win32ResizeDIBSection()
53:42Device context and Win32ResizeDIBSection()
53:42Device context and Win32ResizeDIBSection()
1:03:23Q&A
🗩
1:03:23Q&A
🗩
1:03:23Q&A
🗩
1:03:37ssylvan Remark on not needing to use CreateDIBSection/CreateCompatibleDC and just allocating the array ourselves
🗪
1:03:37ssylvan Remark on not needing to use CreateDIBSection/CreateCompatibleDC and just allocating the array ourselves
🗪
1:03:37ssylvan Remark on not needing to use CreateDIBSection/CreateCompatibleDC and just allocating the array ourselves
🗪
1:06:47Remark on the change to the archiving of Q&A sessions (they are now combined with the main day video)
1:06:47Remark on the change to the archiving of Q&A sessions (they are now combined with the main day video)
1:06:47Remark on the change to the archiving of Q&A sessions (they are now combined with the main day video)
1:08:37Will you be using sleep()?
1:08:37Will you be using sleep()?
1:08:37Will you be using sleep()?
1:08:59Could you go back through how you got Visual Studio to cooperate?
1:08:59Could you go back through how you got Visual Studio to cooperate?
1:08:59Could you go back through how you got Visual Studio to cooperate?
1:09:52Are other windowing systems less crazy to work with?
1:09:52Are other windowing systems less crazy to work with?
1:09:52Are other windowing systems less crazy to work with?
1:12:20Are you going to do a more detailed Intro To C series alongside this one?
1:12:20Are you going to do a more detailed Intro To C series alongside this one?
1:12:20Are you going to do a more detailed Intro To C series alongside this one?
1:13:40Can you explain what exactly a void* is? A pointer to nothing?
1:13:40Can you explain what exactly a void* is? A pointer to nothing?
1:13:40Can you explain what exactly a void* is? A pointer to nothing?
1:20:03Any new thoughts on IMGUI since you made that video a few years ago?
1:20:03Any new thoughts on IMGUI since you made that video a few years ago?
1:20:03Any new thoughts on IMGUI since you made that video a few years ago?
1:21:15ssylvan Follow up on the previous remark about StretchDIBits, it can take a custom array as long as it is DWORD aligned
🗪
1:21:15ssylvan Follow up on the previous remark about StretchDIBits, it can take a custom array as long as it is DWORD aligned
🗪
1:21:15ssylvan Follow up on the previous remark about StretchDIBits, it can take a custom array as long as it is DWORD aligned
🗪
1:23:13When will the source be available?
1:23:13When will the source be available?
1:23:13When will the source be available?
1:23:30When using emacs, I find it hard to use meta key with F and B to skip words, how do you do it so fast?
1:23:30When using emacs, I find it hard to use meta key with F and B to skip words, how do you do it so fast?
1:23:30When using emacs, I find it hard to use meta key with F and B to skip words, how do you do it so fast?
1:23:48How come !=0 is true in C, and return values of main and functions is 0 if everything is okay?
1:23:48How come !=0 is true in C, and return values of main and functions is 0 if everything is okay?
1:23:48How come !=0 is true in C, and return values of main and functions is 0 if everything is okay?
1:26:18nothings2 Remark on functions with multiple return values "Pre ANSI C didn't allow return structs"
🗪
1:26:18nothings2 Remark on functions with multiple return values "Pre ANSI C didn't allow return structs"
🗪
1:26:18nothings2 Remark on functions with multiple return values "Pre ANSI C didn't allow return structs"
🗪
1:28:24Any reason you put the type in a line above the function name?
1:28:24Any reason you put the type in a line above the function name?
1:28:24Any reason you put the type in a line above the function name?