?
?

Global Keys

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)

q Quotes r References f Filter y Link c Credits

a
w
s
d
h j k l

o Open URL (in new tab)

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

z Toggle filter / linking mode

Enter Open URL (in new tab)
0:44Recap and push forwards
0:44Recap and push forwards
0:44Recap and push forwards
2:46Expand the notion of CoordinateSystem to allow passing a Texture
2:46Expand the notion of CoordinateSystem to allow passing a Texture
2:46Expand the notion of CoordinateSystem to allow passing a Texture
4:36Review how our Edge equations work
4:36Review how our Edge equations work
4:36Review how our Edge equations work
6:05Blackboard: Working through a problem from first principals
6:05Blackboard: Working through a problem from first principals
6:05Blackboard: Working through a problem from first principals
7:26Blackboard: Texture mapping
7:26Blackboard: Texture mapping
7:26Blackboard: Texture mapping
9:22Blackboard: Standard nomenclature
9:22Blackboard: Standard nomenclature
9:22Blackboard: Standard nomenclature
12:16Blackboard: How do we produce some u and v values that tell us where in the texture we are at any given time?
12:16Blackboard: How do we produce some u and v values that tell us where in the texture we are at any given time?
12:16Blackboard: How do we produce some u and v values that tell us where in the texture we are at any given time?
15:06Blackboard: Take a look at what's going to happen here
15:06Blackboard: Take a look at what's going to happen here
15:06Blackboard: Take a look at what's going to happen here
17:38Blackboard: Does this equation give us what we want?
17:38Blackboard: Does this equation give us what we want?
17:38Blackboard: Does this equation give us what we want?
19:30Blackboard: Looking at the problem from another angle
19:30Blackboard: Looking at the problem from another angle
19:30Blackboard: Looking at the problem from another angle
21:21Blackboard: The equation we'd like to implement
21:21Blackboard: The equation we'd like to implement
21:21Blackboard: The equation we'd like to implement
22:16Implement that equation, starting by distributing the negative in the Edge tests
22:16Implement that equation, starting by distributing the negative in the Edge tests
22:16Implement that equation, starting by distributing the negative in the Edge tests
22:49Introduce d
22:49Introduce d
22:49Introduce d
23:16Compute u and v
23:16Compute u and v
23:16Compute u and v
24:59Lookup the u and v inside the Texture
24:59Lookup the u and v inside the Texture
24:59Lookup the u and v inside the Texture
27:48Compile and see what's happening in-game
27:48Compile and see what's happening in-game
27:48Compile and see what's happening in-game
27:55Assert that X and Y are >=0 and < Texture dimensions
27:55Assert that X and Y are >=0 and < Texture dimensions
27:55Assert that X and Y are >=0 and < Texture dimensions
28:20Do that lookup of the u and v
28:20Do that lookup of the u and v
28:20Do that lookup of the u and v
29:36Check out our texture mapping in-gameα
29:36Check out our texture mapping in-gameα
29:36Check out our texture mapping in-gameα
31:56See the alpha composite happening in-game
31:56See the alpha composite happening in-game
31:56See the alpha composite happening in-game
32:23Slow down the fanciness
32:23Slow down the fanciness
32:23Slow down the fanciness
32:53Hit an assertion and postpone clamping U and V until we're doing SIMD
32:53Hit an assertion and postpone clamping U and V until we're doing SIMD
32:53Hit an assertion and postpone clamping U and V until we're doing SIMD
33:42Resume slowing down that fanciness
33:42Resume slowing down that fanciness
33:42Resume slowing down that fanciness
34:24Notice the flickering and mention subpixel accuracy
34:24Notice the flickering and mention subpixel accuracy
34:24Notice the flickering and mention subpixel accuracy
35:26Make the Tree bigger and put it in the centre of the screen
35:26Make the Tree bigger and put it in the centre of the screen
35:26Make the Tree bigger and put it in the centre of the screen
36:17Move the Tree horizontally and keep its angle constant
36:17Move the Tree horizontally and keep its angle constant
36:17Move the Tree horizontally and keep its angle constant
37:39Observe the nature of rendering without subpixel accuracy
37:39Observe the nature of rendering without subpixel accuracy
37:39Observe the nature of rendering without subpixel accuracy
38:56Blackboard: The number of pixels and texels isn't dividing out evenly
38:56Blackboard: The number of pixels and texels isn't dividing out evenly
38:56Blackboard: The number of pixels and texels isn't dividing out evenly
41:36Start tackling these problems
41:36Start tackling these problems
41:36Start tackling these problems
41:57Notice that DrawRectangleSlowly is ignoring the floating point accuracy that was passed to it
41:57Notice that DrawRectangleSlowly is ignoring the floating point accuracy that was passed to it
41:57Notice that DrawRectangleSlowly is ignoring the floating point accuracy that was passed to it
43:28Why do we still look like that, though?
43:28Why do we still look like that, though?
43:28Why do we still look like that, though?
43:58Blackboard: Doing a better job of figuring out where we are in the texture map
43:58Blackboard: Doing a better job of figuring out where we are in the texture map
43:58Blackboard: Doing a better job of figuring out where we are in the texture map
47:18Linearly blend (Lerp) the colours
47:18Linearly blend (Lerp) the colours
47:18Linearly blend (Lerp) the colours
48:55Pretend our Texture is smaller than it actually is
48:55Pretend our Texture is smaller than it actually is
48:55Pretend our Texture is smaller than it actually is
49:39Blend these guys together, but not before lofting out the Color values
49:39Blend these guys together, but not before lofting out the Color values
49:39Blend these guys together, but not before lofting out the Color values
53:01Manufacture a v4 for Lerping between two Lerps and ones for doing scalar multiplications
53:01Manufacture a v4 for Lerping between two Lerps and ones for doing scalar multiplications
53:01Manufacture a v4 for Lerping between two Lerps and ones for doing scalar multiplications
54:47View our properly blurry rendering in-game
54:47View our properly blurry rendering in-game
54:47View our properly blurry rendering in-game
56:55Switch between the old and new ways, for comparison
56:55Switch between the old and new ways, for comparison
56:55Switch between the old and new ways, for comparison
59:13Q&A, after getting the tree spinning again
59:13Q&A, after getting the tree spinning again
59:13Q&A, after getting the tree spinning again
1:00:53 Will the Wall trees be subpixel accurate now?
🗪
1:00:53 Will the Wall trees be subpixel accurate now?
🗪
1:00:53 Will the Wall trees be subpixel accurate now?
🗪
1:01:37 the top of the tree seems to be cut short
🗪
1:01:37 the top of the tree seems to be cut short
🗪
1:01:37 the top of the tree seems to be cut short
🗪
1:03:50 Is tree spinning going to be in the DLC?
🗪
1:03:50 Is tree spinning going to be in the DLC?
🗪
1:03:50 Is tree spinning going to be in the DLC?
🗪
1:04:14 does it rotate with subpixel accuracy?
🗪
1:04:14 does it rotate with subpixel accuracy?
🗪
1:04:14 does it rotate with subpixel accuracy?
🗪
1:05:18 What's the most major / fundamental thing left to do on the renderer?
🗪
1:05:18 What's the most major / fundamental thing left to do on the renderer?
🗪
1:05:18 What's the most major / fundamental thing left to do on the renderer?
🗪
1:06:09TODO(casey): SSE clamping
1:06:09TODO(casey): SSE clamping
1:06:09TODO(casey): SSE clamping
1:06:27 Q: how would you do smooth subpixel rendering for something like pixel art graphics, that doesn't blur but still moves smoothly
🗪
1:06:27 Q: how would you do smooth subpixel rendering for something like pixel art graphics, that doesn't blur but still moves smoothly
🗪
1:06:27 Q: how would you do smooth subpixel rendering for something like pixel art graphics, that doesn't blur but still moves smoothly
🗪
1:06:59Blackboard: Doing smooth subpixel rendering for pixel art graphics
1:06:59Blackboard: Doing smooth subpixel rendering for pixel art graphics
1:06:59Blackboard: Doing smooth subpixel rendering for pixel art graphics
1:12:09 couldn't you use the rounding +0.5 and truncate to not sample outside the edges of the texture?
🗪
1:12:09 couldn't you use the rounding +0.5 and truncate to not sample outside the edges of the texture?
🗪
1:12:09 couldn't you use the rounding +0.5 and truncate to not sample outside the edges of the texture?
🗪
1:13:31 why are you still adding 0.5f to tX and tY?
🗪
1:13:31 why are you still adding 0.5f to tX and tY?
🗪
1:13:31 why are you still adding 0.5f to tX and tY?
🗪
1:13:48 Is it any faster if you just test the domain of (u,v) instead of testing edges?
🗪
1:13:48 Is it any faster if you just test the domain of (u,v) instead of testing edges?
🗪
1:13:48 Is it any faster if you just test the domain of (u,v) instead of testing edges?
🗪
1:15:57 Is rendering on the cpu different in comparison to rendering on a gpu codewise?
🗪
1:15:57 Is rendering on the cpu different in comparison to rendering on a gpu codewise?
🗪
1:15:57 Is rendering on the cpu different in comparison to rendering on a gpu codewise?
🗪
1:17:19 Are there performance benefits for using a quad as primitive over triangles in a software renderer like this?
🗪
1:17:19 Are there performance benefits for using a quad as primitive over triangles in a software renderer like this?
🗪
1:17:19 Are there performance benefits for using a quad as primitive over triangles in a software renderer like this?
🗪
1:18:59 why do the edges of the tree look like they are feathered?
🗪
1:18:59 why do the edges of the tree look like they are feathered?
🗪
1:18:59 why do the edges of the tree look like they are feathered?
🗪
1:19:54 Will the different renderers be in the platform layer?
🗪
1:19:54 Will the different renderers be in the platform layer?
🗪
1:19:54 Will the different renderers be in the platform layer?
🗪
1:20:19 I saw a great video on youtube called 'Computer Color is Broken' from minutephysics that talks about how blending colours is usually incorrectly done. Without relying on 3rd party libraries, you have an opportunity to do it correctly.
🗪
1:20:19 I saw a great video on youtube called 'Computer Color is Broken' from minutephysics that talks about how blending colours is usually incorrectly done. Without relying on 3rd party libraries, you have an opportunity to do it correctly.
🗪
1:20:19 I saw a great video on youtube called 'Computer Color is Broken' from minutephysics that talks about how blending colours is usually incorrectly done. Without relying on 3rd party libraries, you have an opportunity to do it correctly.
🗪
1:22:21 Remember when you introduced RenderGroup the other week? Is this subpixel rendering lerp one of the things that will go in the RenderGroup?
🗪
1:22:21 Remember when you introduced RenderGroup the other week? Is this subpixel rendering lerp one of the things that will go in the RenderGroup?
🗪
1:22:21 Remember when you introduced RenderGroup the other week? Is this subpixel rendering lerp one of the things that will go in the RenderGroup?
🗪
1:23:16Call it for today with a recap and a glimpse into the future
🗩
1:23:16Call it for today with a recap and a glimpse into the future
🗩
1:23:16Call it for today with a recap and a glimpse into the future
🗩