Difference between revisions of "Beginner C++ Game Programming Tutorial 4"

From Chilipedia
Jump to: navigation, search
(Homework)
Line 27: Line 27:
 
# Make it so that the acceleration of the reticle is more controllable. How this is accomplished is left up to you. Full marks for using only concepts introduced so far ;)
 
# Make it so that the acceleration of the reticle is more controllable. How this is accomplished is left up to you. Full marks for using only concepts introduced so far ;)
  
The solutions will be given in a future video whose link will be posted here.
+
The solutions are given in [https://youtu.be/4vc8riKxPUg this video].
  
 
== See also ==
 
== See also ==
 
* [[Beginner C++ Game Programming Tutorial 5|Next in series (Tutorial 5)]]
 
* [[Beginner C++ Game Programming Tutorial 5|Next in series (Tutorial 5)]]
 
* [[Beginner C++ Game Programming Series]]
 
* [[Beginner C++ Game Programming Series]]

Revision as of 20:30, 18 August 2016

In this tutorial we explore the idea of animation in computer graphics and we make the reticle move freely around the screen. Along the way we learn how to add member variables to objects/classes, we learn about .h (header) and .cpp files, we learn about the short harsh lives of variables (scope), and I make a joke in very bad taste. All par for the course!

Concepts Taught

  • Animation and double buffering
  • Difference between .h and .cpp files
  • Difference between a class and an object
  • Adding member variables to a class
  • Variable scope

Video Timestamp Index

  • Intro 0:00
  • Keyboard Ghosting 0:29
  • Animation and double buffering 1:15
  • Animation sequence in the Framework 4:54
  • Variable scope (lifetime) 7:28
  • Difference between object and class 9:15
  • Difference between .h and .cpp source files 10:25
  • Adding member variable to a class 11:15
  • Variable scope name hiding 11:42
  • Member access for members of same class 13:12
  • Homework 13:54

Homework

This lesson has three homework problems. Feel free to attempt any or all of them.

  1. Separate the game logic code from the drawing code. The game logic code should go in the Game::UpdateModel() member function, and the drawing code should remain in Game::ComposeFrame().
  2. Change the behavior of the reticle so that it moves at a velocity that is controlled with the arrow keys. This means that the arrow keys don't control direction of movement, but that they control the acceleration.
  3. Make it so that the acceleration of the reticle is more controllable. How this is accomplished is left up to you. Full marks for using only concepts introduced so far ;)

The solutions are given in this video.

See also