Timetable

This is a tentative timetable. It will be updated frequently. Check often!
Last updated: April 26, 2010

  Date Topics Class Materials Reminders
Week 1
Wed 01-13 overview

Flash workspace, drawing tools

install Flash CS4 (Flash 10)

ppt PPT: course overview

Flash workspace and drawing tools:
----------
- ppt PPT
- Reading: Digital Media Primer, Section 8.5

Flash installation instruction

fill out pandemic plan contact info form
Fri 01-15 review drawing tools, introduce transform tool and layers

lab

first-week-of-class questionaires bring Thinkpad to class and have Flash CS4 (either trial version or the licensed version) installed before class
  Lab 01 Flash workspace and drawing tools ppt PPT: lab01 instructions (due Wed at 2:00pm)

Tips and techniques to get started in drawing

fla sample completed files for Lab 1: x-ray, hairstyle

 
Week 2
Mon 01-18 MLK Day -- No class    
Wed 01-20 symbol in Flash, master copy vs. instance, naming movieclip instances

animation: keyframes, frame-by-frame, tweening

Symbols in Flash:
---------------
- chalkboard lecture (no PPT)
- Reading: Digital Media Primer: Sections 8.5 and 8.6.2

Animation Basics:
---------------
- chalkboard lecture (no PPT)
- Reading: Digital Media Primer: Sections 8.3 -8.4

lab01 (2-page handout of lab questions and two files) is due at 2:00pm today
Fri 01-22 lab    
  Lab 02a Animation Basics: insert/remove frames/keyframes, frame-by-frame animation, shape tween, motion tween Lab02a instructions and example completed animation (due Mon at 2:00pm)

fla example completed file for Lab 2a: spinning coin

bring Thinkpad to class
Week 3
Mon 01-25 overview of programming concepts and constructs (part 1) Programming fundamentals (part 1):
---------------
- PPT of some basic common terms
- programming constructs: chalkboard lecture (no PPT)
- Reading: Digital Media Primer Chapter 9

 

Homework #1: Syntax Review and Code Writing Exercises
-------------
- handout given in class:
- due next Monday

Homework #2:
Identify Programming Constructs, trace() Statement, Read Error Reports
-------------
- handout given in class
- due next Monday
- fla Flash file of the game corresponding to the code in the homework

lab02a (spinning coin file) is due at 2:00pm today
  Lab 02b mask Lab02b instructions and example completed animation

ppt PPT: Mask

fla example completed files for Lab 2b:
1. flying bird (parts 1 and 2)
2. animated x-ray mask

 
Wed 01-27 variables vs. string literals

overview of programming concepts and constructs (part 2): functions, parameters, return a value

 

Variables vs. string literals:
---------------
- ppt PPT

 

Programming fundamentals (part 2):
---------------
- chalkboard lecture (no PPT)
- Reading: Digital Media Primer Chapter 9

 

Optional Extra Credit: Mini-Project 1: Longer Animation Sequence
---------------
- see description and examples
- up to 2% of the final grade
- due: Feb. 8 (Monday) at 2:00

lab02b (bird flying and x-ray mask files) is due at 2:00pm today

No quiz this week

Fri 01-29 overview of programming concepts and constructs (part 2b) cont'd: functions vs. procedures, parameters vs. arguments, if statements, if/else, if/else if

where do scripts go and script errors

trace() statements

Where do scripts go, script errors, and trace() statements:
---------------
- chalkboard lecture (no PPT)
- Reading: Digita Media Primer Section 10.3

 

Programming fundamentals (part 2b):
---------------
- ppt PPT: if statements
- Reading: Digital Media Primer Chapter 9

 
Week 4
Mon 02-01 comments

movieclip symbols vs. instances

controlling movieclip instances' properties

event handlers (Part 1: mouse event and frame event)

Movieclip symbols vs. instances, and controlling movieclip instances' properties:
---------------
- ppt PPT
- Reading: Digital Media Primer Sections 10.1, 11.7.1-11.7.2 and Table 11.3

 

