万本电子书0元读

万本电子书0元读

顶部广告

3D Game Development with Microsoft Silverlight 3: Beginner's Guide电子书

售       价:¥

0人正在读 | 0人评论 9.8

作       者:Gaston C. Hillar

出  版  社:Packt Publishing

出版时间:2009-09-24

字       数:185.8万

所属分类: 进口书 > 外文原版书 > 电脑/网络

温馨提示:数字商品不支持退换货,不提供源文件,不支持导出打印

为你推荐

  • 读书简介
  • 目录
  • 累计评论(0条)
  • 读书简介
  • 目录
  • 累计评论(0条)
This book takes a step-by-step approach to building a complete interactive 3D game using Silverlight and enhancing it through its related technologies. The book focuses on practical examples and has a friendly approach, with the opportunity to learn by experiment and play. It uses illustrations, screenshots, and interactive experiences to understand the most complex topics related to the 3D scenes. This book is designed primarily for C# developers with basic knowledge of the Visual Studio IDE who want to develop online 3D games using Silverlight or create interactive 3D scenes for a web site with animated models. No prior experience in 3D programming, 3D animation, or Silverlight is required. The book is also aimed at 3D developers who want to improve their online content, offering innovative 3D models in action.
目录展开

3D Game Development with Microsoft Silverlight 3 Beginner's Guide

Table of Contents

3D Game Development with Microsoft Silverlight 3 Beginner's Guide

Credits

About the Author

Acknowledgement

About the Reviewer

Preface

What this book covers

What you need for this book

Who this book is for

Conventions

Reader feedback

Customer support

Downloading the example code for the book

Errata

Piracy

Questions

1. Lights, Camera, and Action!

UFOs in the sky!: Invaders

Time for action—preparing the development environment

What just happened?

Time for action—recognizing digital art assets

What just happened?

Time for action—creating the raster digital content

What just happened?

Digital Content Creation tools

Basic elements of a 2D and/or 3D real-time game

Programming responsibilities

Time for action—installing tools to manipulate scalable digital content

What just happened?

XAML works fine with Silverlight 3

Time for action—creating the scalable digital content in XAML

What just happened?

Previewing and scaling XAML vector graphics

Time for action—testing the scalable digital content using XamlPad

What just happened?

Editing vector illustrations using Expression Design

Have a go hero—preparing scalable digital content for a new remake

Preparing a gaming framework

Time for action—creating Silverlight applications

What just happened?

Time for action—building and running Silverlight applications

What just happened?

Programming event handlers in the main page

Time for action—creating XBAP WPF applications

What just happened?

Time for action—building and running the XBAP WPF applications

What just happened?

Have a go hero—creating a prototype for the remake

Pop quiz—preparing the digital content

Summary

2. Working with 2D Characters

Creating an accelerated graphics viewport

Time for action—enabling hardware acceleration

What just happened?

Time for action—transforming media using the GPU

What just happened?

Caching rendered content

Scaling and rotating a vector-based illustration

Time for action—shaking many illustrations at the same time

What just happened?

Running loops faster

Accelerating transforms and blends

Using 2D vectors

Time for action—detecting GPU-acceleration problems

What just happened?

Understanding GPU acceleration limitations

Creating encapsulated object-oriented characters

Time for action—creating User Control classes to hold images

What just happened?

Time for action—displaying images and sprites

What just happened?

Showing a sprite on the screen

Defining the behavior

Understanding dimensions

Managing resolutions

Screen resolutions

Have a go hero—completing the animation

Pop quiz—working with sprites and the GPU

Summary

3. Combining Sprites with Backgrounds

The first remake assignment

Time for action—creating sprites based on XAML vector-based graphics

What just happened?

Defining the relative center point

Time for action—creating a specialized sprite management class

What just happened?

Taking full advantage of object-oriented capabilities

Preparing the classes for inheritance

Wrapping a UserControl to manage it

Time for action—creating a superclass for some characters

What just happened?

Time for action—creating the subclasses for the characters

What just happened?

Time for action—creating methods for the game loop

What just happened?

Creating objects on the fly

Managing dynamic objects

Time for action—writing the game loop

What just happened?

Animating multiple sprites

Managing a complex game loop

Time for action—detecting collisions between 2D characters

What just happened?

Using colors to paint sprites

Have a go hero—using backgrounds

Have a go hero—preparing Invaders 3000

Pop quiz—simplifying game loops

Summary

4. Working with 3D Characters

The second remake assignment

Time for action—exporting a 3D model without considering textures

What just happened?

XAML 3D models

Time for action—from DCC tools to WPF

What just happened?

XBAP WPF applications with 3D content

Time for action—displaying a 3D model in a 2D screen with WPF

What just happened?

Understanding the 3D world

