第一部分 ActionScript动画基础第1章 基本动画概念 2
1.1 什么是动画 2
1.2 帧和运动 3
1.2.1 帧就是记录 4
1.2.2 程序帧 5
1.3 动态与静态 5
1.4 小结 7
第2章 ActionScript 3.0动画基础 8
2.1 动画基础 8
2.2 关于ActionScript版本 8
2.3 类和OOP 9
2.3.1 基类 9
2.3.2 包 10
2.3.3 导入 11
2.3.4 构造函数 11
2.3.5 继承 11
2.3.6 MovieClip/Sprite子类 13
2.3.7 创建文档类 13
2.4 设置ActionScript 3.0应用程序 14
2.4.1 使用Flash CS3 IDE 15
2.4.2 使用Flex Builder 2 15
2.4.3 使用免费的命令行编译器 16
2.4.4 关于跟踪 18
2.4.5 缩放影片 19
2.5 使用代码动画 19
2.5.1 循环 19
2.5.2 帧循环 22
2.5.3 剪辑事件 23
2.5.4 事件和事件处理器 24
2.5.5 侦听器和处理器 25
2.5.6 动画事件 28
2.6 显示列表 29
2.7 用户交互 34
2.7.1 鼠标事件 34
2.7.2 鼠标位置 36
2.7.3 键盘事件 36
2.7.4 键盘代码 37
2.8 小结 38
第3章 动画中的三角学 39
3.1 什么是三角学 40
3.2 角 40
3.2.1 弧度和度 40
3.2.2 Flash坐标系统 42
3.2.3 三角形的边 43
3.3 三角函数 43
3.3.1 正弦 44
3.3.2 余弦 44
3.3.3 正切 45
3.3.4 反正弦和反余弦 46
3.3.5 反正切 46
3.4 旋转 48
3.5 波 50
3.5.1 光滑的上下运动 51
3.5.2 线性垂直运动 53
3.5.3 脉冲动画 53
3.5.4 两个角的波 54
3.5.5 用drawing API绘制波 55
3.6 圆和椭圆 56
3.6.1 圆形运动 56
3.6.2 椭圆形运动 58
3.7 毕达哥拉斯定理 59
3.8 两点之间的距离 59
3.9 本章重点公式 62
3.10 小结 63
第4章 渲染技术 64
4.1 Flash中的颜色 64
4.1.1 使用16进制颜色值 65
4.1.2 透明度和32位色 65
4.1.3 新的数值类型:int和uint 66
4.1.4 组合颜色 66
4.1.5 提取组成色 68
4.2 drawing API 69
4.2.1 图形对象 70
4.2.2 使用clear移除绘画 70
4.2.3 使用lineStyle设定线条样式 70
4.2.4 使用lineTo和moveTo绘制线条 71
4.2.5 使用curveTo绘制曲线 73
4.2.6 使用beginFill和endFill创建图形 78
4.2.7 使用beginGradientFill创建渐变填充 79
4.3 颜色变换 82
4.4 滤镜 85
4.4.1 创建滤镜 85
4.4.2 动画滤镜 87
4.5 位图 88
4.6 载入或嵌入内容 91
4.6.1 载入内容 91
4.6.2 嵌入内容 92
4.7 本章重点公式 93
4.8 小结 94
第二部分 基本运动 96
第5章 速度和加速度 96
5.1 速度 96
5.1.1 向量和速度 97
5.1.2 一个轴上的速度 98
5.1.3 两个轴上的速度 99
5.1.4 角速度 100
5.1.5 速度扩展 103
5.2 加速度 105
5.2.1 一个轴上的加速度 105
5.2.2 两个轴上的加速度 108
5.2.3 重力加速度 109
5.2.4 角加速度 111
5.2.5 太空船 112
5.3 本章重点公式 116
5.4 小结 116
第6章 边界和摩擦力 117
6.1 环境边界 117
6.1.1 设置边界 118
6.1.2 移除物体 119
6.1.3 重新生成物体 123
6.1.4 屏幕折回 125
6.1.5 回弹 127
6.2 摩擦力 132
6.2.1 摩擦力,正确方法 132
6.2.2 摩擦力,容易方法 134
6.2.3 摩擦力的应用 134
6.3 本章重点公式 135
6.4 小结 136
第7章 用户交互:移动物体 137
7.1 按下和放开精灵 137
7.2 拖动精灵 140
7.2.1 使用mouseMove拖动 140
7.2.2 使用startDrag/stopDrag拖动 141
7.2.3 拖动与运动代码结合 142
7.3抛 145
7.4 小结 148
第三部分 高级运动 150
第8章 缓动和弹性 150
8.1 比例运动 150
8.2 缓动 151
8.2.1 简单的缓动 151
8.2.2 何时停止缓动 155
8.2.3 移动的目标 157
8.2.4 缓动不只是应用于运动 158
8.2.5 高级缓动 159
8.3 弹性 160
8.3.1 一维弹性 160
8.3.2 二维弹性 162
8.3.3 移动目标点的弹性 163
8.3.4 弹性在哪儿 164
8.3.5 弹性链 165
8.3.6 多目标点弹性 168
8.3.7 目标偏移 170
8.3.8 使用弹性贴加多个物体 172
8.4 本章重点公式 175
8.5 小结 176
第9章 碰撞检测 177
9.1 碰撞检测方法 177
9.2 hitTestObject和hitTestPoint 178
9.2.1 碰撞测试两个精灵 178
9.2.2 碰撞测试一个精灵和一个点 182
9.2.3 使用shapeFlag的碰撞测试 183
9.2.4 hitTest总结 184
9.3 基于距离的碰撞检测 184
9.3.1 简单的基于距离的碰撞检测 185
9.3.2 基于碰撞的弹性 186
9.4 多物体碰撞检测策略 189
9.4.1 基本的多物体碰撞检测 189
9.4.2 多物体弹性 191
9.5 其他的碰撞检测方法 195
9.6 本章重点公式 195
9.7 小结 196
第10章 坐标旋转和角度回弹 197
10.1 简单的坐标旋转 197
10.2 高级坐标旋转 199
10.2.1 旋转一个物体 200
10.2.2 旋转多个物体 201
10.3 沿角度回弹 203
10.3.1 执行旋转 204
10.3.2 优化代码 207
10.3.3 动态化 208
10.3.4 修复“脱离边界”问题 208
10.3.5 多角度回弹 212
10.4 本章重点公式 216
10.5 小结 216
第11章 台球物理 217
11.1 质量 217
11.2 动量 218
11.3 动量守恒 218
11.3.1 一个轴上的动量守恒 220
11.3.2 两个轴上的动量守恒 224
11.4 本章重点公式 239
11.5 小结 239
第12章 粒子引力和重力 240
12.1 粒子 240
12.2 重力 241
12.2.1 引力 242
12.2.2 碰撞检测和反应 244
12.2.3 沿轨道运行 245
12.3 弹性 246
12.3.1 引力与弹性 247
12.3.2 弹性结点域 247
12.3.3 结点的连接 249
12.3.4 有质量的结点 251
12.4 本章重点公式 252
12.5 小结 253
第13章 正向运动:行走 254
13.1 介绍正向和反向运动 254
13.2 开始正向运动编程 255
13.2.1 移动一个关节 255
13.2.2 移动两个关节 258
13.3 自动运行 260
13.3.1 创建自然的行走循环 261
13.3.2 动态化 263
13.4 使它真正地行走 266
13.4.1 给它一些空间 266
13.4.2 加入重力 267
13.4.3 控制碰撞 267
13.4.4 控制反应 269
13.4.5 屏幕折回 270
13.5 小结 274
第14章 反向运动:拖动和伸展 275
14.1 伸展和拖动一个关节 275
14.1.1 伸展一个关节 276
14.1.2 拖动一个关节 277
14.2 拖动多个关节 277
14.2.1 拖动两个关节 277
14.2.2 拖动更多的关节 279
14.3 伸展多个关节 280
14.3.1 向鼠标伸展 281
14.3.2 向一个物体伸展 285
14.3.3 加入一些交互 287
14.4 使用标准的反向运动方法 288
14.4.1 余弦定律介绍 289
14.4.2 ActionScript余弦定律 290
14.5 本章重点公式 293
14.6 小结 293
第四部分 3D动画 296
第15章 3D基础 296
15.1 第3维和透视 296
15.1.1 z轴 297
15.1.2 透视 297
15.2 速度和加速度 301
15.3 回弹 303
15.3.1 单个物体回弹 303
15.3.2 多物体回弹 306
15.3.3 z轴排序 309
15.4 重力 310
15.5 折回 312
15.6 缓动和弹性 320
15.6.1 缓动 320
15.6.2 弹性 321
15.7 坐标旋转 323
15.8 碰撞检测 329
15.9 本章重点公式 332
15.10 小结 333
第16章 3D线条和填充 334
16.1 创建点和线 334
16.2 生成面 340
16.3 创建3D填充 343
16.4 3D实体建模 349
16.4.1 旋转立方体建模 349
16.4.2 建模其他形体 351
16.5 移动3D实体模型 356
16.6 小结 358
第17章 背面剔除和3D灯光 359
17.1 背面剔除 359
17.2 深度排序 362
17.3 3D灯光 364
17.4 小结 374
第五部分 其他技术 376
第18章 矩阵数学 376
18.1 矩阵基础 376
18.2 矩阵运算 377
18.2.1 矩阵加法 377
18.2.2 矩阵乘法 378
18.3 Matrix类 382
18.4 小结 385
第19章 实用技巧汇集 386
19.1 布朗(随机)运动 386
19.2 随机分布 389
19.2.1 方形分布 389
19.2.2 圆形分布 391
19.2.3 偏移分布 394
19.3 基于定时器和时间的动画 397
19.3.1 基于定时器的动画 397
19.3.2 基于时间的动画 400
19.4 相同质量物体之间的碰撞 402
19.5 声音集成 404
19.6 有用的公式 406