Timetable

This is a tentative timetable. It will be updated frequently. Check often!
Last updated: December 04, 2008

  Date Topics Class Materials Reminders
R 08-28 overview ppt PPT fill out pandemic plan contact info form
  Lab 01 install Flash CS3 (Flash 9), Flash workspace, drawing tools

ppt PPT

Reading: Digital Media Primer, Section 8.5

fla sample completed files: x-ray, hairstyle

 
T 09-02 vector graphics vs. bitmap images

symbol in Flash, master copy vs. instance, naming movieclip instances

basic animation concepts: keyframes, frame-by-frame, tweening

ppt PPTs:
1. vector graphics vs. bitmap images
2. symbols in Flash
3 . animation basics
4. About this week's short quiz

Reading Assignments:
Digital Media Primer:
- vector graphics vs. bitmapped images: Sections 2.3 and 2.4
- symbols: Sections 8.5 and 8.6.2
- animation basics: Sections 8.3 -8.4

 
R 09-04 basic animation concepts (continued)

animation: frame rate, mask, motion guide (part of the lecture will be combined with the lab)

ppt PPT: mask, frame rate, motion guide 10-min quiz #1 on materials covered in lecture on Sept. 02 (vector graphics vs. bitmapped images, and Flash symbols)
  Lab 02 Animation Basics: onion skin, insert/remove frames/keyframes, frame-by-frame animation, shape tween, motion tween, mask Lab02 instructions and example completed animation

fla example completed files:
1. flying bird (a little more complicated than the other two)
2. spinning coin (the easiest among the three; do this first)
3. x-ray mask

 
T 09-09 overview of programming concepts and constructs (part 1) ppt PPTs:
programming fundamentals (part 1)

Reading: Digital Media Primer Chapter 9

 

Homework #1: Syntax Review and Code Writing Exercises
-------------
- handout (you got this in class):
variables, assignment statements, operators, expressions, functions (due next class)

Homework #2:
identify programming constructs
-------------
- handout (you got this in class)
- fla Flash file of the game corresponding to the code in the homework

 
R 09-11 overview of programming concepts and constructs (part 2)

variables vs. string literals

event handlers (part 1)

where do scripts go

ppt PPTs:
1. variables vs. string literals
2. programming fundamentals (part 2)

pdf Reading: Digital Media Primer: Chapter 9 and Chapter 11 (Sections 11.1 to 11.6)

Homeworks #1 and #2 due in class

15-min quiz #2 on materials covered in lectures: Sept. 09, similiar to HW#2 (the 2-page homeword)

  Lab 03 use of trace( ), learn to read syntax error report, locate and fix syntax errors, identify pairing curly braces and parentheses, variables vs. string literals ppt Lab manual (handout given in class)

fla Flash file example used in the lab

ppt PPT

 
T 09-16 event handlers (parts 1 & 2)

controlling movieclip instances' properties

ppt PPTs:
1. events and event handlers (part 1)
2. event handling (part 2)
3. controlling movieclip instances
4. movieclip instance naming convention for this class

R 09-18 collision detection (built-in hitTestObject( ) and hitTestPoint( ) methods)

generate random numbers

work with text in Flash

(the lecture will be combined with the lab)

ppt PPTs:
1. collision detection
2. movieclip instance naming
3. Math.random( )
4. working with text in Flash

Homework #3: Syntax Review and Coding Writing Exercises
-------------
parameters, if-statements, mouse and keyboard event listeners (due next class)

Homework #4: Syntax Review and Coding Writing Exercise
-------------
frame event listeners, movieclip instances' properties
(due next class)

To re-do Homework #1: download the pdf


10-min quiz (No quiz this week)
  Lab 04 File #1: Program a Pong game: custom-define function, calling a function, mouse event handler method, frame event handler method, if/else, logical operator, hitTestObject( ), dynamic text

File #1: Pong game:
- how the completed and in-progress files work

- extra credits
- Due: Friday 9:00pm

 
T 09-23 control the playhead (gotoAndPlay( ), gotoAndStop( ))

Lab 04 File #2: Interactive hairstyle customization: controlling the playhead using gotoAndStop( ) and stop( )

ppt PPT: controlling playhead

Reading: Digital Media Primer Chapter 11, Section 11.7.3

File #2: hairstyle customization:
- instructions & see how the completed file works
- fla Flash file: see how the movieclips are set up
- Due: Thu before class

Pre-lab: start a side-scrolling platform game:
- just the movieclips and set them up on stage (no coding)
- see how the "?" box and stage are set up (Flash file)
- Due: Thu before class (upload to Blackboard)

turn in Homework#3 and #4 in class

