VIDEO
GAMES
CLASS SYLLABUS
Instructor: Bruce Donald Campbell
Faculty, Continuing Education - RISD
Adjunct Professor, Brown, Computer Science (research)
Email: bcampbel01@risd.edu
Prerequisites: None
DESCRIPTION
This class introduces the essentials of how to begin to build interactive web games using technologies that are at the heart of the learning as you draw, animate and craft action using JavaScript. The instructor introduces you to the basics of interactivity using pre-programmed game kits which you expand at your pace. Games illustrate behaviors like mouse- and keyboard-controlled animation, frame loop-driven collision detection, and boundary events. You can expect to learn fundamental coding techniques and get an introduction to Photoshop for game art generation.
RESOURCES
CLASS LINKS
SYLLABUS
TOPIC1
welcome and getting started
Course Overview
Character Sprites
Inputs Code
Frame Loop Code
Clean Animation
Arrays and Vectors
Incorporating Rules
Automata
Artificial Intelligence
- Introduction
- Course Objectives
- Motivation
- Creating and using artwork
- Our Development Process
- Scripting versus programming versus languages
- Ideas brainstorming session
- Practice our first topic exercises
- Play some student made games
- Bring in some resource files (art, sound, video, image) for tomorrow.
TOPIC2
welcome and getting started
Inputs and Outputs for a Game
- The class project overview
- Driving keyboards, mice, and other peripheral devices
- Other code considerations:
- The art code -> injected with HTML
- Make variables for each art piece
- Provide input and output code:
- keyboard, mouse, joystick, touch
- connecting the variables to the art - Frameloop (make changes automatically)
- Interaction code
- Add code to make things pretty CSS
- Examples with discussion
- Free play time
- Practice our second topic start exercise.
- Investigate Storyboarding
- Build your resource hierarchy.
- Bring your resource files into a very basic project structure.
- Continue to dream up a project you want to work on.
TOPIC3
building game characters
- Sprites
- Personalities
- JavaScript character support
- The character state machine
- In class student character critique and assessment
- Learn about character sheet animation.
- Perform the character strip animation exercise.
- Create artwork for your character
- Map out the behaviors for character to input devices
- Practice our third topic exercises using the links above.
- Work on your game
TOPIC4
incorporating arrays
- Scaling up to larger game component
- Evaluating memory and hard drive requirements
- In class student data structure critiques and assessment
- Coordinated play time
- Review the fourth topic exercise.
- Consider adding 50 space invaders in the array.
- Consider the fourth topic exercise with 10 dragons changing direction.
- Work on your artwork and storyboard
TOPIC5
game lab time
- Spend time getting all your art work together... characters, background, level obstacles.
- Create text notes for the rules you want to add to your game.
- Play online games with other students to discuss rules you might consider for your game.
- Consider the platformer code that many students like to work from.
- Map out the state machine for your game
- Be ready to present and justify your character as a persona
TOPIC6
adding rules to your game
- The value of rules in good story telling and enjoyable game play
- Game learning objectives for serious games
- Example storyboard critiquing if you want to present your story
- Review the sixth topic exercise.
- Take a look at one player space invaders (student versions: lucy nick jonathan dinis).
- Here's a stripped down version.
- See how to make it a two-player space invaders (here's one with a player one death ray) (here's one with super invaders).
- Here's an example with two barriers (ben's version).
- Investigate the data structures of games on-line
- Work on your game
TOPIC7
animation sequences and audio
- Adding audio to generate a mood (birds laser)
- Tying animation to computer peripherals (keyboard and mouse)
- In-class animation play
- Consider the an example of sound effects: background, event, and location.
- Consider the extension of the character sheet for sequences and audio.
- Work on your state machine diagrams
- Work on your game
TOPIC8
advanced physics
- Physics as a powerful gaming specialty
- In-class student rules presentation and critique
- Warm up with the eighth topic exercise.
- See the end of class example.
- Try a student's shooter.
- Work on your game
TOPIC9
artificial intelligence
- The mathematical beauty of computer automata
- Approaches to artificial intelligence
- Consider a computer automata example
- Consider the life automata.
- Consider use in a game.
- Download the ninth topic code.
TOPIC10
project work time
- Putting our games on a Web server
- Class Project Due at End of Class
- Feel good about your new skills
- Take a look at our final game concepts