万本电子书0元读

万本电子书0元读

顶部广告

XNA 4 3D Game Development by Example: Beginner's Guide电子书

售       价:¥

4人正在读 | 0人评论 9.8

作       者:Kurt Jaegers

出  版  社:Packt Publishing

出版时间:2012-09-25

字       数:97.1万

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

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

为你推荐

  • 读书简介
  • 目录
  • 累计评论(0条)
  • 读书简介
  • 目录
  • 累计评论(0条)
This book is a step-by-step tutorial that includes complete source code for all of the games covered. It adopts an engaging style to teach all the game development concepts. Each block of code is explained, and game development concepts are diagrammed and covered in detail. Each game begins with a concept de*ion and concludes with suggestions for expanding on the finished game. This book is intended for readers who want to create 3D games using the XNA Framework. Basic knowledge of the C# programming language and 2D XNA concepts are helpful, but not required.
目录展开

XNA 4 3D Game Development by Example Beginner's Guide

Table of Contents

XNA 4 3D Game Development by Example Beginner's Guide

Credits

About the Author

About the Reviewers

www.PacktPub.com

Support files, eBooks, discount offers and more

Why Subscribe?

Free Access for Packt account holders

Instant Updates on New Packt Books

Preface

What this book covers

What you need for this book

Who this book is for

Conventions

Time for action – heading

What just happened?

Pop quiz – heading

Have a go hero – heading

Reader feedback

Customer support

Downloading the example code

Errata

Piracy

Questions

1. Introduction to XNA

System requirements

Installing the Windows Phone SDK

Time for action – installing Windows Phone SDK

What just happened?

Speller – Our first XNA game

Time for action – creating an XNA project

What just happened?

Managing content

Time for action – creating content assets

What just happened?

Member variables

Time for action – declaring new member variables

What just happened?

The Game1 constructor

Initialization

Time for action – customizing the Initialize() method

What just happened?

Loading content

Time for action – creating a square texture

What just happened?

Updating

Time for action – customizing the Update() method

What just happened?

The Draw() method

Time for action – drawing Speller

What just happened?

Helper methods

Time for action – words and letters

What just happened?

Time for action – completing the Speller project

What just happened?

Have a go hero

Summary

2. Cube Chaser – A Flat 3D World

Designing the game

3D coordinates

Creating the project

Time for action – creating the Cube Chaser project

What just happened?

Our view of the world

Time for action – beginning the Camera class

What just happened?

The Projection matrix

Looking at something

Time for action – implementing a look-at point

What just happened?

The View matrix

Time for action – the View matrix

What just happened?

From the ground up

Time for action – creating the Maze classes

What just happened?

Drawing the floor

Time for action – drawing the floor

What just happened?

Moving around

Time for action – expanding the Camera

What just happened?

Time for action – letting the player move

What just happened?

Summary

3. Cube Chaser – It's A-Mazing!

Maze generation

Time for action – defining a MazeCell

What just happened?

Time for action – generating the Maze class

What just happened?

Constructing the walls

Time for action – building walls

What just happened?

Time for action – drawing the walls

What just happened?

Solid walls

Time for action – bouncing off the walls

What just happened?

Have a go hero

Summary

4. Cube Chaser – Finding Your Way

The cube

Time for action – placing the cube

What just happened?

Rotating the cube

Time for action – rotating the cube

What just happened?

Matrices – big scary math things?

The translation matrix

The rotation matrix

The scale matrix

Combining matrices

What does it all mean?

Positioning the cube

Time for action – randomly positioning the cube

What just happened?

Catching the cube

Time for action – catching the cube

What just happened?

Have a go hero!

Summary

5. Tank Battles – A War-torn Land

Creating the project

Time for action – creating the Tank Battles project

What just happened?

An arc-ball camera

Time for action – the ArcBallCamera class – part 1

What just happened?

Time for action – finishing the ArcBallCamera class

What just happened?

Building the playfield

Height maps

Generating the terrain

Time for action – generating the terrain

What just happened?

Height data

Time for action – adding the ReadHeightMap() method

What just happened?

Building vertices

Time for action – adding the BuildVertexBuffer() method

What just happened?

Building the indices

Time for action – the buildIndexBuffer() method