upload the lab04b files (hairstyle) by Thu before class

R 09-25 modeling gravity

the lecture will be combined with the lab

ppt PPT: modeling gravity

About Test #1:
- on Oct. 7
- about 1 hour
- cover materials from Sept. 09 to Sept. 30

pdf Test #1 expectations and practice questions

10-min quiz No quiz this week; replaced by a pre-lab
  Lab 05a Part 1. Program a continuous scrolling platform game: keyboard event handling, mouse event handling, if/else, modeling gravity, collision detection

instructions handout given in class

see how the completed Part 1 file works

 
T 09-30 arrays

loops (part 1): while-loop and for-loop

PPTs:
- ppt arrays
- ppt while loop and for loop

Reading: Digital Media Primer Chapter 11, Sections 11.10.2-11.10.3

Oct. 1: Last day to drop classes
R 10-02 loops (part 2): nested loops PPT: ppt loops (part 2) 10-min quiz No quiz this week
  Lab 05b Part 2. Program a continuous scrolling platform game: prevent the character from going up from mid-air on mouse up, continuous scrolling, and making the items reappear instructions (handout given in class)

see how the completed file work

explanation of the code for recycling the coin

explanation of the code for continuous scrolling

 
T 10-07 TEST #1

About Test #1:
- about 1 hour
- cover materials of Sept. 09 - Sept. 30

Expectations and practice questions: see the pdf posted on Sept. 25

 
R 10-09 in-class practice exercises of for-loop

(the lecture will be combined with the lab)

 

10-min quiz No quiz this week

  Lab 06a Part 1: Program a tic-tac-toe game: use of 2-dimensional array, custom-define functions, parameter passing, return a value, nested for-loop, problem-solving tic-tac-toe game (Part 1):
-ppt instructions
- see how the completed Part 1 file works

 

T 10-14 swap the values of two variables

sorting algorithms: selection sort, bubble sort, insertion sort

more on programming concepts and constructs: switch statement

more on programming concepts and constructs: scope of variables (global, local, and timeline)

ppt PPTs:
1. swap
2. selection sort
3. bubble sort
4. insertion sort
5. switch statement
6. scope of variables

Flash files: selection sort, bubble sort, insertion sort
To practice for Thu quiz: run the code with different arrays and verify your prediction of the progress of the sorting process

