First, I assume that the AP curriculum hasn't changed in the last 2 years (that's when I took it) and the emphasis is still on data structures, classes, and modularity. If that's the case, I would say that a good project to actually practice this type of thing on would be a text based game. This avoids the complications/portability problems that arise with graphics programming (and makes it feasable to finish within a month or so). Since I had a whole year (My teacher was just learning C++ as we went along, and I already knew it, so I could do whatever I wanted), and I like math a lot, I wrote a simple raytracer when I took AP. However, I ran into a lot of the problems assosiated with a graphics project - I worked at home in Linux, and then tried to move the code to school, which was using Borland C++ 3 for win3.1 (I think that was the version - it was old). This failed miserably (and the code was pretty portable--it compiled ok in win98 with VC++). Also, it took me a long time to learn the necessary math (you need some linear algebra, and you have to be very comfortable with trig - most high school students take it, but very few are comfortable before they finish calc). So, I would recommend a text based RPG. It is by its nature very modular, which makes it easy for them to learn interface/module design and implementation. It also makes it easy to do the project in groups (one person does engines, one does characters/objects, one does maps/navigation, etc... ) and it gives them a chance to use the standard classes (apvector,apmatrix,apstring, etc...).
-Victor Shnayder edu.princeton@shnayder (you can figure it out:)
First, I assume that the AP curriculum hasn't changed in the last 2 years (that's when I took it) and the emphasis is still on data structures, classes, and modularity.
:)
If that's the case, I would say that a good project to actually practice this type of thing on would be a text based game. This avoids the complications/portability problems that arise with graphics programming (and makes it feasable to finish within a month or so).
Since I had a whole year (My teacher was just learning C++ as we went along, and I already knew it, so I could do whatever I wanted), and I like math a lot, I wrote a simple raytracer when I took AP. However, I ran into a lot of the problems assosiated with a graphics project - I worked at home in Linux, and then tried to move the code to school, which was using Borland C++ 3 for win3.1 (I think that was the version - it was old). This failed miserably (and the code was pretty portable--it compiled ok in win98 with VC++). Also, it took me a long time to learn the necessary math (you need some linear algebra, and you have to be very comfortable with trig - most high school students take it, but very few are comfortable before they finish calc).
So, I would recommend a text based RPG. It is by its nature very modular, which makes it easy for them to learn interface/module design and implementation. It also makes it easy to do the project in groups (one person does engines, one does characters/objects, one does maps/navigation, etc... ) and it gives them a chance to use the standard classes (apvector,apmatrix,apstring, etc...).
-Victor Shnayder
edu.princeton@shnayder
(you can figure it out