Handmade Hero»Episode Guide
Introduction to Lighting
?
?

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)
1:59Consider addressing the problem of speed and optimisation in order to ease debugging
1:59Consider addressing the problem of speed and optimisation in order to ease debugging
1:59Consider addressing the problem of speed and optimisation in order to ease debugging
4:02Two possible directions: Renderer Features...
4:02Two possible directions: Renderer Features...
4:02Two possible directions: Renderer Features...
5:11...or Lighting Control
5:11...or Lighting Control
5:11...or Lighting Control
6:26Suggest turning off everything except for the tree
6:26Suggest turning off everything except for the tree
6:26Suggest turning off everything except for the tree
7:29Review what's going on in handmade_render_group
7:29Review what's going on in handmade_render_group
7:29Review what's going on in handmade_render_group
8:18Turn off DrawBitmap, change the hideous pink background and switch to compile in debug mode
8:18Turn off DrawBitmap, change the hideous pink background and switch to compile in debug mode
8:18Turn off DrawBitmap, change the hideous pink background and switch to compile in debug mode
10:03Stop the tree rotating
10:03Stop the tree rotating
10:03Stop the tree rotating
10:50Blackboard: 'Lighting is the sound of graphics' - Doug Church
10:50Blackboard: 'Lighting is the sound of graphics' - Doug Church
10:50Blackboard: 'Lighting is the sound of graphics' - Doug Church
13:53Blackboard: Dynamic lighting
13:53Blackboard: Dynamic lighting
13:53Blackboard: Dynamic lighting
15:32Blackboard: Lighting is fundamentally a 'directional' effect
15:32Blackboard: Lighting is fundamentally a 'directional' effect
15:32Blackboard: Lighting is fundamentally a 'directional' effect
17:42Blackboard: Wavelengths
17:42Blackboard: Wavelengths
17:42Blackboard: Wavelengths
21:24Blackboard: RGB colour receptors
21:24Blackboard: RGB colour receptors
21:24Blackboard: RGB colour receptors
24:29Blackboard: Don't talk to animals with more color wavelength sensors than youα
24:29Blackboard: Don't talk to animals with more color wavelength sensors than youα
24:29Blackboard: Don't talk to animals with more color wavelength sensors than youα
25:11Blackboard: We see the aggregate effect of all of the light sources scattering light towards our eye
25:11Blackboard: We see the aggregate effect of all of the light sources scattering light towards our eye
25:11Blackboard: We see the aggregate effect of all of the light sources scattering light towards our eye
26:44Blackboard: Subsurface scattering
26:44Blackboard: Subsurface scattering
26:44Blackboard: Subsurface scattering
28:12Blackboard: What makes surfaces look different?
28:12Blackboard: What makes surfaces look different?
28:12Blackboard: What makes surfaces look different?
32:37Blackboard: What sorts of surfaces do we tend to actually want?
32:37Blackboard: What sorts of surfaces do we tend to actually want?
32:37Blackboard: What sorts of surfaces do we tend to actually want?
35:10Blackboard: Approximations
35:10Blackboard: Approximations
35:10Blackboard: Approximations
38:29Blackboard: 'Light probes' or Indirect light sampling
38:29Blackboard: 'Light probes' or Indirect light sampling
38:29Blackboard: 'Light probes' or Indirect light sampling
44:22Blackboard: What do we do in 2D?
44:22Blackboard: What do we do in 2D?
44:22Blackboard: What do we do in 2D?
46:22Blackboard: Normal maps
46:22Blackboard: Normal maps
46:22Blackboard: Normal maps
48:19Blackboard: We don't know what the light field is
48:19Blackboard: We don't know what the light field is
48:19Blackboard: We don't know what the light field is
53:19Q&A
🗩
53:19Q&A
🗩
53:19Q&A
🗩
54:18cubercaleb So is this why animation studios like Pixar have super computers for the rendering?
🗪
54:18cubercaleb So is this why animation studios like Pixar have super computers for the rendering?
🗪
54:18cubercaleb So is this why animation studios like Pixar have super computers for the rendering?
🗪
55:31ttbjm What about shadows?
🗪
55:31ttbjm What about shadows?
🗪
55:31ttbjm What about shadows?
🗪
56:09Blackboard: Shadow maps
56:09Blackboard: Shadow maps
56:09Blackboard: Shadow maps
58:01tweester I was looking for a build design doc to follow if you have one?
🗪
58:01tweester I was looking for a build design doc to follow if you have one?
🗪
58:01tweester I was looking for a build design doc to follow if you have one?
🗪
58:28ifingerbangedurcat Do we also plan on having a day/night cycle and dynamic shadows, where they stretch and fade depending on the position of the sun?
🗪
58:28ifingerbangedurcat Do we also plan on having a day/night cycle and dynamic shadows, where they stretch and fade depending on the position of the sun?
🗪
58:28ifingerbangedurcat Do we also plan on having a day/night cycle and dynamic shadows, where they stretch and fade depending on the position of the sun?
🗪
59:36mmair0ne Light feathering, e.g. in a window or tree
🗪
59:36mmair0ne Light feathering, e.g. in a window or tree
🗪
59:36mmair0ne Light feathering, e.g. in a window or tree
🗪
1:00:01thestalkingwolf Sort of on topic would you consider doing a true 3D lighting and or ray tracing discussion/lessons at some time?
🗪
1:00:01thestalkingwolf Sort of on topic would you consider doing a true 3D lighting and or ray tracing discussion/lessons at some time?
🗪
1:00:01thestalkingwolf Sort of on topic would you consider doing a true 3D lighting and or ray tracing discussion/lessons at some time?
🗪
1:00:24smt19913 How do you account for infinite reflections if there is a mirror that reflects light into a mirror that reflects light back at the first mirror?
🗪
1:00:24smt19913 How do you account for infinite reflections if there is a mirror that reflects light into a mirror that reflects light back at the first mirror?
🗪
1:00:24smt19913 How do you account for infinite reflections if there is a mirror that reflects light into a mirror that reflects light back at the first mirror?
🗪
1:01:48Blackboard: Volumetric scattering
1:01:48Blackboard: Volumetric scattering
1:01:48Blackboard: Volumetric scattering
1:03:03bunnymancer Could you repeat that?
🗪
1:03:03bunnymancer Could you repeat that?
🗪
1:03:03bunnymancer Could you repeat that?
🗪
1:03:12abnercoimbre Q: Heated debates of why we need to go through the trouble you're going through. #JustUseUnity Many newcomers
🗪
1:03:12abnercoimbre Q: Heated debates of why we need to go through the trouble you're going through. #JustUseUnity Many newcomers
🗪
1:03:12abnercoimbre Q: Heated debates of why we need to go through the trouble you're going through. #JustUseUnity Many newcomers
🗪
1:06:26hsru Is 2D worth going for when it becomes more complex than 3D?
🗪
1:06:26hsru Is 2D worth going for when it becomes more complex than 3D?
🗪
1:06:26hsru Is 2D worth going for when it becomes more complex than 3D?
🗪
1:09:22zootboysean Is your 'lighting cube' idea the same thing as cubemaps?β
🗪
1:09:22zootboysean Is your 'lighting cube' idea the same thing as cubemaps?β
🗪
1:09:22zootboysean Is your 'lighting cube' idea the same thing as cubemaps?β
🗪
1:10:44mmair0ne How to feather light through a window or tree
🗪
1:10:44mmair0ne How to feather light through a window or tree
🗪
1:10:44mmair0ne How to feather light through a window or tree
🗪
1:11:07Blackboard: Translucence
1:11:07Blackboard: Translucence
1:11:07Blackboard: Translucence
1:14:16theottergod Why don't we just have the lighting feigned on the sprites?
🗪
1:14:16theottergod Why don't we just have the lighting feigned on the sprites?
🗪
1:14:16theottergod Why don't we just have the lighting feigned on the sprites?
🗪
1:15:16flaturated How about the second framebuffer you mentioned with light sources having precomputed distance falloff, plus graphics objects having another channel similar to alpha that indicates reflectivity? That would be fast and maybe good enough for a 2D game
🗪
1:15:16flaturated How about the second framebuffer you mentioned with light sources having precomputed distance falloff, plus graphics objects having another channel similar to alpha that indicates reflectivity? That would be fast and maybe good enough for a 2D game
🗪
1:15:16flaturated How about the second framebuffer you mentioned with light sources having precomputed distance falloff, plus graphics objects having another channel similar to alpha that indicates reflectivity? That would be fast and maybe good enough for a 2D game
🗪
1:15:51Blackboard: Illumination is constant along a line
1:15:51Blackboard: Illumination is constant along a line
1:15:51Blackboard: Illumination is constant along a line
1:18:34johanso Due to the complexity of lighting, are system resources a major factor/consideration in shading engines?
🗪
1:18:34johanso Due to the complexity of lighting, are system resources a major factor/consideration in shading engines?
🗪
1:18:34johanso Due to the complexity of lighting, are system resources a major factor/consideration in shading engines?
🗪
1:19:10grumpygiant256 If you use a 2D lighting buffer, will you need to generate a G-buffer or Z-buffer as well first?
🗪
1:19:10grumpygiant256 If you use a 2D lighting buffer, will you need to generate a G-buffer or Z-buffer as well first?
🗪
1:19:10grumpygiant256 If you use a 2D lighting buffer, will you need to generate a G-buffer or Z-buffer as well first?
🗪
1:19:47chokeagun What about bleeding effects?
🗪
1:19:47chokeagun What about bleeding effects?
🗪
1:19:47chokeagun What about bleeding effects?
🗪
1:19:55insofaras Is this going to work with software rendering or will it be too computationally expensive?
🗪
1:19:55insofaras Is this going to work with software rendering or will it be too computationally expensive?
🗪
1:19:55insofaras Is this going to work with software rendering or will it be too computationally expensive?
🗪
1:20:37erdomina You mentioned computing values for a single source receiving light from multiple sources. How would we in essence do this computation? I'm assuming it's based off of neighbouring pixel values. I'm having a hard time formulating an approach
🗪
1:20:37erdomina You mentioned computing values for a single source receiving light from multiple sources. How would we in essence do this computation? I'm assuming it's based off of neighbouring pixel values. I'm having a hard time formulating an approach
🗪
1:20:37erdomina You mentioned computing values for a single source receiving light from multiple sources. How would we in essence do this computation? I'm assuming it's based off of neighbouring pixel values. I'm having a hard time formulating an approach
🗪
1:22:09sv3ns0nic Wouldn't it (in most cases) be smarter to use an existing graphic / render engine and just focus on coding the game itself / gameplay?
🗪
1:22:09sv3ns0nic Wouldn't it (in most cases) be smarter to use an existing graphic / render engine and just focus on coding the game itself / gameplay?
🗪
1:22:09sv3ns0nic Wouldn't it (in most cases) be smarter to use an existing graphic / render engine and just focus on coding the game itself / gameplay?
🗪
1:25:03runningmyself What is the ambient occlusion and why my video card get late to run games with ambient occlusion? Like really lose FPS
🗪
1:25:03runningmyself What is the ambient occlusion and why my video card get late to run games with ambient occlusion? Like really lose FPS
🗪
1:25:03runningmyself What is the ambient occlusion and why my video card get late to run games with ambient occlusion? Like really lose FPS
🗪
1:25:29Blackboard: Ambient occlusion
1:25:29Blackboard: Ambient occlusion
1:25:29Blackboard: Ambient occlusion
1:31:47tsongbird Do you prefer cake or muffins?
🗪
1:31:47tsongbird Do you prefer cake or muffins?
🗪
1:31:47tsongbird Do you prefer cake or muffins?
🗪
1:31:59n2__ Do you have any plans to implement sprite opacity and, if so, could it be taken into consideration with the light map calculation, i.e. less opaque objects block less light?
🗪
1:31:59n2__ Do you have any plans to implement sprite opacity and, if so, could it be taken into consideration with the light map calculation, i.e. less opaque objects block less light?
🗪
1:31:59n2__ Do you have any plans to implement sprite opacity and, if so, could it be taken into consideration with the light map calculation, i.e. less opaque objects block less light?
🗪
1:32:40naddafadda Are there any books or resources you would recommend on lighting or game engine creation in general?1
🗪
1:32:40naddafadda Are there any books or resources you would recommend on lighting or game engine creation in general?1
🗪
1:32:40naddafadda Are there any books or resources you would recommend on lighting or game engine creation in general?1
🗪
1:33:51tweester So game design documentation, like a roadmap for the game?
🗪
1:33:51tweester So game design documentation, like a roadmap for the game?
🗪
1:33:51tweester So game design documentation, like a roadmap for the game?
🗪
1:34:27morwakawaka Wouldn't a game in pitch darkness have the easiest lighting system to code?
🗪
1:34:27morwakawaka Wouldn't a game in pitch darkness have the easiest lighting system to code?
🗪
1:34:27morwakawaka Wouldn't a game in pitch darkness have the easiest lighting system to code?
🗪
1:35:19redfin9 Can you go back in time and start this series 15 years ago?
🗪
1:35:19redfin9 Can you go back in time and start this series 15 years ago?
🗪
1:35:19redfin9 Can you go back in time and start this series 15 years ago?
🗪
1:35:52tsongbird If you did choose cake, would it be a cheese or mud cake?
🗪
1:35:52tsongbird If you did choose cake, would it be a cheese or mud cake?
🗪
1:35:52tsongbird If you did choose cake, would it be a cheese or mud cake?
🗪
1:36:05mmair0ne What I mean is sort of more like how to make beams of light pass through a rendered object
🗪
1:36:05mmair0ne What I mean is sort of more like how to make beams of light pass through a rendered object
🗪
1:36:05mmair0ne What I mean is sort of more like how to make beams of light pass through a rendered object
🗪
1:36:24Blackboard: God rays
1:36:24Blackboard: God rays
1:36:24Blackboard: God rays
1:41:48twinduoq Don't you cast rays from the eye and not the sun to reduce calculations, and then see if the rays cast from the eye hit the sun?
🗪
1:41:48twinduoq Don't you cast rays from the eye and not the sun to reduce calculations, and then see if the rays cast from the eye hit the sun?
🗪
1:41:48twinduoq Don't you cast rays from the eye and not the sun to reduce calculations, and then see if the rays cast from the eye hit the sun?
🗪
1:43:26darthkoonstyle Can you use a 3D overlay to pretend, say, a slice of a 3D environment. For example, the platform you are on being z, and then x is across, y up and down. So you can have a light source at x 33, y 50, z 1. So all objects less than x 33 would be shadowed to the right, objects greater than would be shadowed to the left, greater than y 50 would be brighter to the front and less would be shadowed to the back... I don't know if this is making sense, but would it be possible?
🗪
1:43:26darthkoonstyle Can you use a 3D overlay to pretend, say, a slice of a 3D environment. For example, the platform you are on being z, and then x is across, y up and down. So you can have a light source at x 33, y 50, z 1. So all objects less than x 33 would be shadowed to the right, objects greater than would be shadowed to the left, greater than y 50 would be brighter to the front and less would be shadowed to the back... I don't know if this is making sense, but would it be possible?
🗪
1:43:26darthkoonstyle Can you use a 3D overlay to pretend, say, a slice of a 3D environment. For example, the platform you are on being z, and then x is across, y up and down. So you can have a light source at x 33, y 50, z 1. So all objects less than x 33 would be shadowed to the right, objects greater than would be shadowed to the left, greater than y 50 would be brighter to the front and less would be shadowed to the back... I don't know if this is making sense, but would it be possible?
🗪
1:44:13cubercaleb In early episodes you worked on having multiple z levels. Wouldn't this mean you would need to render walls in 3D, thus introducing some 3D into the rendering and lighting calculations?
🗪
1:44:13cubercaleb In early episodes you worked on having multiple z levels. Wouldn't this mean you would need to render walls in 3D, thus introducing some 3D into the rendering and lighting calculations?
🗪
1:44:13cubercaleb In early episodes you worked on having multiple z levels. Wouldn't this mean you would need to render walls in 3D, thus introducing some 3D into the rendering and lighting calculations?
🗪
1:44:42itisbob How often do you stream Game Development?
🗪
1:44:42itisbob How often do you stream Game Development?
🗪
1:44:42itisbob How often do you stream Game Development?
🗪
1:45:12redfin9 What is your background that led to where you are? Is education important or interest more important?
🗪
1:45:12redfin9 What is your background that led to where you are? Is education important or interest more important?
🗪
1:45:12redfin9 What is your background that led to where you are? Is education important or interest more important?
🗪
1:45:26morwakawaka Will this lighting system work for blind people?
🗪
1:45:26morwakawaka Will this lighting system work for blind people?
🗪
1:45:26morwakawaka Will this lighting system work for blind people?
🗪
1:45:49deadvertex Do you think we'll be able to do all this in real time or will we have to pre-bake some of the lighting information when generating the map?
🗪
1:45:49deadvertex Do you think we'll be able to do all this in real time or will we have to pre-bake some of the lighting information when generating the map?
🗪
1:45:49deadvertex Do you think we'll be able to do all this in real time or will we have to pre-bake some of the lighting information when generating the map?
🗪
1:46:11morwakawaka Couldn't you just make a 3D game and then flatten it with a rolling pin?
🗪
1:46:11morwakawaka Couldn't you just make a 3D game and then flatten it with a rolling pin?
🗪
1:46:11morwakawaka Couldn't you just make a 3D game and then flatten it with a rolling pin?
🗪
1:46:29irdumbs How often is real time radiosity used in games? Is it easy, and do you guys use it? Why or why not? Any hints?
🗪
1:46:29irdumbs How often is real time radiosity used in games? Is it easy, and do you guys use it? Why or why not? Any hints?
🗪
1:46:29irdumbs How often is real time radiosity used in games? Is it easy, and do you guys use it? Why or why not? Any hints?
🗪
1:48:06dgmtv I saw a game that uses normal maps on sprites
🗪
1:48:06dgmtv I saw a game that uses normal maps on sprites
🗪
1:48:06dgmtv I saw a game that uses normal maps on sprites
🗪
1:48:39yakra13 Isn't lights falloff inverse square? As you move farther from the source each ray is further from its neighbors
🗪
1:48:39yakra13 Isn't lights falloff inverse square? As you move farther from the source each ray is further from its neighbors
🗪
1:48:39yakra13 Isn't lights falloff inverse square? As you move farther from the source each ray is further from its neighbors
🗪
1:48:55Blackboard: Inverse square law
1:48:55Blackboard: Inverse square law
1:48:55Blackboard: Inverse square law
1:51:36grumpygiant256 Would you consider voxelizing the scene like Little Big Planet 2 does?
🗪
1:51:36grumpygiant256 Would you consider voxelizing the scene like Little Big Planet 2 does?
🗪
1:51:36grumpygiant256 Would you consider voxelizing the scene like Little Big Planet 2 does?
🗪
1:52:46oliholli Had to log in so hopefully this isn't too late. Wouldn't there be falloff with a point source when integrating across the surface, since the rays spread out away from the source?
🗪
1:52:46oliholli Had to log in so hopefully this isn't too late. Wouldn't there be falloff with a point source when integrating across the surface, since the rays spread out away from the source?
🗪
1:52:46oliholli Had to log in so hopefully this isn't too late. Wouldn't there be falloff with a point source when integrating across the surface, since the rays spread out away from the source?
🗪
1:54:33ice_engine Why is it easier to represent light as photons and not particles in 3D programs?
🗪
1:54:33ice_engine Why is it easier to represent light as photons and not particles in 3D programs?
🗪
1:54:33ice_engine Why is it easier to represent light as photons and not particles in 3D programs?
🗪
1:55:08irdumbs Rendering light in environments and events approaching the speed of light. How to do it?
🗪
1:55:08irdumbs Rendering light in environments and events approaching the speed of light. How to do it?
🗪
1:55:08irdumbs Rendering light in environments and events approaching the speed of light. How to do it?
🗪
1:55:24doctoromega PBR lightning? Quick run down on how it works?
🗪
1:55:24doctoromega PBR lightning? Quick run down on how it works?
🗪
1:55:24doctoromega PBR lightning? Quick run down on how it works?
🗪
1:55:41We have come to the end
🗩
1:55:41We have come to the end
🗩
1:55:41We have come to the end
🗩