Design and Development with Flash
Summer 2006
Mondays and Wendesdays, 6:30-9:25pm

 Home             1   2  |  3   4  |  5   6  ||  MID  ||  7   8  |  9   10  |  11   12




Syllabus

The course will be broken into two sections. The first half of the course will focus on the basic and intermediate topics that comprise ActionScript's core structure, syntax, and programming concepts. Assignments during the first half of the course will be somewhat more structured than those in the second half of the course. At the end of the first half, we will assess our progress, consider our goals, and determine a direction for the second half of the course.

The second half of the course will be an exploration and implementation of the more advanced and task-specific elements in the ActionScript language. The choice of topics will be selected based on the students' desired directions for their personal projects, to be brought to a beta stage by the completion of the course. Rather than attempt to cram an entire language into students' heads, this course is designed to enable students to develop projects on their own; the second half will introduce the tools that are necessary for students to conceptualize, structure, and build their final projects.



Class 1 -- Introduction
2006.06.26 Monday
- flash environment
- timeline navigation
- events
- best practices, commenting, trace()

reading:
Chapter 1 - Intro (pp. 3-22, don't bother with the quiz)
Chapter 2 - Variables
Chapter 16 - AS Authoring Environment (thru "Productivity", p407)

assignment:
interactive animation

examples:
timeline animation



Class 2 -- Variables and Conditionals
2006.06.28 Wednesday
- variables
- scope, 'this' keyword
- conditionals
- simple programmatic animation
- the MovieClip class

reading:
Chapter 7 - Conditionals

assignment:
single-player Pong -or- interactive timed animation

examples:
event handlers
scope
variables
the MovieClip class
conditionals
simple collision detection



Class 3 -- Asset Management
2006.07.03 Monday
- internal asset management
- depth
- array access
- for loops

reading:
Chapter 13 - Movie Clips: pp. 331-360
Chapter 8 - Loops

assignment:
race
crowd simulation (many-to-one)

examples:
Pong
asset management
draw order and nesting
array access
star field



Class 4 -- Loops and Arrays
2006.07.05 Wednesday
- arrays
- loops (revisited -- arrays)
- Key object
- strings

reading:
Chapter 4 - Primitive Datatypes: pp.83-105 ('The String Type', 'Working With Strings')
Chapter 11 - Arrays

assignment:
memory game -or- interactive family tree
prepare questions for debugging seminar

examples:
basic arrays
applied arrays
array methods
loops
the Key object



Class 5 -- Functions
2006.07.10 Monday
- prepping / importing images (transparent gifs)
- debugging techniques
- functions (basic)

reading:
Chapter 9 - Functions

assignment:
rewrite an earlier assignment using functions

examples:
aliens!
functions
spaceship control
additional examples



Class 6 -- The ASMX Event Model
2006.07.12 Wednesday
- functions (continued)
- flash as object-oriented system
- ASMX event model
- strings
- textfields

reading:
Chapter 10 - Events and Event Handling

assignment:
hangman game -or- interactive character
think about personal project (email me)

examples:
functions (continued)
ASMX event model
textfields
TextFormat object



Midway Point -- Possible Topics

The content of second half of the course will be determined largely by the final projects students choose to develop. Possible topics (broken into related groups) include:

- video
- audio
- Sound object
- MovieClipLoader class
- preloading
- integration with html
- getURL()
- TextFormat object
- strings (manipulating, parsing)
- Date object
- drawing API
- Color class
- programmatic animation: trigonometry, easing, z-axis
- mc.setMask()
- flash-javascript; fscommand
- shared objects
- external assets
- XML



Class 7 -- Final Project :: Pseudocoding
2006.07.17 Monday
- discuss final projects
- pseudocoding
- Sound object
- Video and Flash 6/7/8
- live camera input

assignment:
outline final project (pseudocode/design document)

examples:
the Sound class
Video with Flash 6/7
Video with Flash 8
live camera input



Class 8 -- Final Project :: Prototype
2006.07.19 Wednesday
- discuss final project design docs
- loading external assets: loadMovie
- getURL
- site building with external assets
- MovieClipLoader

assignment:
final project -- prototype/alpha (draft)

examples:
loadMovie
getURL
site building w/ external assets
preloader (<= FP6)
preloader (> FP6)



Class 9 -- Final Project :: Alpha
2006.07.24 Monday
- review prototype progress
- XML
- programmatic animation

assignment:
final project -- prototype/alpha (complete)

examples:
basic xml
an xml website
motion: easing
motion: trigonometry
motion: random
motion: mx.transitions.Tween



Class 10 -- Final Project :: Beta
2006.07.26 Wednesday
- present final project prototypes
- mc.createEmptyMovieClip()
- drawing API
- Color class
- ColorTransform class

assignment:
final project -- beta (draft)

examples:
the drawing API
drawing recorder
the Color class
the ColorTransform class
flower drawer
fills



Class 11 -- Final Project :: Beta
2006.07.31 Monday
- discuss beta progress
- BitmapData class
- object-oriented programming (OOP) and Flash

assignment:
final project -- beta (complete)

examples:



Class 12 -- Final Project Presentation
2006.08.02 Wednesday
- present final project betas