Difference between revisions of "Beginner C++ Game Programming Tutorial 9"
From Chilipedia
(→Video Timestamp Index) |
(→Video Timestamp Index) |
||
Line 13: | Line 13: | ||
* Classes: OOP to the rescue [https://www.youtube.com/watch?v=Wwgyw69MiEU&t=1m38s 2:25] | * Classes: OOP to the rescue [https://www.youtube.com/watch?v=Wwgyw69MiEU&t=1m38s 2:25] | ||
* Creating our own class [https://www.youtube.com/watch?v=Wwgyw69MiEU&t=3m21s 3:21] | * Creating our own class [https://www.youtube.com/watch?v=Wwgyw69MiEU&t=3m21s 3:21] | ||
− | * Header guard: #pragma once [https://www.youtube.com/watch?v=Wwgyw69MiEU&t=3m40s 3:40] | + | * Header guard: <code>#pragma once</code> [https://www.youtube.com/watch?v=Wwgyw69MiEU&t=3m40s 3:40] |
* Letting other files know about our class: including headers [https://www.youtube.com/watch?v=Wwgyw69MiEU&t=5m52s 5:52] | * Letting other files know about our class: including headers [https://www.youtube.com/watch?v=Wwgyw69MiEU&t=5m52s 5:52] | ||
* Refactoring game code related to poo [https://www.youtube.com/watch?v=Wwgyw69MiEU&t=6m56s 6:56] | * Refactoring game code related to poo [https://www.youtube.com/watch?v=Wwgyw69MiEU&t=6m56s 6:56] | ||
Line 20: | Line 20: | ||
* Advantages of the new poo object oriented code [https://www.youtube.com/watch?v=Wwgyw69MiEU&t=12m7s 12:07] | * Advantages of the new poo object oriented code [https://www.youtube.com/watch?v=Wwgyw69MiEU&t=12m7s 12:07] | ||
* Initializing poos' velocities [https://www.youtube.com/watch?v=Wwgyw69MiEU&t=14m12s 14:12] | * Initializing poos' velocities [https://www.youtube.com/watch?v=Wwgyw69MiEU&t=14m12s 14:12] | ||
− | * Factoring out common attributes from class objects: static and constexpr [https://www.youtube.com/watch?v=Wwgyw69MiEU&t=14m41s 14:41] | + | * Factoring out common attributes from class objects: <code>static</code> and <code>constexpr</code> [https://www.youtube.com/watch?v=Wwgyw69MiEU&t=14m41s 14:41] |
− | * Difference between constexpr and const [https://www.youtube.com/watch?v=Wwgyw69MiEU&t=16m8s 16:08] | + | * Difference between <code>constexpr</code> and <code>const</code> [https://www.youtube.com/watch?v=Wwgyw69MiEU&t=16m8s 16:08] |
* Accessing static class members [https://www.youtube.com/watch?v=Wwgyw69MiEU&t=16m40s 16:40] | * Accessing static class members [https://www.youtube.com/watch?v=Wwgyw69MiEU&t=16m40s 16:40] | ||
− | * Class member access restrictions: public vs private [https://www.youtube.com/watch?v=Wwgyw69MiEU&t=17m20s 17:20] | + | * Class member access restrictions: <code>public</code> vs <code>private</code> [https://www.youtube.com/watch?v=Wwgyw69MiEU&t=17m20s 17:20] |
* Summing up what we have learned and a couple of tips [https://www.youtube.com/watch?v=Wwgyw69MiEU&t=19m12s 19:12] | * Summing up what we have learned and a couple of tips [https://www.youtube.com/watch?v=Wwgyw69MiEU&t=19m12s 19:12] | ||
* Homework [https://www.youtube.com/watch?v=Wwgyw69MiEU&t=20m3s 20:03] | * Homework [https://www.youtube.com/watch?v=Wwgyw69MiEU&t=20m3s 20:03] |
Revision as of 09:24, 27 September 2019
In this video we make our first class and Chili teaches us about the birds and the bees and the static constexpr.
Concepts Taught
- Creating a
class
-
public
vs.private
access -
static
member variables -
constexpr
variables
Video Timestamp Index
- Intro 0:00
- ClampScreen code recap 0:18
- The issue of the current Game data organization: 1:38
- Classes: OOP to the rescue 2:25
- Creating our own class 3:21
- Header guard:
#pragma once
3:40 - Letting other files know about our class: including headers 5:52
- Refactoring game code related to poo 6:56
- A little trick: Advanced find + replace with regex enabled 7:08
- Adding an implementation file (.cpp) for Poo class 9:05
- Advantages of the new poo object oriented code 12:07
- Initializing poos' velocities 14:12
- Factoring out common attributes from class objects:
static
andconstexpr
14:41 - Difference between
constexpr
andconst
16:08 - Accessing static class members 16:40
- Class member access restrictions:
public
vsprivate
17:20 - Summing up what we have learned and a couple of tips 19:12
- Homework 20:03
Homework
Make the Dude entity into a class
as well. It's up to you to decide what member functions you should give it. Might want to add another function to Poo
as well (hint hint hint!).
The solution is given in this video.