X, Y, and Z in practice

GPU 3D acceleration

Understanding meshes

Time for action—using other XAML exporter for DCC tools

What just happened?

Time for action—adding 3D elements and interacting with them using Expression Blend

What just happened?

Interacting with 3D elements using Expression Blend

Silverlight and the 3D world

Time for action—exporting a 3D model to ASE

What just happened?

Time for action—installing Balder 3D engine

What just happened?

Time for action—from DCC tools to Silverlight

What just happened?

Displaying a 3D model in a 2D screen with Silverlight

Using 3D vectors

Have a go hero—working with multiple 3D characters

Pop quiz—3D models and real-time rendering

Summary

5. Controlling the Cameras: Giving Life to Lights and Actions

Understanding 3D cameras

Time for action—when seeing is believing

What just happened?

Controlling the position, the direction, and the up vector

Time for action—performing transformations

What just happened?

Defining and applying transformations

Time for action—zooming in and out

What just happened?

Controlling the perspective field of view

Controlling the clipping planes

Time for action—understanding perspective and orthographic cameras

What just happened?

Have a go hero—rotating cameras around a 3D model

Silverlight and the cameras

Time for action—controlling cameras on the fly

What just happened?

Understanding cameras related to matrixes

Have a go hero—working with many cameras

Pop quiz—working with cameras in a 3D world

Summary

6. Controlling Input Devices to Provide Great Feedback

Giving life to the game!

Time for action—creating a keyboard manager class

What just happened?

Using the keyboard

Time for action—programming the input control in the game loop

What just happened?

Time for action—mapping a gamepad to the keyboard

What just happened?

Understanding the gamepad as an input device

Time for action—using the gamepad

What just happened?

Time for action—creating a mouse manager class

What just happened?

Using the mouse

Time for action—using the mouse manager in the game loop

What just happened?

Time for action—using the gamepad as a mouse

What just happened?

Time for action—rotating cameras using input devices

What just happened?

Have a go hero—taking full advantage of the gamepad

Bridging with DirectInput capabilities

Time for action—installing the necessary SDKs

What just happened?

Considering deployment's additional requirements

Time for action—understanding sticks and buttons

What just happened?

Understanding the steering wheel as an input device

Time for action—testing the input devices with a DirectInput wrapper

What just happened?

Understanding the analog axis for a steering wheel

Understanding the analog axis for a gamepad

Time for action—adapting a joystick manager class

What just happened?

Time for action—using the steering wheel in the game loop

What just happened?

Using the joystick manager

Working with many input devices

Using other input devices

Have a go hero—using the Wiimote

Have a go hero—working with time, analog and digital values

Pop quiz—working with gaming input devices

Summary

7. Using Effects and Textures to Amaze

Dressing characters using textures

Time for action—adding textures in DCC tools

What just happened?

Time for action—exporting 3D models from DCC tools to Silverlight

What just happened?

Displaying a 3D model using textures in a 2D screen with Silverlight

Time for action—enveloping 3D models

What just happened?

Understanding textures

Repeating textures as tiles

Time for action—replacing textures

What just happened?

Have a go hero—playing with textures

Displaying lights, shadows, materials, and textures

Time for action—working with lights and understanding shadows

What just happened?

Understanding different kinds of lights

Have a go hero—creating effects using lights

Pop quiz—working with textures, materials, and lights

Summary

8. Animating 3D Characters

Invaders 3D

Time for action—adding a UFO

What just happened?

Time for action—creating a new game superclass to generalize time management capabilities

What just happened?

Time for action—specializing a game superclass

What just happened?

Time for action—creating a subclass for a 3D character

What just happened?

Using an Actor to represent a 3D character

Time for action—adding an Actor to the game

What just happened?

Moving 3D characters as Actors

Time for action—rotating 3D characters

What just happened?

Using the World matrix in order to perform transformations to meshes

Performing compound transformations

Time for action—scaling 3D characters

What just happened?

Using the World matrix in order to scale meshes

Have a go hero—creating a specialized XAML 3D character wrapper class

Using bones and skeletons

Time for action—animating models with skeletons and bones

What just happened?

Using skeletons and bones

Time for action—adding an Actor with skeletons and bones to the game

What just happened?

Understanding complex 3D animation techniques

Have a go hero—aliens walking

Pop quiz—animating 3D characters in a scene

Summary

9. Adding Realistic Motions Using a Physics Engine

Using physical principles in games to beat invaders

Time for action—installing Farseer Physics Engine

What just happened?

Time for action—adding parallel physics bodies and geometries to 3D characters

What just happened?

Creating bodies

Creating geometries

Updating a 3D model according to the associated body's properties

Time for action—working with forces, impulses, acceleration and speed

What just happened?

Specifying the gravitational force

