Adding a Voxel Utility Struct
?
?

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:02Recap and set the stage for the day
🗩
0:02Recap and set the stage for the day
🗩
0:02Recap and set the stage for the day
🗩
2:52Lighting walkthrough: Voxelisation recording the octahedral map
📖
2:52Lighting walkthrough: Voxelisation recording the octahedral map
📖
2:52Lighting walkthrough: Voxelisation recording the octahedral map
📖
4:21Lighting walkthrough: Grid ray tracing, for writing to the octahedral map
📖
4:21Lighting walkthrough: Grid ray tracing, for writing to the octahedral map
📖
4:21Lighting walkthrough: Grid ray tracing, for writing to the octahedral map
📖
7:21Lighting walkthrough: Traversing the aproned voxel
📖
7:21Lighting walkthrough: Traversing the aproned voxel
📖
7:21Lighting walkthrough: Traversing the aproned voxel
📖
9:25Lighting walkthrough: Computing and writing to the octahedral map
📖
9:25Lighting walkthrough: Computing and writing to the octahedral map
📖
9:25Lighting walkthrough: Computing and writing to the octahedral map
📖
12:36Lighting walkthrough: Grid ray casting, propagating light through the system
📖
12:36Lighting walkthrough: Grid ray casting, propagating light through the system
📖
12:36Lighting walkthrough: Grid ray casting, propagating light through the system
📖
16:07Lighting walkthrough: Grid ray casting, for sampling from the spatial grid
📖
16:07Lighting walkthrough: Grid ray casting, for sampling from the spatial grid
📖
16:07Lighting walkthrough: Grid ray casting, for sampling from the spatial grid
📖
23:26Consider the correctness of our partial-floating-point MinTest computation in GridRayCast()
📖
23:26Consider the correctness of our partial-floating-point MinTest computation in GridRayCast()
📖
23:26Consider the correctness of our partial-floating-point MinTest computation in GridRayCast()
📖
26:44Make a note in GridRayCast() to consider computing MinTest using the full 32-bit compare
26:44Make a note in GridRayCast() to consider computing MinTest using the full 32-bit compare
26:44Make a note in GridRayCast() to consider computing MinTest using the full 32-bit compare
29:29Lighting walkthrough: Grid ray casting, for sampling from the spatial grid, continued
📖
29:29Lighting walkthrough: Grid ray casting, for sampling from the spatial grid, continued
📖
29:29Lighting walkthrough: Grid ray casting, for sampling from the spatial grid, continued
📖
35:35Lighting walkthrough: Pre-pass spatial grid construction
📖
35:35Lighting walkthrough: Pre-pass spatial grid construction
📖
35:35Lighting walkthrough: Pre-pass spatial grid construction
📖
36:45Antibiotics, COVID-19, throat culture tests and medical practice
🗩
36:45Antibiotics, COVID-19, throat culture tests and medical practice
🗩
36:45Antibiotics, COVID-19, throat culture tests and medical practice
🗩
38:39Lighting walkthrough: Pre-pass spatial grid construction, continued
📖
38:39Lighting walkthrough: Pre-pass spatial grid construction, continued
📖
38:39Lighting walkthrough: Pre-pass spatial grid construction, continued
📖
41:59Document the Intersect() call in BuildSpatialPartitionForLighting()
41:59Document the Intersect() call in BuildSpatialPartitionForLighting()
41:59Document the Intersect() call in BuildSpatialPartitionForLighting()
42:44Determine to step through the lighting code
🗩
42:44Determine to step through the lighting code
🗩
42:44Determine to step through the lighting code
🗩
43:19Try to break into InteralLightingCore()
🏃
43:19Try to break into InteralLightingCore()
🏃
43:19Try to break into InteralLightingCore()
🏃
44:25Step through InternalLightingCore()
🏃
44:25Step through InternalLightingCore()
🏃
44:25Step through InternalLightingCore()
🏃
47:43Make BuildSpatialPartitionForLighting() subtract the apron from the MaxGridIndex
47:43Make BuildSpatialPartitionForLighting() subtract the apron from the MaxGridIndex
47:43Make BuildSpatialPartitionForLighting() subtract the apron from the MaxGridIndex
48:04Step back in to BuildSpatialPartitionForLighting()
🏃
48:04Step back in to BuildSpatialPartitionForLighting()
🏃
48:04Step back in to BuildSpatialPartitionForLighting()
🏃
48:29Respecify MaxGridIndex as GridCount in BuildSpatialPartitionForLighting()
48:29Respecify MaxGridIndex as GridCount in BuildSpatialPartitionForLighting()
48:29Respecify MaxGridIndex as GridCount in BuildSpatialPartitionForLighting()
49:40Continue to step through BuildSpatialPartitionForLighting()
🏃
49:40Continue to step through BuildSpatialPartitionForLighting()
🏃
49:40Continue to step through BuildSpatialPartitionForLighting()
🏃
51:15Assert in GridIndexFrom() that our P is inside the Voxel
51:15Assert in GridIndexFrom() that our P is inside the Voxel
51:15Assert in GridIndexFrom() that our P is inside the Voxel
54:51Extend the voxel by an ExtraOcclusionRadius, augmenting lighting_solution with a SpatialGridCorner and SpatialGridIndexOffset
54:51Extend the voxel by an ExtraOcclusionRadius, augmenting lighting_solution with a SpatialGridCorner and SpatialGridIndexOffset
54:51Extend the voxel by an ExtraOcclusionRadius, augmenting lighting_solution with a SpatialGridCorner and SpatialGridIndexOffset
1:02:24Create handmade_voxel.h and handmade_voxel.cpp, introducing voxel_grid and related utility functions
1:02:24Create handmade_voxel.h and handmade_voxel.cpp, introducing voxel_grid and related utility functions
1:02:24Create handmade_voxel.h and handmade_voxel.cpp, introducing voxel_grid and related utility functions
1:15:13Clean up and augment lighting_solution with new voxel_grid AtlasGrid and SpatialGrid
1:15:13Clean up and augment lighting_solution with new voxel_grid AtlasGrid and SpatialGrid
1:15:13Clean up and augment lighting_solution with new voxel_grid AtlasGrid and SpatialGrid
1:20:10Include handmade_voxel.h and handmade_voxel.cpp, fix errors and introduce voxel_relative_p
1:20:10Include handmade_voxel.h and handmade_voxel.cpp, fix errors and introduce voxel_relative_p
1:20:10Include handmade_voxel.h and handmade_voxel.cpp, fix errors and introduce voxel_relative_p
1:25:39Update the lighting system to use our new voxel utility functions
1:25:39Update the lighting system to use our new voxel utility functions
1:25:39Update the lighting system to use our new voxel utility functions
2:22:41Consider collapsing BeginLightingComputation() and InternalLightingCore()
📖
2:22:41Consider collapsing BeginLightingComputation() and InternalLightingCore()
📖
2:22:41Consider collapsing BeginLightingComputation() and InternalLightingCore()
📖
2:26:43Introduce SetLightingValues() to do all the render_group initialisation work from BeginLightingComputation()
2:26:43Introduce SetLightingValues() to do all the render_group initialisation work from BeginLightingComputation()
2:26:43Introduce SetLightingValues() to do all the render_group initialisation work from BeginLightingComputation()
2:28:42Respecify BeginLightingComputation() as SetUpLightingRegion(), EndLightingComputation() as UpdateLighting(), and introduce PushLightingDebugValues()
2:28:42Respecify BeginLightingComputation() as SetUpLightingRegion(), EndLightingComputation() as UpdateLighting(), and introduce PushLightingDebugValues()
2:28:42Respecify BeginLightingComputation() as SetUpLightingRegion(), EndLightingComputation() as UpdateLighting(), and introduce PushLightingDebugValues()
2:38:04Q&A
🗩
2:38:04Q&A
🗩
2:38:04Q&A
🗩
2:38:26somebody_took_my_name Q: When assigning SpatialMinCorner in SetUpLightingRegion(), the AtlasGrid's MinCorner is probably not yet initialized. So I think it should use the AtlasMinCorner variable
🗪
2:38:26somebody_took_my_name Q: When assigning SpatialMinCorner in SetUpLightingRegion(), the AtlasGrid's MinCorner is probably not yet initialized. So I think it should use the AtlasMinCorner variable
🗪
2:38:26somebody_took_my_name Q: When assigning SpatialMinCorner in SetUpLightingRegion(), the AtlasGrid's MinCorner is probably not yet initialized. So I think it should use the AtlasMinCorner variable
🗪
2:39:05Fix the SpatialMinCorner assignment in SetUpLightingRegion()
2:39:05Fix the SpatialMinCorner assignment in SetUpLightingRegion()
2:39:05Fix the SpatialMinCorner assignment in SetUpLightingRegion()
2:39:31insobot Q: Whisky?
🗪
2:39:31insobot Q: Whisky?
🗪
2:39:31insobot Q: Whisky?
🗪
2:39:48thebanjomatic Q: ETA for 603, 604 hitting YouTube? I missed last Sunday's stream. Miss anything good?
🗪
2:39:48thebanjomatic Q: ETA for 603, 604 hitting YouTube? I missed last Sunday's stream. Miss anything good?
🗪
2:39:48thebanjomatic Q: ETA for 603, 604 hitting YouTube? I missed last Sunday's stream. Miss anything good?
🗪
2:40:39sagian2005 Q: Maybe it got fixed already. MaxNodeIndex = GetVoxelIndexForP (... Solution->SpatialGridMinCorner ...) should be SpatialGridMaxCorner
🗪
2:40:39sagian2005 Q: Maybe it got fixed already. MaxNodeIndex = GetVoxelIndexForP (... Solution->SpatialGridMinCorner ...) should be SpatialGridMaxCorner
🗪
2:40:39sagian2005 Q: Maybe it got fixed already. MaxNodeIndex = GetVoxelIndexForP (... Solution->SpatialGridMinCorner ...) should be SpatialGridMaxCorner
🗪
2:41:42somebody_took_my_name It's missing the Grid pointer
🗪
2:41:42somebody_took_my_name It's missing the Grid pointer
🗪
2:41:42somebody_took_my_name It's missing the Grid pointer
🗪
2:41:55Enable HANDMADE_INTERNAL and HANDMADE_SLOW, and fix the Assert in FlatIndexFrom()
2:41:55Enable HANDMADE_INTERNAL and HANDMADE_SLOW, and fix the Assert in FlatIndexFrom()
2:41:55Enable HANDMADE_INTERNAL and HANDMADE_SLOW, and fix the Assert in FlatIndexFrom()
2:42:59Delete the lighting .dump and .txt files
🗹
2:42:59Delete the lighting .dump and .txt files
🗹
2:42:59Delete the lighting .dump and .txt files
🗹
2:43:40We'll pick this up tomorrow
🗩
2:43:40We'll pick this up tomorrow
🗩
2:43:40We'll pick this up tomorrow
🗩