Search and Find
Service
Front Cover
1
Interactive QuickTime: Authoring Wired Media
2
Copyright Page
5
Contents
6
Foreword
16
Preface
19
What This Book Is and Is Not
19
How to Read This Book
20
Explorations
22
Acknowledgements
23
Part I: Background Information
26
Chapter 1. What Is Interactive QuickTime?
28
Explorations
32
Chapter 2. How Do You Play an Interactive Movie?
35
Explorations
39
Chapter 3. The Stuff QuickTime Is Made Of
44
What Are Atoms
44
Tracks
46
Samples
46
Sprite Track Samples
46
Sprites
47
Scripts
48
How to Make Interactive Sprite Tracks
51
Explorations
53
Part II: Wiring Existing Movies
54
Chapter 4. Getting Familiar with the Tools
56
Explorations
66
Chapter 5. Customizing the Presentation of an Existing Movie
68
Explorations
74
Chapter 6. Digital Rights Management
76
Explorations
82
Chapter 7. Adding DVD Features
84
Explorations
92
Part III: Sprite Worlds
94
Chapter 8. A Simple World
96
Explorations
108
Chapter 9. Talking with Sprites
110
Targets
110
Properties
112
Actions
114
Custom Actions
116
Custom Properties
119
Rotation Behavior
120
Explorations
122
Chapter 10. Collision Detection
124
Bounds Overlap
127
Radius Overlap
131
Point Testing
134
Explorations
140
Chapter 11. Cel-Based Animation
142
Picasso
143
Interactive Door
145
Looping Images
147
Inchworm Technique
151
Onionskinning
155
Coordinated Animation
157
Cel-Based Pushing
158
Cel-Based Dragging
160
Explorations
161
Chapter 12. User Interaction
164
Pop Quiz
165
Mouse Event Definitions
166
Checkbox
170
Mouse Hit Testing
172
Mouse Enter and Mouse Exit
173
Mouse Moved
175
Drag Manager
175
Double Clicks
179
Focus
180
Key Events
181
Keyboard Managers
186
Explorations
187
Chapter 13. Scripted Motion
190
Linear Interpolation
191
Easing In and Out
192
Motion along a Mathematical Function
194
Circular Motion
198
Paths
201
Spline Interpolation
204
Explorations
207
Chapter 14. Scripted Stretching
210
Bar Graphs
211
Drawing Lines
213
Perspective
216
Explorations
218
Chapter 15. Cloning Sprites
222
Making New Sprites
222
Cloning Sprites with Behavior
224
Disposing of Sprites
226
Explorations
228
Chapter 16. Modeling Physics
230
Forces
230
Friction
233
Collisions
235
Explorations
237
Part IV: User Interfaces
240
Chapter 17. Buttons
242
Simple Buttons
242
Checkboxes
246
Components
248
Radio Buttons
249
Explorations
252
Chapter 18. Sliders
254
Explorations
258
Chapter 19. Text Input
260
Filtering the Input
265
Text Field Component with Border
266
Recursive Connections
268
Multilined Text Areas
268
Password Fields
269
Explorations
272
Chapter 20. Menus
274
Explorations
279
Part V: Multimedia
280
Chapter 21. Audio and Video
282
Audio
284
Video
287
Loading Linear Media
292
Explorations
293
Chapter 22. Effects
296
Codec Effects
299
Explorations
301
Chapter 23. Image Overrides
302
Explorations
306
Chapter 24. MIDI Instruments
308
SoundFonts
314
Sampled Instruments
315
Explorations
318
Chapter 25. Text Tracks
320
Scrolling Ticker Tape
320
LCD Clock
322
Text Links (Hotspots)
330
Searching Text Captions
333
Explorations
340
Chapter 26. Flash Tracks
344
Controlling QuickTime from a Flash Button
345
Controlling a Flash Button from QuickTime
347
Controlling Flash Movie Properties
350
Explorations
351
Chapter 27. QTVR
354
Controlling VR
357
Multinodes, Hotspots, Cubics, and Maps
360
Explorations
364
Chapter 28. MovieTracks
368
Explorations
375
Chapter 29. Third-Party Tracks
378
Explorations
383
Chapter 30. Other Tracks
384
Video Tracks in Disguise
384
Text Tracks in Disguise
384
Timecode Tracks
385
Modifier and Tween Tracks
386
QuickDraw 3D Track
388
Streaming Tracks
388
Hint Tracks
388
PDF Tracks
389
Fast Tracks (FT)
389
Cursor Tracks
389
WorldWideVariables Tracks
391
Base Tracks
391
Explorations
392
Part VI: Communicating with the World
394
Chapter 31. XML and QTLists
396
QTLists versus XML
398
Working with QTLists
402
Explorations
407
Chapter 32. Loading Data
410
Explorations
413
Chapter 33. Setting Up a QTList Server
416
About Tekadence Magik
416
Setting Up the Test Server
417
Explorations
419
Chapter 34. Sending Data to a Server
422
Launch the Server
422
Explorations
428
Chapter 35. Exchanging QTLists
430
Explorations
439
Chapter 36. Communicating with the Browser
442
Passing Data into a Movie
446
Explorations
448
Chapter 37. Dynamic Media
452
Explorations
461
Chapter 38. Intermovie Communication
464
IsMovieActive
469
Explorations
469
Chapter 39. Communicating with Applications
472
Explorations
475
Appendices
478
Appendix A. Useful Numbers
480
Appendix B. Math Functions
488
Appendix C. String Functions
496
Appendix D. QTList Functions
502
Appendix E. Programming Techniques
508
Spatial Programming
508
Breaking a Loop
509
Exception Handling and Error Detection
510
Functions, Methods, and Subroutines
511
Recursion
512
Numerical Correction
513
Dividing by Zero (Epsilon Correction)
514
Random Number Generation
516
Dictionaries and Lists
517
Debugging
518
Profiling
519
Lazy Constructors
520
Parallel Processing
521
Sustainable Hacking
523
Dynamic Script Evaluation
523
Collaboration
524
Appendix F. Sprite and Track Geometry
526
Coordinate System
526
Spatial Properties
527
Distance between Two Tracks
529
2.5 Dimensions
529
Screen Updates
530
Matrix Transformations
530
Area of Sprites
538
Sprite Center
539
Two Points
540
A Point and a Line
540
Two Lines
541
Regular Polygons
541
Triangles
541
Circles
541
Spheres
542
Appendix G. Graphics Modes
544
Appendix H. Codecs
546
Appendix I. General MIDI
548
Instruments
548
Drum Kits
550
Controllers
551
Appendix J. Components
552
Appendix K. QTText Tags
556
Appendix L. HTML Embed Parameters
560
Embed Attributes
561
Appendix M. Wired Actions
564
Appendix N. Wired Constants
572
Appendix O. ASCII Table
578
Appendix P. Wired Sprites with Java
582
Appendix Q. Web Links
584
Appendix R. Contributing Developers
588
Appendix S. CD Contents
590
Glossary
594
Index
600
About the Author
623
QuickTime Developer Series
624
All prices incl. VAT