Bases Part I

?

?

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)

X, ShiftSpace Toggle category and focus previous

v Invert topics / media as per focus

# Keyboard Navigation

## Global Keys

[, < / ], > Jump to previous / next episodeW, 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

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 nextX, 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)⏫

Previous: 'Renderer Push Buffer Entry Types'

⏫

1:45Take a look at where we're at

1:45Take a look at where we're at

1:45Take a look at where we're at

2:05Make lowercase the accessors for the vectors

2:05Make lowercase the accessors for the vectors

2:05Make lowercase the accessors for the vectors

6:20Casey doesn't have enough Emacs-fu to bust that out

^{α}6:20Casey doesn't have enough Emacs-fu to bust that out

^{α}6:20Casey doesn't have enough Emacs-fu to bust that out

^{α}9:00Find out if it worked

9:00Find out if it worked

9:00Find out if it worked

9:30Resume work on RenderGroup structure, implementing Clear

9:30Resume work on RenderGroup structure, implementing Clear

9:30Resume work on RenderGroup structure, implementing Clear

10:47Make DrawRectangle take A which defaults to 1.0f

10:47Make DrawRectangle take A which defaults to 1.0f

10:47Make DrawRectangle take A which defaults to 1.0f

11:21Make the Clear call take its values from render_entry_clear

11:21Make the Clear call take its values from render_entry_clear

11:21Make the Clear call take its values from render_entry_clear

11:57Make Clear function

11:57Make Clear function

11:57Make Clear function

12:41Change R, G, B, A in render_entry_clear to Color

12:41Change R, G, B, A in render_entry_clear to Color

12:41Change R, G, B, A in render_entry_clear to Color

12:54Cleanup

12:54Cleanup

12:54Cleanup

13:07Review progress and glimpse into the future

13:07Review progress and glimpse into the future

13:07Review progress and glimpse into the future

13:39Ensure that everything's working in-game

13:39Ensure that everything's working in-game

13:39Ensure that everything's working in-game

14:00Turn off the GroundBuffers and the 'conditional expression is constant' warning

14:00Turn off the GroundBuffers and the 'conditional expression is constant' warning

14:00Turn off the GroundBuffers and the 'conditional expression is constant' warning

15:05Consider what we haven't moved over into the renderer (Outline calls) and note that FillGroundChunk calls the bitmap routines directly, rather than the renderer

15:05Consider what we haven't moved over into the renderer (Outline calls) and note that FillGroundChunk calls the bitmap routines directly, rather than the renderer

16:00Put PushRectOutline and DrawRectangleOutline into the renderer as more specific concepts

16:00Put PushRectOutline and DrawRectangleOutline into the renderer as more specific concepts

16:00Put PushRectOutline and DrawRectangleOutline into the renderer as more specific concepts

19:44Run, crash and update PushRectOutline

19:44Run, crash and update PushRectOutline

19:44Run, crash and update PushRectOutline

20:33View the results in-game and add back in the Space lines

20:33View the results in-game and add back in the Space lines

20:33View the results in-game and add back in the Space lines

21:37Make FillGroundChunk go through the renderer

21:37Make FillGroundChunk go through the renderer

21:37Make FillGroundChunk go through the renderer

22:59Introduce GroundRenderGroup

22:59Introduce GroundRenderGroup

22:59Introduce GroundRenderGroup

23:36Let FillGroundChunk use the RenderGroup

23:36Let FillGroundChunk use the RenderGroup

23:36Let FillGroundChunk use the RenderGroup

25:44Put in a Clear to verify that things are actually happening

25:44Put in a Clear to verify that things are actually happening

25:44Put in a Clear to verify that things are actually happening

26:26Change DrawBitmap to PushBitmap and make it use that renderer syntax

26:26Change DrawBitmap to PushBitmap and make it use that renderer syntax

26:26Change DrawBitmap to PushBitmap and make it use that renderer syntax

26:52Consider supporting pixel positioning

26:52Consider supporting pixel positioning

26:52Consider supporting pixel positioning

28:34View the splatting in-game

28:34View the splatting in-game

28:34View the splatting in-game

28:52Cheese the pixel positioning by replacing MetersToPixels with 1.0f

28:52Cheese the pixel positioning by replacing MetersToPixels with 1.0f

28:52Cheese the pixel positioning by replacing MetersToPixels with 1.0f

29:34Showcase the live code editing by scaling the placement of the ground elements

29:34Showcase the live code editing by scaling the placement of the ground elements

29:34Showcase the live code editing by scaling the placement of the ground elements

31:05Blackboard: Introduce the concept of coordinate systems and bases

31:05Blackboard: Introduce the concept of coordinate systems and bases

31:05Blackboard: Introduce the concept of coordinate systems and bases

32:55Blackboard: How we measure, using the dot product

32:55Blackboard: How we measure, using the dot product

32:55Blackboard: How we measure, using the dot product

34:24Blackboard: Axes tend to have two properties: 1) Unit length

34:24Blackboard: Axes tend to have two properties: 1) Unit length

34:24Blackboard: Axes tend to have two properties: 1) Unit length

36:03Blackboard: ...and 2) Orthogonal

36:03Blackboard: ...and 2) Orthogonal

36:03Blackboard: ...and 2) Orthogonal

36:33Blackboard: Linear independence

36:33Blackboard: Linear independence

36:33Blackboard: Linear independence

38:13Blackboard: Forget about linear independence

38:13Blackboard: Forget about linear independence

38:13Blackboard: Forget about linear independence

39:12Blackboard: Orthogonality

39:12Blackboard: Orthogonality

39:12Blackboard: Orthogonality

42:48Blackboard: Linear independence

42:48Blackboard: Linear independence

42:48Blackboard: Linear independence

44:40Blackboard: There's linear algebra afoot here

^{β}44:40Blackboard: There's linear algebra afoot here

^{β}44:40Blackboard: There's linear algebra afoot here

^{β}44:54Blackboard: See why these are important properties

44:54Blackboard: See why these are important properties

44:54Blackboard: See why these are important properties

45:26Blackboard: 3D coordinates

45:26Blackboard: 3D coordinates

45:26Blackboard: 3D coordinates

47:14Blackboard: Basis vectors

47:14Blackboard: Basis vectors

47:14Blackboard: Basis vectors

50:11Blackboard: Basis changes: 'MetersToPixels' and 'negate y'

50:11Blackboard: Basis changes: 'MetersToPixels' and 'negate y'

50:11Blackboard: Basis changes: 'MetersToPixels' and 'negate y'

55:30Blackboard: Pretend we had some third universal basis

55:30Blackboard: Pretend we had some third universal basis

55:30Blackboard: Pretend we had some third universal basis

57:29Blackboard: How does Casey move a point from world space into screen space?

57:29Blackboard: How does Casey move a point from world space into screen space?

57:29Blackboard: How does Casey move a point from world space into screen space?

1:01:17Blackboard: Preview what we're going to do

1:01:17Blackboard: Preview what we're going to do

1:01:17Blackboard: Preview what we're going to do

1:03:08Q&A

🗩

1:03:08Q&A

🗩

1:03:08Q&A

🗩

1:21:06Wrap it up with a brief recap and a glimpse into the future

🗩

1:21:06Wrap it up with a brief recap and a glimpse into the future

🗩

1:21:06Wrap it up with a brief recap and a glimpse into the future

🗩

⏬

Next: 'Bases Part II'

⏬