Applying forces

Applying impulses

Working with a 2D physics simulator in the game loop

Time for action—working with torques and rotations

What just happened?

Applying torques

Translating 2D physics to a 3D world

Working with Farseer Physics Engine in XBAP WPF applications

Have a go hero—circles are not rectangles

Have a go hero—applying particle systems

Pop quiz—working with bodies, geometries, and physics

Summary

10. Applying Artificial Intelligence

Detecting collisions between 3D characters

Time for action—adding a second UFO

What just happened?

Time for action—detecting collisions between 3D characters

What just happened?

Working with advanced responses to collisions

Controlling collision moments using events

Working with collision categories

Using engines to improve collision detection precision

Have a go hero—3D Moon Lander

Using artificial intelligence in games to control 3D characters

Time for action—using chasing algorithms

What just happened?

Working with states for the characters

Pursuing an enemy

Generating and controlling random situations

Time for action—using evasion algorithms

What just happened?

Evading an enemy

The advantages of using an AI engine

Have a go hero—adding complex AI algorithms

Pop quiz—working with collision detection and artificial intelligence

Summary

11. Applying Special Effects

Working with 3D characters in the background

Time for action—adding a transition to start the game

What just happened?

Time for action—creating a low polygon count meteor model

What just happened?

Time for action—from 3D Studio Max to Silverlight

What just happened?

Time for action—creating a subclass for a 3D meteor

What just happened?

Time for action—creating and controlling a meteor rain

What just happened?

Advantages of using multiple physics engines

Time for action—simulating fluids with movement

What just happened?

Simulating waves

Time for action—creating a subclass for a complex asteroid belt

What just happened?

Using an Actor to represent a wave in the background

Time for action—adding an asteroid belt background to the game

What just happened?

Working with encapsulated physics controllers

Have a go hero—adding dissolutions, fire, smoke, and explosions

Pop quiz—working with special effects

Summary

12. Controlling Statistics and Scoring

Showing gauges and scorecards

Time for action—using special fonts

What just happened?

Embedding fonts in the project

Time for action—creating a score gauge showing text

What just happened?

Using Expression Blend to create 2D gauges

Time for action—showing a score gauge

What just happened?

Calculating, saving, and showing statistics

Time for action—creating a bonus gauge showing text

What just happened?

Time for action—creating a fuel gauge

What just happened?

Time for action—creating a remaining lives gauge

What just happened?

Using a panel to show many aligned user controls

Time for action—showing and updating multiple gauges

What just happened?

Working with multiple gauges

Have a go hero—adding gauges for multiplayer games

Pop quiz—working with special fonts and gauges

Summary

13. Adding Environments and Scenarios

Working with levels and stages

Time for action—installing Windows Presentation Foundation Pixel Shader Effects Library

What just happened?

Time for action—adding screens to organize the game

What just happened?

Time for action—applying transition effects

What just happened?

Rendering a WriteableBitmap and using it as an ImageBrush

Creating a StoryBoard

Working with a StoryBoard to animate an effect

Time for action—changing the transition effect

What just happened?

Exploring transition effects

Working with multiple transition effects

Time for action—using skill levels

What just happened?

Time for action—changing and improving the environments according to the skill level

What just happened?

Retrieving values for parameters using LINQ to XML

Time for action—saving configurations

What just happened?

Have a go hero—displaying amazing menus with configuration options

Have a go hero—showing stages

Pop quiz—avoiding the GAME OVER screen

Summary

14. Adding Sound, Music, and Video

Hear the UFOs coming

Time for action—installing tools to manipulate videos

What just happened?

Time for action—preparing a video to use it in Silverlight

What just happened?

Video formats supported in Silverlight 3

Using free applications to convert video formats

Time for action—reproducing videos

What just happened?

Locating videos in a related web site

Stretching videos

Taking advantage of GPU acceleration to scale videos

Time for action—applying projections

What just happened?

Time for action—animating projections

What just happened?

Working with a StoryBoard in XAML to animate a projection

Time for action—solving navigation problems

What just happened?

Time for action—reproducing music

What just happened?

Time for action—preparing audio files to use them in Silverlight

What just happened?

Audio formats supported in Silverlight 3

Using free applications to convert audio formats

Time for action—creating a class to handle audio concurrency

What just happened?

Using a round robin algorithm to work with concurrent sounds

Time for action—generating sounds associated to game events

What just happened?

Have a go hero—animating the game over scene

Have a go hero—configuring sounds and music

Pop quiz—working with audio and video in Silverlight 3

Summary

A. Pop quiz—Answers

Index

累计评论(0条) 0个书友正在讨论这本书 发表评论

发表评论

发表评论,分享你的想法吧!

买过这本书的人还买过

读了这本书的人还在读

回顶部