Event handling (Part 1):
---------------
- Terms: ppt PPT
- Syntax and examples: chalkboard lecture (no PPT)
- Reading: Digita Media Primer Sections 11.1-11.4, and 11.6

Homeworks #1 and #2 due in class
  Lab 03 Program a Pong game: frame event and mouse event listener code, custom-define function, calling a function, mouse event handler method, frame event handler method, if/else, logical operator, hitTestObject( ), dynamic text Pong game:
- how the completed and in-progress files work (due 2:00 Mon next week; now extended to 2:00 Wed due to cancellation of classes on Fri)
- extra credits (due 2:00 Wed next week)
 
Wed 02-03 collision detection (Part 1: built-in hitTestObject( ))

generate random numbers

work with text in Flash

how to make the Pong ball go at an angle and bounce at top and bottom edges

Collision detection (Part 1):
---------------
- chalkboard lecture (no PPT)
- Reading: Digital Media Primer: Section 11.9

 

Generate random numbers:
---------------
- chalkboard lecture (no PPT)
- Reading: Digital Media Primer: Section 11.10.1

 

Work with text in Flash:
---------------
- chalkboard lecture (no PPT)

 

Make the Pong ball go at an angle and bounce at top and bottom edges
---------------
- ppt PPT

 

Homework #3: Syntax Review and Code Writing Exercises on Events
-------------
- handout given in class:
- due next Feb. 12 (Fri)

Homeworks #1 and #2 due in class
Fri 02-05 lab03 cont'd: finishing up Pong game

(Classes cancelled due to weather)