What just happened?

Let's see the terrain already!

Time for action – drawing the terrain

What just happened?

Adding texture – a gentle introduction to HLSL

Declaring variables

Time for action – HLSL declarations

What just happened?

The vertex shader structures

Time for action – Vertex Shader Input and Output definition

What just happened?

The vertex shader

Time for action – the vertex shader

What just happened?

The pixel shader

Time for action – the pixel shader

What just happened?

Time for action – utilizing Terrain.fx

What just happened?

Moving the camera

Time for action – moving the camera with the mouse

What just happened?

Summary

6. Tank Battles – The Big Guns

Adding the tank model

Time for action – adding the tank model

What just happened?

Building tanks

Time for action – building the Tank class

What just happened?

Bringing things down to earth

Time for action – terrain heights

What just happened?

Animating the tank

Time for action – tank animation

What just happened?

The combatants

Time for action – positioning tanks

What just happened?

Summary

7. Tank Battles – Shooting Things

Interface components

The UIWidget class

Time for action – creating the UIWidget class

What just happened?

UITextblocks

Time for action – creating UITextblocks

What just happened?

UIButtons

Time for action – creating buttons

What just happened?

Working with our UI objects

Time for action – adding the UIHelper class

What just happened?

Creating the user interface

Time for action – creating the UI

What just happened?

Responding to interface events

Time for action – responding to events

What just happened?

Firing shots

Time for action – ShotManager-part 1

What just happened?

Particles in 3D

Billboarded particles

Time for action – the Particle class-part 1

What just happened?

Time for action – finishing the Particle class

What just happened?

Managing particles

Time for action – the ParticleManager class

What just happened?

HLSL for our particles

Time for action – building Particles.fx

What just happened?

Adding particles

Time for action – implementing particles

What just happened?

Summary

8. Tank Battles – Ending the War

Managing game states

Time for action – implementing a title screen

What just happened?

From Playing to GameOver

Time for action – detecting hits

What just happened?

Managing turns

Time for action – managing turns

What just happened?

Visual improvements

Lighting

Time for action – computing normals

What just happened?

Diffuse lighting

Time for action – HLSL for lighting

What just happened?

Ambient lighting

Time for action – using ambient light

What just happened?

Multitexturing

Time for action – multitexturing

What just happened?

Have a go hero!

Summary

9. Mars Runner

Design of Mars Runner

Getting started with the GSM sample

Time for action – creating the Mars Runner solution

What just happened?

The GameScreen abstract class

Customizing the default ScreenManager screens

Time for action – customizing the BackgroundScreen class

What just happened?

Time for action – updating the menu

What just happened?

Adding a new screen

Time for action – creating the MarsRunnerPlayScreen class

What just happened?

A new camera

Time for action – the stationary camera

What just happened?

Creating the background

Time for action – creating a skybox

What just happened?

Building the Martian surface

Simplified heightmaps

Time for action – beginning the MarsTrack class

What just happened?

Time for action – generating the track

What just happened?

Drawing the track

Time for action – drawing the track

What just happened?

Summary

10. Mars Runner – Reaching the Finish Line

Abstracting support for 3D models

Time for action – the GameEntity class

What just happened?

Building the rover

Time for action –building the rover

What just happened?

Time for action – accepting user input

What just happened?

Animating the planet

Time for action – moving the world

What just happened?

Animating the rover

Time for action – animating the rover

What just happened?

Crashing into craters

Time for action – detecting craters

What just happened?

Adding an enemy

Time for action – the basic flying saucer

What just happened?

Time for action – flying the saucer

What just happened?

Shots and collisions

Time for action – Shot classes

What just happened?

Time for action – the ShotManager class

What just happened?

Enemy shots

Time for action – enemy shots

What just happened?

Time for action – player shots versus aliens

What just happened?

Time for action – enemy shots versus the rover

What just happened?

Scoring

Time for action – scoring

What just happened?

Time for action – the GameOver screen

What just happened?

Sound effects

Time for action – building the SFXManager class

What just happened?

Triggering sounds

Time for action – playing sound effects

What just happened?

Have a go hero!

Summary

Index

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

发表评论

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

买过这本书的人还买过

读了这本书的人还在读

回顶部