Difference between revisions of "Intermediate C++ Game Programming Tutorial 12"

From Chilipedia
Jump to: navigation, search
(Video Timestamp Index)
(Video Timestamp Index)
Line 18: Line 18:
 
* Using an <code>enum class</code>, namecode the different animation sequences [https://youtu.be/KXn7-5zg3J4?t=11m49s 11:49]
 
* Using an <code>enum class</code>, namecode the different animation sequences [https://youtu.be/KXn7-5zg3J4?t=11m49s 11:49]
 
* Implementing the <code>Character</code> class [https://youtu.be/KXn7-5zg3J4?t=13m08s 13:08]
 
* Implementing the <code>Character</code> class [https://youtu.be/KXn7-5zg3J4?t=13m08s 13:08]
* Add an operator in the <code>Vec2</code> class that transforms a float position pair into an int position pair [https://youtu.be/KXn7-5zg3J4?t=17m20s 17:20]
+
* Add an operator in the <code>Vec2</code> class that applies explicit conversion (cast) of a float position pair into an int position pair [https://youtu.be/KXn7-5zg3J4?t=17m20s 17:20]
  
 
== Source Code ==
 
== Source Code ==

Revision as of 03:42, 9 September 2019

In this tutorial Chili shows us an example of how to create a class for an animated sprite, and how to use a collection of these animated sprites to create a walking character class.

Topics Covered

  • Animated sprite class design
  • Walking character class design

Notes

The technique we use of storing a reference to Surface in each Animation object will work for now, but it will cause us a pain in the dick in the future when we start using our characters in containers like std::vector. The reason for this is because you cannot assign a reference to refer something else after it has been bound, and so the compiler cannot generate copy assign for us by default. We will fix this problem when it becomes an issue for us (in the Action RPG Project).

Video Timestamp Index

Tutorial 12

  • Introducing the Character and Animation classes 0:20
  • Creating header file for the Animation class 0:49
  • Implementing the Animation class 3:30, constructor implementation at 5:15
  • Copy the FrameTimer class used in earlier tutorials 7:35
  • Give it a test run: have an animated sprite follow the cursor 8:00
  • Creating header file for the Character class 11:05
  • Using an enum class, namecode the different animation sequences 11:49
  • Implementing the Character class 13:08
  • Add an operator in the Vec2 class that applies explicit conversion (cast) of a float position pair into an int position pair 17:20

Source Code

Sprite Repo

Download Materials

Homework

None!

See also