Finishing up the Pong game (see links on Monday): add randomness (random increy and random ball's y at reset at right edge), make the ball go at an angle, bounce at the top and bottom edges, keep scores bring your Thinkpad to class
Week 5
Mon 02-08 review of mouse and frame event handling

event handlers (part 2: keyboard event)

controlling the playhead using play( ), stop( ), gotoAndStop( ) and gotoAndPlay( )

use of function to reduce code duplication in the Pong game lab

keyboard event handling:
---------------
- chalkboard lecture; no PPT
- Reading: Digital Media Primer: Chapter 11 Sections 11.5

controlling playhead:
---------------
- chalkboard lecture; no PPT
- Reading: Digital Media Primer: Chapter 11 (Sections 11.7.3)

Due: Lab03 Pong game (extended to 2:00 Wed because Fri classes were cancelled due to weather)
  Lab 04 Interactive hairstyle customization: controlling the playhead using gotoAndStop( ) and stop( ) hairstyle customization:
- instructions & see how the completed file works
- fla Flash file: see how the movieclips are set up
 
Wed 02-10 hitTestPoint( ) hitTestPoint( ):
-------------
- chalkboard lecture (no PPT)
- ppt review questions PPT
- Reading: Digital Media Primer: Chapter 11 (Sections 11.9)

 

Optional Extra Credit: Mini-project #2: Fun with Events:
------------
- see description
- up to 3% towards final grade
- due: Feb. 24 (Wed)

Due at 2:00: (i) Lab03 Pong game and the Extra Credits; (ii) Lab04 hairstyle lab

Quiz #1 (20 min.) on programming fundamentals (parts 1 & 2) and events; Questions similar to homeworks #1 to #3

Fri 02-12 modeling gravity modeling gravity:
-------------
- ppt PPT

 

Homework #4: Syntax Review and Code Writing Exercises
-------------
- handout (you got this in class):
modeling gravity, arrays, and loops (due next Wed)

Pre-lab 5: start a side-scrolling platform game:
- instructions (handout given in class)
- fla Flash file: download the Flash file to see how the "?" box and stage are set up
- see how the completed pre-lab file should play
- see students' completed lab5 from the previous semesters: Spring'07, Fall'07, Spring'08, Fall'09

HW #3 due in class
Week 6
Mon 02-15 arrays

loops (while-loop and for-loop)

review: modeling gravity, registration point, hit test

arrays:
-------------
- ppt PPT

 

loops:
-------------
- ppt PPT

 
  Lab 05a Part 1. Program a continuous scrolling platform game: keyboard event handling, mouse event handling, if/else, modeling gravity, collision detection, make continuous scrolling see how the completed file works

explanation of the code for continuous scrolling

Due at 2:00: Pre-lab 5

Due at 6:00: Lab05a (today's lab)

Wed 02-17 review: generate random numbers, stage coordinates

Part 2. Prevent the hero from jumping up at mid-air, collision detection between the hero and the items (coin and box), and make the coin and box reappear

Lab05 function: organize code using functions; code formatting
explanation of the code for recycling the coin HW #4 due in class
Fri 02-19     Due at 4:00pm: completed Lab05
Week 7
Mon 02-22 TEST #1 (Expectations and Practice Questions)    
    No lab    
Wed 02-24 scope of variables (global, local, and timeline)

loops (part 2): nested loops

scope of variables:
---------------
- ppt PPT
- practice exercise for scope of variables (self-test; don't need to turn in) PPT

 

nested loops:
---------------
- ppt PPT

Due: optional extra credit mini-project #2
Fri 02-26 intro to OOP Pre-lab 6: start a tic-tac-toe game:
- due: 2:00 Monday
- instructions PPT
- fla Flash file: download the Flash file to see how the cell and stage are set up
- see how the completed pre-lab file should play

OOP:
---------------
- ppt PPT
- supplementary reading on OOP concepts

 
Week 8
Mon 03-01 review of Lab03 Pong, 04 hairstyles, and 05 platform game   Due at 2:00: Pre-lab 6
  Lab 06 Tic-Tac-Toe see how the completed Lab06 and extra credit work

lab handout (given out in class; as lab instruction, this is more useful than the PPT)

ppt PPT (provides explanation of the code in the handout; the handout is more useful as lab instructions)

Lab06 due at 4:00 Fri
Wed 03-03 intro to OOP (cont'd)

Assigning a visual representation to objects

assigning a visual representation to objects:
--------------
- ppt PPT
 
Fri 03-05 Lab06 cont'd   Lab06 due at 4:00 today
Spring Break Week
Mon 03-08 Spring Break -- No class    
Wed 03-10 Spring Break -- No class    
Fri 03-12 Spring Break -- No class    
Week 9
Mon 03-15 Assigning a visual representation to objects (cont'd)

static

static:
--------------
- ppt PPT
 
  Lab 07 OOP Pong - lab instruction given in class
- this lab is due 2:00 Wed
- see how the completed file plays
 
Wed 03-17 inheritance

in-class code-writing exercises on OOP basics and inheritance

inheritance:
---------------
- ppt PPT

 

Homework #5: Syntax Review and Code Writing Exercises for OOP
-------------
- handout (you get this in class):
- due Fri

Lab07 due at 2:00 today
Fri 03-19 super

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

super:
---------------
- ppt PPT

 

multiple objects using array and for-loop:
---------------
- ppt PPT

 

Pre-lab 8: start a 3d fly-through game:
- instructions and handout given in class
- due 2:00 Monday

HW#5 due in class today

25-min Quiz #2 on OOP basics, inheritance and visual rep. of instantiated objects; very similar to HW#5

Week 10
Mon 03-22 linear perspective

simultaneous key presses

linear perspective:
---------------
- no PPT

 

simultaneous keypresses:
---------------
- chalkboard lecture (no PPT)

Pre-lab08 is due today at 2:00.
  Lab 08 3d fly-through - lab instruction given in class
- this lab is due 9:30 tonight
- the extra credits are due 11:55pm tomorrow night (Tue)
- see how the completed file and extra credits play
Lab08 is due tonight at 9:30
Wed 03-24 about term project

follow-up of Lab08 (focal length, wrapping, tree behind viewer, sortZ( ), gravity, friction, what the Tree constructor does)

  Sign up a project meeting time to discuss your project idea
Fri 03-26 continue: follow-up of Lab08 (focal length, wrapping, tree behind viewer, sortZ(), gravity, friction, what the Tree constructor does)

late work policy

late work policy

PPTs:
- lab08 followup
- lab08: the effect of focal length
- lab08: wrapping
- lab08: What happens what the trees go behind the viewer?

 
Week 11
Mon 03-29 access specifiers: public, private, protected, internal

toggle

shuffle

startDrag( ) and stopDrag( )

controlling masks using ActionScript

PPTs:
- access specifiers
- toggle
- shuffle
- simple dragging
- setting mask using script
There are individual meetings to discuss your project ideas. Check your signup time; don't miss the meeting or points will be deducted from your project grade.
  Lab 09 Program #1: toggle

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

Program #3: drag a mask

See how the completed files work Lab09 is due today at 4:30pm
Wed 03-31 polymorphism

add mouse event listener code in .as file

PPTs:
- polymorphism
- add mouse event listener code in .as file
There are individual meetings to discuss your project ideas. Check your signup time; don't miss the meeting or points will be deducted from your project grade.
Fri 04-02 Good Friday -- No class    
Week 12
Mon 04-05 switch statement

good coding practices

PPTs:
- switch statement
- coding practices
- about projects
There are individual meetings to discuss your project ideas. Check your signup time; don't miss the meeting or points will be deducted from your project grade.
  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 a visual representation, write class method(s) and invoke the method(s) to make the object move or change on stage.

 

Lab10 is due today at 4:30pm
Wed 04-07 swapping two variables

controlling sound playback using Actionscript

tiling

swap two variables (chalkboard lecture; no PPT)

PPTs:
- sound
- tiling

 
Fri 04-09 Lab 11a
Program #1: sound
Program #2: tiling
See how the completed files work Lab11a is due today at 4:00pm
Week 13
Mon 04-12 TEST #2 (Expectations and Practice Questions)    
    No lab today    
Wed 04-14 Timer

snapping to a grid

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

PPTs:
- timer
- snapping

See how the completed files work

Lab11b is due Friday at 2:00pm
Fri 04-16 go over Test #2 and Lab10 Sign up a project meeting time to discuss the next step of your project
Week 14
Mon 04-19 hexadecimal-decimal conversion, representation of information on computers

setting color using ActionScript

filters

PPTs:
- hexadecimal notation
- color representation on computer
- color using Actionscript (with lab instructions)
- filters (with lab instructions)
if needed: sign-up for 30-minute meeting for project help
  Lab 12 Program #1: Adjust color using ActionScript: hairstyle again, but dye the hair this time!

Program #2: Glow filter

Program #3: Blur filter

See how the completed files work Lab 12 is due today at 5:30pm
Wed 04-21 vector graphics vs. bitmap images PPT: vector graphics vs. bitmap images  
Fri 04-23 binary notation, binary-decimal conversion PPT: binary notation  
Week 15
Mon 04-26 sorting algorithms: selection sort, bubble sort, insertion sort

searching: linear and binary

PPTs:
- selection sort
- bubble sort
- insertion sort

Flash files for sorting practices:
- selection sort
- bubble sort
- insertion sort

linear and binary search (chalkboard lecutre; no PPT)

Flash files for practice predicting the search process:
- linear search
- binary search

 

if needed: sign-up for 15-minute meeting for last-minute project help
  Lab Identify programming constructs in other programming languages

demos (motion tracking, computer vision)

Java Example: Pong

C++ Example: Battleship

Objective C and iPhone SDK

computer vision demo links

 
Wed 04-28 no class, but you are welcome to drop by my office if you have questions on the lecture materials   Due at 11:00pm today: upload to Blackboard all project files and an optional project write-up (which includes a brief instruction of how to play your game, technical information regarding the programming challenges you have attempted, and any technical information I should know about that may help your project grade)
Fri 04-30 Final Exam (9:00am, Manchester 241) About final exam