Beginning 3D Game Programming
暫譯: 3D 遊戲程式設計入門
Tom Miller
- 出版商: SAMS
- 出版日期: 2004-12-13
- 定價: $1,190
- 售價: 6.0 折 $714
- 語言: 英文
- 頁數: 99998
- 裝訂: Paperback
- ISBN: 0672326612
- ISBN-13: 9780672326615
-
相關分類:
3D 列印、遊戲設計 Game-design
立即出貨(限量) (庫存=2)
買這商品的人也買了...
-
$900$711 -
$880$695 -
$690$587 -
$750$638 -
$780$616 -
$490$382 -
$540$427 -
$780$616 -
$2,550$2,423 -
$650$514 -
$650$507 -
$7503D for the Web: Interactive 3D animation using 3ds max, Flash and Director (Paperback)
-
$620$490 -
$580$452 -
$880$748 -
$580$493 -
$680$646 -
$550$468 -
$490$382 -
$880$695 -
$580$458 -
$390$308 -
$890$757 -
$780$663 -
$650$507
商品描述
Description:
There are many programming hobbyists who write 2D games but there are far fewer that grasp the concepts of 3D programming. Although there are also quite a few ¿game development¿ books on the market, few deal with 3D game development. Those that do are mainly aimed at advanced readers. This book will provide a practical, example driven approach to learning the unique art of 3D Game Development that even the beginner can grasp. It won¿t get bogged down in page after page of boring theory but instead will teach through many interesting hands on examples. Tom Miller brings years and years of 3D game programming to the table and couples that with an engaging writing style to mentor readers in the intricacies of game development. The book starts out with a crash course in game programming concepts and then progresses into developing 3 different types of games with many useful tips, notes, and cautions along the way. This title will serve as a useful guide to either current 2D game developers or programmers that want to learn to program games.
Table of Contents:
Introduction.
So You Want to be a Game Developer.
Who Should Read This Book?
Why Would I Want to Use the .NET Framework.
Why This Book?
I. INTRODUCTION TO MICROSOFT .NET.
1. Game Development and Managed Code.
What Is .NET?
What Is Managed Code?
Writing Code with the Microsoft Visual Studio .NET 2003 IDE.
The C# Code.
The VB .NET Code.
Compiling .NET Code on the Command Line.
Introducing Game Development.
The Developers.
The Process.
The Tools.
Summary.
II. INTRODUCING GRAPHICS, GAME.
2. Planning Your First Game.
Coming Up with the Game Idea.
Detailing the Proposal.
Understanding the Need for a 3D Game.
The Specification.
Summary.
3. Understanding the Sample Framework.
Creating Your Project.
Enumerating All Device Options.
Summary.
4. Show Something Onscreen!
Creating Your Device.
Time to Render.
Loading and Rendering a Mesh.
Adding a Camera to Your Scene.
Summary.
5. Finishing Up the Support Code.
Understanding the High-Resolution Timer.
Handling Lost Devices.
Adding Frame Rate Output.
Designing a UI Screen.
Designing a Button.
Summary.
6. Implementing the User Interface.
Designing the Main Menu.
Plugging into the Game Engine.
Selecting Your Character (Loopy).
Updating the Game Engine with This New Screen.
Summary.
7. Implementing the Player and Blocks.
Writing the Player Object.
Moving the Player.
Designing the Blocks.
Summary.
8. Implementing the Level Object.
Implementing the Level.
Controlling Player Movement.
Handling Level Updates.
Summary.
9. Putting the Pieces Together.
Including the Player.
Hooking Up the Level.
Implementing the Quit Screen.
Finishing Up.
Summary.
III. BASIC MATH PRINCIPLES.
10. A Quick 3D-Math Primer.
2D? 3D? What Are You Talking About?
Left-handed? Right-handed?
Using These 3D Points.
Manipulating 3D Objects.
Translating (Moving) Objects.
Scaling.
Rotation.
Coordinate Systems.
Math Structures.
Vectors.
Matrices.
Summary.
IV. INTERMEDIATE GRAPHICS, PEER TO PEER NETWORKING, GAME.
11. Now Let's Really Get Started.
Tankers-The Next Game Idea.
Detailing the Proposal.
Creating the Tankers Project.
Getting the Project Rendering.
Building an Object Pool for Textures.
Summary.
12. Developing a More Advanced User Interface.
Using Blockers Base Classes.
Adding New Base Classes.
Implementing the Main Screen.
Rendering Your 3D Model with Your User Interface.
Summary.
13. Rendering a Realistic Tank.
Understanding a Mesh Hierarchy.
Loading a Tank Hierarchy.
Rendering a Mesh Hierarchy.
Manipulating the Tanks.
Tank Properties.
Creating the Camera Class.
Summary.
14. The Sky? A Level? The Player!
A World Without a Sky Would Be Black.
You Have a Sky, but the Tank Can't Drive There.
Someone Has to Control the Tanks.
IMoveableObject Indeed.
A Basic Collision Detection.
Summary.
15. Ready. Aim. Fire!
Implementing the Ammunition Class.
A Bullets Collection.
Finishing Up the Player.
Adding Sound.
Summary.
16. Playing Alone Isn't Fun.
Using DirectPlay.
Hosting the Session.
Joining the Session.
The Event Handlers.
Sending and Receiving Data.
Cleaning Up Resources.
Summary.
17. Finally, Finishing Tankers.
Plugging into the Game Engine.
Rendering the Game.
Summary.
V. ADVANCED GRAPHICS, CLIENT/SERVER NETWORKING, GAME.
18. Adding Special Effects.
Implementing a Basic Particle System.
Rendering the Particle System.
Putting the Pieces Together.
Summary.
19. Building Your Own Game.
Formulating the Idea.
Creating Your Project.
Designing the User Interface.
Summary.
20. The Programmable Pipeline.
Defining the Programmable Pipeline.
Using HLSL.
Writing a Vertex Shader.
Declaring Variables in HLSL and Intrinsic Types.
Adding Realism Using Shading.
Adding the Pixel Shader.
Summary.
21. Controlling t.e Level of Detail.
Simplifying a Mesh.
Using a Simplification Mesh.
Controlling the Level of Detail Using a Progressive Mesh.
Summary.
22. Using Render Targets for Effects.
Rendering a Track and Multiple Go-Karts.
Creating Render Targets and Surfaces.
Rendering a Scene to a Render Target.
Displaying the Rear-View Mirror.
Summary.
23. Understanding the High-Level Shader Language.
Understanding Limits on Older Shader Models.
Adding Specular Highlights to Kart.
Making Specular Highlights Per Pixel.
Summary.
24. Performance Considerations.
The Event Model and Managed DirectX.
Native Assembly Generation.
The Horrors of Boxing.
The Speed of Managed DirectX.
Understanding the Cost of Methods.
Summary.
VI. APPENDIX.
Appendix A. Developing a Level Creator.
Writing the Level Creator.
Index.
商品描述(中文翻譯)
**描述:**
有許多程式設計愛好者會撰寫 2D 遊戲,但掌握 3D 程式設計概念的人卻少之又少。雖然市場上也有不少「遊戲開發」的書籍,但專注於 3D 遊戲開發的卻不多,而這些書籍大多針對進階讀者。本書將提供一種實用的、以範例為驅動的學習方法,讓即使是初學者也能掌握 3D 遊戲開發的獨特藝術。它不會在一頁又一頁的乏味理論中拖延,而是通過許多有趣的實作範例來教學。Tom Miller 帶來了多年 3D 遊戲程式設計的經驗,並結合引人入勝的寫作風格,指導讀者了解遊戲開發的複雜性。本書從遊戲程式設計概念的速成課程開始,然後進入開發三種不同類型的遊戲,並在過程中提供許多有用的提示、註解和警告。本書將成為當前 2D 遊戲開發者或希望學習遊戲程式設計的程式設計師的有用指南。
**目錄:**
**引言。**
所以你想成為一名遊戲開發者。
誰應該閱讀本書?
為什麼我想使用 .NET Framework。
為什麼選擇這本書?
**I. 微軟 .NET 簡介。**
**1. 遊戲開發與管理代碼。**
.NET 是什麼?
管理代碼是什麼?
使用 Microsoft Visual Studio .NET 2003 IDE 撰寫代碼。
C# 代碼。
VB .NET 代碼。
在命令行編譯 .NET 代碼。
介紹遊戲開發。
開發者。
過程。
工具。
總結。
**II. 介紹圖形、遊戲。**
**2. 計劃你的第一個遊戲。**
想出遊戲點子。
詳細說明提案。
理解 3D 遊戲的需求。
規格。
總結。
**3. 理解範例框架。**
創建你的專案。
列舉所有設備選項。
總結。
**4. 在螢幕上顯示內容!**
創建你的設備。
渲染時間。
加載和渲染網格。
向場景中添加相機。
總結。
**5. 完成支援代碼。**
理解高解析度計時器。
處理丟失的設備。
添加幀率輸出。
設計 UI 螢幕。
設計按鈕。
總結。
**6. 實現用戶界面。**
設計主菜單。
插入遊戲引擎。
選擇你的角色(Loopy)。
使用這個新螢幕更新遊戲引擎。
總結。
**7. 實現玩家和方塊。**
撰寫玩家物件。
移動玩家。
設計方塊。
總結。
**8. 實現關卡物件。**
實現關卡。
控制玩家移動。
處理關卡更新。
總結。
**9. 將各部分組合在一起。**
包括玩家。
連接關卡。
實現退出螢幕。
完成。
總結。
**III. 基本數學原則。**
**10. 快速 3D 數學入門。**
2D?3D?你在說什麼?
左撇子?右撇子?
使用這些 3D 點。