Practice exercises for scope of variables (don't need to turn in)

 
R 10-16 in-class practice exercise for nested loops, functions with parameters, functions that return a value   20-min quiz #3 on the 3 sorting algorithms, switch statements, and scope of variables
  Lab 06b Part 2: Program a tic-tac-toe game: use of 2-dimensional array, custom-define functions, parameter passing, return a value, nested for-loop, problem-solving

tic-tac-toe game (Part 2):
-ppt instructions
- see how the completed file and extra credit files work

 
T 10-21 intro to OOP, objects, classes (Parts 1 & 2) Homework #7:
Syntax Review and Code Writing Exercises
-------------
OOP & giving an object a visual representation

pdf Supplementary reading for OOP conceps

ppt PPTs:
- Intro to OOP Part 1
- OOP Part 2

To download any code examples, right-click on the link and choose Save Link As...
Save the class file and the Flash file (that uses the class) in the same folder.

fla OOP code example:
- class file Laser.as
- Flash file showing how to instantiate Laser class to create an object and call the class methods

fla OOP code example:
- class file Car.as
- Flash file showing how to instantiate Car class to create an object and call the class methods

 

 
R 10-23

use addChild( ) to give an instantiated object a visual representation

static attribute for class properties and methods

pdf Reading on Linkage and addChild() if you feel you need some reading about them: Digital Media Primer, Chapter 11, Section 11.10.5

ppt PPTs:
- Give an instantiated object a visual representation
- static attribute

Homework #5:(finishing up in class)
Syntax Review and Code Writing Exercises
-------------
OOP & giving an object a visual representation

 

Example: static property
-------------------
- fla class file: Laser.as
- fla Flash file: do a Test Movie, click on each of the lasers on stage and see how the remainingPower changes

20-min quiz #4 on OOP basics
  Lab 07 OOP Pong OOP Pong
- how the completed file works
- PPT
 
T 10-28 pre-lab for lab 09

inheritance

create multiple instantiated objects with a visual representation using array and for-loop

 

ppt PPT: inheritance

code examples:
===============
Example #1:
superclass: Mammal
subclasses: Dog, Whale
--------------------
- fla class files Mammal.as, Dog.as, and Whale.as
- fla Flash file showing how to instantiate Dog and Whale classes to create objects, and call the class methods defined in the corresponding subclasses and the superclass

Example #2:
superclass: Laser
subclass: RechargeableLaser
-------------------
- fla class files Laser.as and RechargeableLaser.as
- fla Flash file showing how to instantiate RechargeableLaser class to create an object and call the class methods defined in Laser and RechargeableLaser classes

 

ppt PPT: create multiple instantiated objects with a visual representation using array and for-loop

Homework #8:
Syntax Review and Code Writing Exercises
-------------
inheritance & creating multiple object and giving them a visual representation using array and for-loop

Homework #7 (OOP basics) due
R 10-30 event listener code that allow simultaneous multiple key presses

3d linear perspective basics for Lab08

ppt PPTs:
- simultaneous multiple key presses
- basic ideas and math for depicting linear perspective
quiz #5: 20-min quiz on inheritance and multiple objects with visual rep. using array and for-loop

Homework #8 (inheritance and multiple objects) due

  Lab 08 Program a 3d drive-through fly-through: keyboard event, frame event, simultaneous multiple key presses, if-statements, basic math for 3d linear perspective, generate 100 trees and invoke methods for 100 trees using for loop and array, static properties, addChild( ), modeling gravity and friction instruction (handout given in class)

see how the completed file and extra credit files work

 
T 11-04 lab08 followup

 

About the final project

encapsulation

access specifiers: public, private, protected, internal

polymorphism

PPTs--lab08 followup:
1. ppt focal length
2. ppt wrapping
3. ppt trees go behind viewer

interactive demo: human visual perception: psychological depth cues

About the final project (see Final Project Description)

HW: write up a brief description of your final project idea, and upload to Blackboard 12 hours before we meet

ppt PPT: encapsulation and access specifiers

sign up a time for an individual meeting about your project (to discuss your project ideas and plan for programming it)
You can also go to the above Web page any time to check the time you have signed up.
R 11-06 polymorphism (continued)

problem-solving examples:

  • toggle
  • tiling
  • shuffle a deck of cards: use of array and splice
  • generate random timing
ppt PPTs:
- polymorphism
- problem-solving examples:
1. toggle
2. tiling
3. shuffle a deck of card: use array and splice
4. generate random timing

10-min quiz No quiz this week

due:
1. a brief description of your final project idea (due 12 hours before our meeting time)
2. sign up an individual meeting time

  Lab 09 Write 4 short programs:

Program #1: toggle

Program #2: shuffle a list of items, such as a deck of cards

Program #3: tiling objects on a grid

Program #4: randomize timing using Timer object to program a tortoise and hare race

See how the completed files work

sample code for the tortoise timer

 
T 11-11 naming conventions, commenting, coding style

controlling sound playback using Actionscript

startDrag( ) and stopDrag( )

controlling masks using Actionscript

snapping to a grid

pdf About Test #2: expectations and practice questions

Project eval sheet (handout given in class)

ppt PPTs:
1. naming conventions, commenting, coding style
2. controlling audio playback
3. drag
4. draggable mask
5. snapping

 
R 11-13     10-min quiz No quiz this week
  Lab 10 Start working on your project, based on what we have discussed in the individual meeting. Everyone must create at least one class (must be related to your project), instantiate one or more objects from the class, give the instantiated object visual representation, write class method(s) and invoke the method(s) to make the object move or change on stage.    
T 11-18 TEST #2 About Test #2:
- pdf expectations and practice questions
- about 1 hour
- cover materials of Oct. 02 - Nov. 06
TEST #2
R 11-20 debugger ppt PPT: debugger 10-min quiz No quiz this week
  Lab 11 Program #1: sound
Program #2: draggable mask
Program #3: snapping to a grid
See how the completed files work  
T 11-25 binary notation, binary-decimal conversion, hexadecimal-decimal conversion, representation of information on computers ppt PPTs:
1. binary notation
2. hexadecimal notation
3. color representation
DUE: version 1 of your project due at 9:00pm
R 11-27 No class. Thanksgiving holidays    
T 12-02 binary notation of fractions

searching algorithms: linear search, binary search

setting color using ActionScript

ppt PPTs:
1. fractions in binary notations
2. linear search and binary search
3. setting color using ActionScript
 
R 12-04 filters

currentFrame and totalFrames

Identify programming constructs in other programming languages

ppt PPT: filters

Java Example: Pong

C++ Example: Battleship

10-min quiz No quiz this week
  Lab 12 Program #1: Adjust color using ActionScript: hairstyle again, but dye the hair this time!

Program #2: Glow filter

Program #3: Blur filter

How the completed files work DUE: final version of your project due on Dec. 05 (Fri) at 9:00pm
T 12-09 Final Exam (2:00pm, Manchester 241) About final exam