|
|
|
|
W |
01-17 |
overview
|
|
Lab 01 |
Flash workspace, drawing tools |
|
|
F |
01-19 |
vector graphics vs. bitmap images, symbol types, master copy vs. instance, naming movieclip instances |
|
M |
01-22 |
symbols in Flash (cont'd)
basic animation concepts: keyframes, frame-by-frame, tweening |
|
W |
01-24 |
animation: frame rate, mask, motion guide
(part of the lecture will be combined with the lab) |
10-min quiz #1 on materials covered in lectures: Jan. 19 and Jan. 22 |
|
Lab 02 |
Animation Basics: onion skin, insert/remove frames/keyframes, frame-by-frame animation, shape tween, motion tween, mask |
|
|
F |
01-26 |
overview of programming concepts and constructs (part 1) |
|
M |
01-29 |
overview of programming concepts and constructs (part 2)
|
Homework #1 due in class |
W |
01-31 |
event handlers (part 1)
where do scripts go
|
10-min quiz #2 on materials covered in lectures: Jan. 26 and Jan. 29 |
|
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 |
|
|
F |
02-02 |
event handlers (part 2)
controlling movieclip instances' properties |
|
M |
02-05 |
collision detection (built-in hitTest( ) method)
|
upload Homework #2 before class
|
W |
02-07 |
controlling the playhead (gotoAndPlay( ), gotoAndStop( ))
working with text in Flash
(the lecture will be combined with the lab) |
10-min quiz No quiz this week; replaced by Homework #3 |
|
Lab 04 |
Part A: Program a Pong game: custom-define function, calling a function, mouse event handler method, frame event handler method, if/else, logical operator, hitTest( ), dynamic text
Part B: Interactive hairstyle customization: controlling the playhead using gotoAndStop( ) and stop( ) |
|
|
F |
02-09 |
arrays
|
|
M |
02-12 |
drawing API in Flash (script to draw lines, fill shapes dynamically at runtime)
while-loop and for-loop |
upload Homework #4 before class
|
W |
02-14 |
for-loop (cont'd)
3d basics |
10-min quiz #3 on arrays and loops |
|
Lab 05 |
Part A: Program a tic-tac-toe game: use of 2-dimensional array, custom-define functions, parameter passing, problem-solving
Part B: Program a 3d real-time rotating stick figure: use of 3-dimensional arrays and for-loops |
|
|
F |
02-16 |
more on loops: for..in, do..while, nested loops |
|
M |
02-19 |
Recap on Lab05: common questions/problems, returning a value, parameter passing, solutions to extra credit |
|
T |
02-20 |
Review session (voluntary) 6:00pm, same classroom (Manc 241) |
W |
02-21 |
TEST #1
|
|
Last day to drop classes
|
|
|
|
|
|
F |
02-23 |
swap
sorting algorithm: selection sort |
|
M |
02-26 |
sorting algorithms: bubble sort, insertion sort
|
|
W |
02-28 |
Basic math for depicting 3d linear perspective,
and translate them into code for Lab06
|
10-min quiz #4 on 3 sorting algorithms |
|
Lab 06 |
Program a 3d drive-through fly-through (Part 1): keyboard events, if-statements, for-loop, basic math for 3d linear perspective, abstraction |
|
|
F |
03-02 |
Lab06 (Part 2):
Wrapping, modeling gravity and friction, swapDepths( )
Bring ThinkPad
|
don't need to upload your Lab06 (Part 1) file but have it ready before class, so you can finish the file by end of the Fri class |
M |
03-05 |
Lab06 follow-up
planning and starting a platform game (HW07) |
upload Homework #5 and #6 before class |
W |
03-07 |
about the final project
(the lecture will be combined with the lab) |
10-min quiz No quiz this week; replaced by Homework #7 (DUE 12:00 noon)
|
|
Lab 07 |
Program a continuous scrolling platform game: keyboard events, if/else, modeling gravity, collision detection, problem-solving (continuous scrolling and making the items reappear) |
|
Pre-lab required (from Homework assigned on Mar. 5) |
F |
03-09 |
Lab07 follow-up
more on programming concepts and constructs: switch statement
debugger
|
|
M |
03-12 |
Spring Break week |
W |
03-14 |
F |
03-16 |
M |
03-19 |
data types
more on programming concepts and constructs: scope of variables (global, local, and timeline)
|
|
W |
03-21 |
Lab07 follow-up (about organizing code using functions)
debugger (cont'd from March 9)
collision detection (simple distance-based)
|
10-min quiz #5 on switch statement, data types, and scope of variables
Turn in Homework #8 in class |
|
Lab 08 |
Part 1: data types, scope of variables, reduce code duplication using functions
Part 2: simple distance-based collision detection |
|
|
F |
03-23 |
intro to OOP, objects, classes
|
|
M |
03-26 |
inheritance
|
Upload Homework #9 before class |
W |
03-28 |
giving an instantiated object a visual representation
attachMovie() and duplicateMovieClip() |
|
|
Lab 09 |
Part 1. OOP Pong
Part 2. Inheritance |
|
|
Thu |
03-29 |
Review session (voluntary) 6:00pm, same classroom (Manc 241) |
F |
03-30 |
TEST #2
|
|
TEST #2 |
M |
04-02 |
encapsulation
access specifiers
OOP review |
|
W |
04-04 |
Using Listener to capture key up and key down
an access specifier: static
naming conventions, commenting, coding style |
10-min quiz |
|
Lab 10 |
Start working on your project, based on what we have discussed in our second individual meeting (April 3rd or 4th). 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 on stage.
This lab is due Thu. |
|
|
F |
04-06 |
Good Friday Observance Holiday |
M |
04-09 |
polymorphism
problem-solving: examples:
- toggle
- randomization:
- shuffle a deck of cards
- generate random timing
- generate a random number that is within a range of numbers, but except one or more numbers in the range
|
|
W |
04-11 |
problem-solving: examples:
- tile movieclip instances on a grid
- nested movieclips
- snapping
- hitTest( ) and getDepth( ) to detect the collision of movieclip instance in front
how not to hard-code _root.itemName in your class file |
|
|
Lab 11 |
Write short programs:
Program #1: toggle
Program #2: shuffle a list of items, such as a deck of cards
Program #3: randomize timing using getTimer(): turtle and bunny race
Program #4: generate a random integer that is different from the current one
Program #5: use nested loop to tile movieclip instances on a grid
|
|
|
F |
04-13 |
controlling audio playback using Actionscript
startDrag( ) and stopDrag( )
controlling masks using Actionscript
a refresher on Actionscript |
|
M |
04-16 |
Lab 12:
Program #1:
audio
Program #2:
draggable mask |
About Test #3 (April 18)
|
|
T |
04-17 |
Review session (voluntary) 8:30pm, same classroom (Manc 241) |
W |
04-18 |
TEST #3 |
|
TEST #3 |
|
Lab 12 |
continue Lab 12 from Monday if you have not finished
|
|
|
F |
04-20 |
binary notation, binary-decimal conversion, representation of information on computers
|
|
M |
04-23 |
binary notation of fractions
searching algorithms: linear search, binary search |
|
W |
04-25 |
apply programming concepts in other programming languages
|
10-min quiz #6
|
|
Lab 13 |
apply programming concepts in other programming languages: Program an ASCII art animation in C++ |
|
Pre-lab: have Microsoft Visual C++ 2005 Express Edition installed on your Thinkpad before lab |
F |
04-27 |
Lab14 (Program #1): apply programming concepts in other programming languages: a tic-tac-toe game in C++ |
|
|
M |
04-30 |
teaching eval.
Lab14 (Program #2): a battleship game in C++ |
|
|
W |
05-02 |
creating graphics and interactive graphics using C++ and openGL
last-minute questions, about the final exam |
last day of class |
|
|
finish up Lab14 |
|
|
M |
05-07 |
Review session (voluntary) 7:00pm
Room: Manc 241 |
T |
05-08 |
Final Exam (alternate session) 2:00pm
Room: Manc 241 |
|
W |
05-09 |
Final Exam 9:00am
Room: Manc 241 |
About final exam |