Atnaujinkite slapukų nuostatas

El. knyga: AdvancED Game Design with Flash

4.00/5 (22 ratings by Goodreads)
  • Formatas: PDF+DRM
  • Išleidimo metai: 28-Dec-2010
  • Leidėjas: APress
  • Kalba: eng
  • ISBN-13: 9781430227403
Kitos knygos pagal šią temą:
  • Formatas: PDF+DRM
  • Išleidimo metai: 28-Dec-2010
  • Leidėjas: APress
  • Kalba: eng
  • ISBN-13: 9781430227403
Kitos knygos pagal šią temą:

DRM apribojimai

  • Kopijuoti:

    neleidžiama

  • Spausdinti:

    neleidžiama

  • El. knygos naudojimas:

    Skaitmeninių teisių valdymas (DRM)
    Leidykla pateikė šią knygą šifruota forma, o tai reiškia, kad norint ją atrakinti ir perskaityti reikia įdiegti nemokamą programinę įrangą. Norint skaityti šią el. knygą, turite susikurti Adobe ID . Daugiau informacijos  čia. El. knygą galima atsisiųsti į 6 įrenginius (vienas vartotojas su tuo pačiu Adobe ID).

    Reikalinga programinė įranga
    Norint skaityti šią el. knygą mobiliajame įrenginyje (telefone ar planšetiniame kompiuteryje), turite įdiegti šią nemokamą programėlę: PocketBook Reader (iOS / Android)

    Norint skaityti šią el. knygą asmeniniame arba „Mac“ kompiuteryje, Jums reikalinga  Adobe Digital Editions “ (tai nemokama programa, specialiai sukurta el. knygoms. Tai nėra tas pats, kas „Adobe Reader“, kurią tikriausiai jau turite savo kompiuteryje.)

    Negalite skaityti šios el. knygos naudodami „Amazon Kindle“.

Creating games in Flash is a never-ending journey of exploration, learning, and most of all, fun. Once youve mastered the basics, a new world is opened up to you, enabling you to take your existing skills to the next level and discover new skills that will in turn open new doors. This book is a direct continuation of Foundation Game Design with Flash, and is a complete point-by-point roundup of the most important skills a Flash game designer needs to know. Youll increase your ActionScript knowledge and your game design skills while creating some excellent example games. Youll learn advanced collision detection skills; professional AI and pathfinding; and how to load and save game data, create destructible environments, and build and switch game levels. 







Each chapter highlights a new advanced technique illustrated by practical examples. Examples of games are given in a variety of genres, all of which take an object-oriented programming approach. Advanced game design topics are covered, including vector-based collision reaction, pathfinding, billiard ball physics, and modeling game data.
About the Author xiii
About the Technical Reviewer xiv
About the Cover Image Designer xv
Acknowledgments xi
Introduction xvii
Chapter 1 Modeling Game Data
1(66)
Verlet integration
2(1)
The problem with Euler integration
3(19)
Understanding Verlet integration
4(1)
Using Verlet integration
5(8)
Using the main application class
13(5)
Onward to Planet X!
18(4)
Introducing the Model-View-Controller Pattern
22(27)
Understanding MVC
23(2)
MVC in action
25(5)
MVC your way
30(2)
An MVC player and map view example
32(12)
Verlet + MVC + physics = fun!
44(5)
A crash course in the drawing API
49(15)
Drawing lines
50(1)
Drawing squares
50(2)
Drawing circles
52(1)
Adding filters
53(1)
Gradient fills
54(3)
Complex shapes
57(7)
Introducing interfaces
64(2)
Summary
66(1)
Chapter 2 Vectors: Ghosts in the Machine
67(94)
What are vectors?
68(12)
Vector characteristics
69(4)
Calculating the angle
73(2)
Vector normals
75(3)
Normalizing vectors
78(2)
Using and viewing vectors
80(14)
Creating the vector model
80(7)
Creating the vector view
87(1)
Let's see what those vectors look like!
87(7)
Adding and subtracting vectors
94(11)
Scaling vectors
96(4)
Gravity in action
100(5)
Real gravity
105(1)
Projecting vectors
105(10)
Are the vectors pointing in the same direction?
107(3)
Projection in action
110(3)
Using vector projection for environmental boundaries
113(2)
Intersection
115(6)
Finding the intersection point
116(2)
Intersection in action
118(3)
Collision and bounce
121(30)
Collision on one side of the line
121(8)
Resolving the collision
129(6)
Bounce
135(3)
Momentum
138(1)
Solid objects
139(2)
Collision on both sides of the line
141(5)
Bounce, friction, and gravity
146(5)
A crash course in embedding assets
151(4)
Embedding fonts
151(1)
Embedding images
152(3)
Important vector formulas
155(5)
Summary
160(1)
Chapter 3 Collisions Between Circles
161(62)
Abstract classes
162(14)
Understanding abstract and concrete classes
162(4)
Creating and implementing abstract classes
166(10)
Keyboard and mouse control
176(5)
Collision-handling basics
181(30)
Collisions between moving and stationary circles
181(6)
Collision between a circle and a line
187(15)
Collision between moving circles
202(9)
Multiple-object collision
211(4)
Fast-moving circles
215(6)
Summary
221(2)
Chapter 4 Collisions Between Polygons
223(82)
The separating axis theorem
224(13)
Understanding SAT
224(1)
Using SAT
225(12)
Rectangle collisions
237(7)
Rectangle collision handling in action
238(4)
Bounce and friction
242(2)
Triangle collisions
244(18)
SAT with triangles---the wrong way
246(1)
SAT with triangles---the right way
247(3)
Triangle collision handling in action
250(11)
Triangle collision wrap-up
261(1)
Oriented bounding box collisions
262(5)
Polygon and circle collisions
267(16)
Circle and square collisions
268(8)
Circle and triangle collisions
276(6)
Left-facing triangles
282(1)
Case studies
283(18)
Case study 1 Polygon environment
283(3)
Case study 2 Block Game
286(15)
Multilevel games
301(2)
Summary
303(2)
Chapter 5 Pixel-Perfect Collision and Destructible Environments
305(62)
Vector vs. bitmap graphics
306(2)
Using bitmaps
308(1)
Bitmap collisions
309(11)
Checking for a collision
310(4)
The problems with bitmap collision
314(1)
Finding the collision boundary
315(5)
Bitmap collision-detection strategies
320(24)
Convex shapes
321(7)
Surfaces
328(2)
Concave shapes
330(14)
Adding objects to scrolling environments
344(7)
Using two-dimensional arrays
345(4)
Creating and adding the objects
349(1)
Scrolling the objects
350(1)
Building a rotating gun turret
351(6)
Drawing and rotating the cannon
352(3)
Firing bullets
355(1)
Moving and removing bullets
356(1)
Destroying things!
357(8)
Bitmap collision using points
359(1)
Erasing the bitmap
360(2)
Jagged rocks
362(3)
Summary
365(2)
Chapter 6 Explosions, Blitting, and Optimization
367(78)
A simple particle explosion
368(10)
Using timer events for animation
369(2)
Creating the Explosion class
371(7)
A more realistic explosion
378(18)
Taking a snapshot
379(5)
Slicing and dicing
384(12)
Starburst explosions
396(5)
Fast particle explosions
401(28)
Introducing bit-block transfer
401(3)
Basic blitting
404(12)
How fast is fast?
416(5)
To blit or not to blit?
421(3)
Blit explosions
424(5)
Lookup tables
429(5)
An Explosion Controller
434(4)
Smoke trails
438(6)
The Perlin noise effect
438(4)
Smoke trail optimization
442(2)
Summary
444(1)
Chapter 7 Make It Fun! Sound, Music, and Al
445(58)
Put fun first
446(1)
Sound effects and music
447(16)
Adding sound effects
448(3)
Playing music
451(9)
Using sound and music in a game
460(2)
Finding sound effects and music
462(1)
Buttons
463(4)
Creating simple buttons
463(1)
Making custom buttons
464(3)
Enemy Al: Line of sight
467(10)
Chasing the player
476(1)
Case study: Escape!
477(24)
Structure: your best friend and worst enemy
479(5)
Managing game screens
484(5)
Multiple views of the game data
489(2)
New enemy Al techniques
491(7)
Managing game states
498(2)
Now make your own game!
500(1)
Summary
501(2)
Chapter 8 Tile-Based Game Design
503(120)
Tile-based game advantages
504(1)
Building the game world
505(23)
Making tiles
505(3)
Making a map
508(2)
Describing the map with a two-dimensional array
510(2)
Creating the tile model
512(3)
Putting the map in the game
515(6)
Blitting tiles
521(3)
Reviewing the Map application class
524(4)
Adding a game character
528(10)
Layering maps
529(3)
Making the game character move
532(5)
Blitting a moving character in a tile-based world
537(1)
Platform collision
538(17)
Understanding spatial grid collision
540(2)
Finding the corners
542(4)
Applying a spatial grid to platform collision
546(8)
Working with round tiles
554(1)
Adding more interaction
555(30)
Adding soft platforms
555(3)
Adding elevators
558(4)
Collecting objects
562(4)
Wind them up and let them loose!
566(4)
Squashing enemies
570(3)
Blit animations
573(6)
Switching levels
579(6)
Blit scrolling
585(5)
Adding a camera
587(1)
Establishing game world coordinates
588(2)
Using sprites in a tile-based world
590(9)
Blitting the tile into a sprite
592(3)
Creating the car's control system
595(3)
Stuck in the grass
598(1)
Storing extra game data in arrays
599(6)
Creating the Al car
603(1)
Controlling the Al car
604(1)
Collision maps
605(15)
Understanding dynamic spatial grids
606(1)
Updating a dynamic grid
607(4)
Creating a collision map
611(9)
Other broad-phase collision strategies
620(1)
Summary
621(2)
Chapter 9 Pathfinding
623(68)
Moving through a maze
624(31)
Centering game objects
625(1)
Moving and changing direction
626(7)
Random movement in a maze
633(9)
Chasing
642(5)
Tile-based line of sight
647(8)
Finding the shortest path
655(34)
Understanding A
656(11)
A in code
667(9)
Using the AStar class
676(4)
Understanding heuristics
680(4)
Rounding corners
684(1)
Walking the path
685(3)
Extending and customizing A
688(1)
Summary
689(2)
Chapter 10 XML and External Data
691(58)
Local shared objects
692(12)
Creating and loading shared objects
692(1)
Using shared objects
693(5)
Limitations of local shared objects
698(1)
Loading and saving files to a specific location
699(5)
Understanding XML
704(6)
The building blocks of XML
704(2)
XML hierarchy
706(3)
XML and ActionScript
709(1)
Creating XML objects
710(9)
Reading elements, text nodes, and attributes
711(8)
Changing XML data
719(5)
Adding new elements and attributes
719(2)
Building XML documents from existing variables
721(1)
Removing nodes from XML documents
722(2)
Loading game levels from XML data
724(17)
Creating a game level map
725(1)
Loading and interpreting the XML map data
726(4)
Creating multiple game levels with XML
730(11)
Loading XML files at runtime
741(4)
Using URLLoader to load files
741(1)
Runtime loading security issues
742(3)
Are we there yet?
745(4)
3D games
745(1)
2D physics
745(1)
Online multiplayer games
746(1)
Further reading
747(1)
Where to next?
747(2)
Index 749
Rex van der Spuy is a video game designer and writer. He s written Foundation Game Design with Flash, Advanced Game Design with Flash and Foundation Game Design with AS3.0. Rex has designed games and done interactive interface programming Agency Interactive (Dallas), Scottish Power (Edinburgh), DC Interact (London), Draught Associates (London), and the Bank of Montreal (Canada). He also builds game engines and interactive interfaces for museum installations for PixelProject (Cape Town). In addition, he created and taught advanced courses in game design for the Canadian School of India (Bangalore, India). When not writing about games, making them, or playing them, he amuses himself by building experimental, autonomous, self-aware, multi-cellular parallel universes out of shoe boxes, scotch tape, spare milk bottle caps and bits of string . He claims, that this is a lot more entertaining than you might think, but we re skeptical.