3DXO - The Finest 3D Resources
Locale Page...  Global  |  Germany
Member access...Lost Password?    Join Now!

3DXO.COM is the new home of CYGAD's 3DXTRA!
Please use and bookmark only this resource from now!
Quick Search
Advertisement
mySOULS - Share your 2nd life!


Symbols
New
Updated
New & Updated
Send News    Add URL / Entry    
Game Dev: Books
Books about 2D/3D art design, charactere creation, level design, engine design, physics and AI programming especially for game developers, for beginners and professionals
AVG Rating: 8.00
  Added 01 Jun 05   Updated 08 Jan 09
Programming a Multiplayer FPS in DirectX (Game Development Series)  
36.46 $
New from 28.00 $
10 Used from 8.42 $
Buy Now!
Author Vaughan Young
Publisher Charles River Media
Publication Date 2004-12-20
Paperback - 400 Pages
ISBN 1584503637

Amazon Reviews
amazon.com:
If you have experience with C++ and DirectX and have always wanted to program your own game, this is the book for you. Programming a Multiplayer FPS in DirectX takes you from the basic game design to a fully functioning game! All of the source code, assets, and tools are included–you just work through the tutorial-based chapters and watch the game come to life as you develop it. And as new features are added, you can begin playing with them to see them in action.

Following a typical game development process, the book is separated into two distinct parts: Part One focuses on the design and development of the game engine, and Part Two concentrates on putting the game together using the engine. The theory has been kept to a minimum, so that you are following a hands-on approach and adding new functionality to your engine as you proceed. In the first part, you’ll learn about the many facets of DirectX, C++, and object-oriented programming. You’ll also learn how to design the engine and put the infrastructure into place. The next chapters will each add a new module to your engine including input, scripting, 3D rendering, sound, networking, and scene management. The second part covers the final development stages, including everything from game play to player management; it culminates with the complete multiplayer FPS game.

Throughout the book you’ll learn key topics that will bring you up to speed with industry proven techniques, while improving your confidence as a developer. And because DirectX is the most prevalent game development tool available, once you master this project, you’ll have the skills you need to create a variety of games!

FEATURES * Provides a detailed, step-by-step approach through the creation of a complete multiplayer FPS

* Covers a variety of key topics beyond the basics needed for the game creation, including occlusion culling and scene management

* Prepares users with the skills needed to code using the latest DirectX API

* Includes a companion CD-ROM with all the source code and assets for the complete game, the DirectX SDK, and other useful tools

On the CD! * All of the source code and assets used to create the complete game

* The DirectX SDK 9.0c installation package used to develop the code in the book

* Panda DirectX Exporter (by Andy Tather) to use in conjunction with 3ds max to produce meshes in .x file format

* Paint Shop Pro fullfeatured, trial version– great for creating textures

* Improved Collision Detection Article (by Kasper Fauerby): provides more details about the collision detection algorithm used in the sample game

*************************************** Take your game development to the next level. After reading this book, you’ll know how to program your own FPS game.All submissions must be received by November 4, 2005. Final prizes for the competition include the entire Game Programming Gems Series (Volumes 1 – 5), valued at $350. Others are still being added. ***************************************

Similar Products
3D Math Primer for Graphics and Game Development
New from 27.99 $
Used from 28.00 $
Programming Game AI By Example
New from 26.77 $
Used from 20.98 $
[ Add a Comment ]Amazon Customer Comments
Programming a multiplayer FPS in directX - Oh really?Rating: 2
24 Mar 2008 @ amazon.com

To start with, I would say the reader needs to have some basic knowledge of DirectX before reading this book.

This is not a book that "teaches DirectX with the goal of creating a First Person Shooter". It’s a book where the author explains how his game engine/framework he built on DirectX works. It’s not the type of book that explains to you step by step what is going on and tells you to add this piece of code here, which in my opinion, is the best way of teaching something. Rather, it’s a book that lets the reader open up the source code in the CD/DVD and expect him to figure out where the code the author is talking about is located.

Furthermore, the source code won’t even compile cleanly in modern versions of visual studio.

Now, if you want to learn how an FPS game engine/framework was created, perhaps you might consider reading this book. I would recommend you look forth to modern game engines and forget about the book, as the end game is not all that good anyways...

So basically what I’m saying here is: 1. This is not a DirectX tutorial for newbies 2. The code/game is rather outdated.

The author knows what he’s talking about, though. The actual code is pretty good looking. He’s got a great concern for proper memory allocations and memory cleanups. The game loop he designed is pretty consistent too, and very well thought of. My only regret is that, in my opinion, the whole "tutorial" part of the book was disastrously focused, which is a shame.
Godd introduction, complete coverageRating: 4
11 Sep 2007 @ amazon.com

In general I’m very pleased with the book "Programming a multiplayer FPS in directX". It provides a very nice introduction on how to approach the task of building a complex 3d application for user with basic knowledge of C(++) and DirectX. Structured programming is important! It is nice that one has such a concrete result at the end of the book. The only drawback is that it could have a little more in depth treatment of certain areas, but hey, it is already almost 500 pages :)
Interesting book; good analysisRating: 4
24 Jul 2007 @ amazon.com

At my school we used this book for our networking class. (I had been begging our teacher to show us some directPlay stuff... yes, I’m aware that directPlay is ugh in terms of networking, but, it was a lot better than learning some java networking stuff. At least to me).

This book was an invaluable tool for designing my networking system. I basically gutted this networking system and stacked on some variable size packets that I studied from one of the Lamothe (actual author:Todd Baron ) books. (weird book, guy talks about his exploits in ultimate online for like, almost a chapter before he goes on to explain about how you can hack the networking system for exploits.

This book shows you how to implement a peer to peer network and then treat it like a server/client system. It’s an interesting (I chose to just go strictly peer-to-peer in my system) approach. And I read in one of the Game Programming Gems a way to bypass some of the connectivity issues with peer to peer networks.

Regardless, this book is an EXCELLENT study of networking for games. I read the networking chapter probably 20x during our project and it took me quite a while to figure out exactly what he was doing with it. In the end, it’s a logical system that works fairly decently.

We didn’t use the rest of the code in the book too much. Some of the other people in my class modified the FPS game to do other things (made a shooting gallery, other’s made some text based games on the networking code, etc).

The source code is useful and there is an update available for it (his precious linked list had a memory leak in it... he really harps on about it).

If you have never designed a game system before. This book is going to be a tremendous help. It teaches a bit about design patterns without all the unnecessary mumbo-jumbo, and how they directly relate to game programming and how they’re useful (helloooo singleton).

The code is in visual studio 6 I believe, and you have to set the default project to the actual project and not the engine to get it to run. Also, if your hardware doesn’t support hardware vertex buffers (you have integrated graphics, we had a couple people on the team with this issue) you have to change one of the directX intializers to something else to account for this (can’t remember the call now, look at some other directX init calls from somewhere else and you can find it).

He goes into quite a bit of detail about each topic and the basics, and then delves down into the design of each system. It’s very methodical and well thought out. AND YOU GET SOMETHING WORKING AT THE END!

Do not get this book if:
You are new to C++(you better have a CRYSTAL clear understanding of pointers and OOP, classes etc).

You are not interested in engine design.

You hate directX, or directPlay.

You hate max; he uses 3dsMax to make the scene files etc.

You are an industry professional that has a basic understanding of how a game engine works. This is definitely a n00b book.

You expect to get your hand completely held at each step. He does skip over some details that are easily discovered if you delve a little into the MSDN or any other online resource.

Get this book if:
You are incredibly interesting in engine design and want to get your feet wet; as well as learn some engine design in the process.

You’re interested in any of the systems this book covers ( I can really only attest to the networking system, and that he uses directPlay, which is in sunset mode).

Interested in basic modular programming and looking to expand the code in the book to meet your needs or to experiment with. It is an incredibly useful base to start with.

Are extremely comfortable in c++/directX and are interested in expanding your knowledge and it’s applications into games.

Overall, the book was a good purchase and is an excellent stepping stone into engine design. It has been very useful in my future projects since I’ve used this book in my course work.
Useful book, really bad FPS gameRating: 4
05 Feb 2007 @ amazon.com

I’ve enjoyed reading this book. It effectively shows you how to write a very basic first person shooter in directx. Well done. It briefly introduces rendering, a simple scripting system, peer-to-peer networking, handling user input, scene management, collision detection, sound effects, and more. Not bad. The code is fine, I had no problems compiling it in VS2005 (check the authors website for the latest code though) and I learned a lot from reading the book and going through the code. In short, I am glad to have bought and read this book and I do recommend it to others.

The book does have some drawbacks though. I feel that the actual game that is built in this book is embarrasingly bad. The networking system, rendering system, user interface, and everything else about it are bare-bones functional, but certainly not good enough that you’d want to encorporate them into your own game. I suppose that the thought is that you should first learn to build a Yugo before you learn to build a Ferrari, but personally I’d rather just learn to build the ferrari right off the bat :) Oh, and why must the graphics suck so badly? I realize that it doesn’t necessarily impact the goal of learning the various topics, but seriously, how hard would it have been to at least provide a decent character model, or some decent textures and lighting and so forth?

One last thing. The book assumes a familiarity with C++ and to a lesser extent with Directx, so if you are brand new to either of those, the book will be pretty challenging to follow.
Man does this book suck!Rating: 1
13 Jul 2006 @ amazon.com

This book is terrible! You read through the whole thing, and you don’t even learn anything!



I would strongly recommend people not to buy this book.



Otherwise, you just wasted 30 dollars on worthless bs.
Man does this book suck!Rating: 1
12 Jul 2006 @ amazon.com

This book is terrible! You read through the whole thing, and you don’t even learn anything!

I would strongly recommend people not to buy this book.

Otherwise, you just wasted 30 dollars on worthless bs.
Good but not perfectRating: 4
05 Jul 2006 @ amazon.com

This book gives the reader a good general understanding of how networked gameprogramming works, and also a good bit of information about the internals of a complete game engine. The downside about this book is that it uses mixed hardware/software vertex processing which results in noncompatable programs with my laptop, however, if you change that to only software and recompile every demo then it works greate (A setting in CreateDevice()...), but slow (on my laptop...),, the occlusion checks ain’t the best, and the partitioning on load is slow,, slow as in - you cant augment the code for profiling or it will be runnig for more then 15 minutes on a 1.03GHz laptop... ("more then" due to the fact that i aborted it....) and the use of 3DsMAX files as levelmodels... and the occlusions based not on the real environement but on objects placed in the scene.. (invisible...)...

Except the minor none-perfect things this book is GREATE!!! AND a BIG NOTE: The minors noted above ain’t to bad,, it just looks like much when it’s writen down,, and I think that this book is a good read for everyone,, and I do REALY recomend it... however, i give it 4 of 5 due to the recomile things and the occlusion,,, however, this book ain’t about perfekt rendering,, it’s about connection a game to the internet :)... and it gives you MORE then plenty :)
A perfect book for beginners/intermediate level programmersRating: 5
06 May 2006 @ amazon.com

This is a PERFECT book for intermediate level programmers that have a decent
knowledge of C++ and basic knowledge of DirectX and have always wanted to build their own 3d game.

This is the only book (as far as i know) that guides you from the beginning, and explains
every important part of the engine code.
in every chapter new features are added to the engine and in the end
you have a full working FPS engine!

Great!

Author explains not only usual stuff that can be seen in every other book (how to setup a DirectX or use DirectInput), but also goes into detail on how to design your engine writing
a reusable code and build that can later be easily improved.

Topics covered are Engine Design, Engine Control, Scripting, Rendering, Sound, Networking, Materials and Meshes, Objects, Scene management etc.

I wish that all programming book were written this way.

Absolutely recommended.
A perfect book for beginners/intermediate level programmersRating: 5
06 May 2006 @ amazon.com

This is a PERFECT book for intermediate level programmers that have a decent

knowledge of C++ and basic knowledge of DirectX and have always wanted to build their own 3d game.



This is the only book (as far as i know) that guides you from the beginning, and explains

every important part of the engine code.

in every chapter new features are added to the engine and in the end

you have a full working FPS engine!



Great!



Author explains not only usual stuff that can be seen in every other book (how to setup a DirectX or use DirectInput), but also goes into detail on how to design your engine writing

a reusable code and build that can later be easily improved.



Topics covered are Engine Design, Engine Control, Scripting, Rendering, Sound, Networking, Materials and Meshes, Objects, Scene management etc.



I wish that all programming book were written this way.



Absolutely recommended.
Excellent book, with only minor failingsRating: 5
09 Nov 2005 @ amazon.com

The book is true to its title. It takes you through the complete development of a First Person Shooter game. The final game is simple, and the entire project is approximately 10 000 lines of C++ code, but it does illustrate almost all the required functionality.

I have two, and only two, minor criticisms of the book. The first is that the actual English writing of the book is sometimes poor. Sentences are grammatically correct, but sometimes fail to be natural. Analogies are very basic, and sometimes incorrectly applied. In fairness, the author sticks to simple English most of the time, so the discussions are fairly clear. The book would be more readable if the author were a better writer. I consider this a fair criticism, since some technical books do have good writing.

My second criticism is that the book fails to cover a few fundamental topics in greater detail. Specifically, these topics include collision detection, animation, and physics. The author includes an article about collision detection on the CD, but this does not make up for the lack of discussion in the book. Animation is so fundamental to almost any 3D game that it should have had more pages dedicated to it. Quite frankly, the author should have used the pages that were used for explanations of C++ topics (such as templates) to cover advanced animation material. I can forgive the missing physics material because it is such a vast topic, and any detailed discussion would have added hundreds of pages. In fairness to the book, it is a testament to the quality of the book that it is only 500 pages long.

If you are a competent programmer, and you have some experience with DirectX, this book delivers on its promises.
One of the few useful and great books for learning game programmingRating: 4
14 Sep 2005 @ amazon.com

As with typical CRM publications, this book promises much but delivers less, BUT, this is an BIG BUT, that shouldn’t stop you from buying it, because it is one of the few good books.

You might have seen books featuring so-called "3D engine design," but most of them either 1. focus too much on theory, 2. too detailed in coding, or 3. completely useless. But no, not this book. After following each chapters, you’ll get a good understanding of a true 3D engine, and not to mention A WORKING FINISHING PRODUCT. Need I say more?

On the other hand, not enough advanced topics are covered, but I suppose you can learn those from other 3D books, but it would be good to included them, at least in some level a lot of the techniques are included in the DX toolset already.

I gave it 4 stars because it uses linked-list, which is very common in concept, but pretty slow when dealing with memory performance issues. Several miss-coded memeory leaks are corrected on the online support site, but overall it’s great, one of the few.
A great bookRating: 5
17 Aug 2005 @ amazon.com

This book was really helpful on engine creation with DirectX 9. You should have a little knowledge of DirectX 9 in my opinion. Just for the mere fact that some topics arn’t covered in 100% detail (but then again when is any book like that?) so it’d be good to have some background with DirectX 9, if you don’t you shouldn’t have that much trouble.
First Person Shooter Using DirectX 9Rating: 5
19 Jul 2005 @ amazon.com

At last, a book on 3D gaming that isn’t an excuse for re-iterating the DirectX SDK/Help docs.

Yes, it’s the real deal.

I’m sure that anyone with an interest in this subject will know that it isn’t for the faint hearted.
If you want to "understand the code" and not simply use the complete project for your own levels, you certainly have your work cut out.

That said, the author takes you on a well guided and informative tour of all the aspects required to create an "outdoor" multiplayer (LAN) shooter.

A great introduction to what really goes into it all.

Recommended.
A manual for intermediate to advanced computer programmers familiar with C++ and DirectXRating: 5
05 Jul 2005 @ amazon.com

Programming a Multiplayer FPS in DirectX is a manual for intermediate to advanced computer programmers familiar with C++ and DirectX who desire to program their own first-person shooter game for multiple players. Breaking down the typical game development process into its component parts, Programming a Multiplayer FPS in DirectX covers such topics as engine design and control, rendering, sound issues, networking, scene management, classifications of weapons, and more. Sample code along extensive instructions that cover both the abstract and concrete programming issues behind each topic make Programming a Multiplayer FPS in DirectX as user-friendly as a game programming guide can be. An accompanying CD-ROM is packed with source code, a DirectX SDK 9.0c installation package used to develop code in the book, Panda DirectX Exporter to use with 3ds max to produce meshes in .x file format, PaintShop Pro full-featured trial version, and more. A "must-have" resource for amateurs or professionals looking to test their programming skills and create their very own FPS for the computer.
Excellent IntroductionRating: 5
04 Apr 2005 @ amazon.com

When I first found out about this book I thought it had a snowball’s change in hell of being even a half decent book (being a pretty ambitious topic). I’ve changed my mind after actually reading the book, and found it to be an excellent introduction to writing a FPS game engine. Granted, it’s not DOOM3 but the end result is a simple, complete working engine; which is quite an achievement in my opinion.

One caveat though, even though the book is fairly simple and not exactly taxing (a tribute to the author) it is certainly not a beginners book. You should already be fairly comfortable with C++ and DirectX 9 to get the most out of it and be prepared to study the source and MSDN documentation (a good habit to get into anyway).

The book covers most of the major parts of a FPS engine at a reasonable level, resulting in a well designed, modular engine that can be expanded on quite easily. The main value of the book, however, is the design of the engine which should help a lot in developing your own engine (since most books cover the therory in exhausting detail but ignore the overall engine design - if you’re looking for detail, this may not be the book for you).

After reading this book, the following books may be useful:

1. Introduction to 3D Game Programming with DirectX 9.0 (excellent intro to DX9).

2. 3D Game Engine Architecture : Engineering Real-Time Applications with Wild Magic (nice and detailed - I recommend all David Eberly’s books).

3. Real-Time Rendering (doesn’t get better than this).

4. Game Programming Gems (buy all of them, now).
Excellent BookRating: 5
19 Feb 2005 @ amazon.com

I would recomend this book to anyone wanting to create a fps. This book has helped me put my ideas together and point me in the right direction for creating my own engine and game. This book is definatly worth every penny.
Top Notch CodeRating: 5
17 Feb 2005 @ amazon.com

I’m about half way through the book now and the code that comes with the book is top notch. I even heard the author saying he went through all of the code removing the error checking before releasing as to make it easier to read. Its well maintained, simple and clever. The code is also definitly encapsulated well so you can bring it to other projects easily if you’d like with little dependencies.

Warning to those who are intermediate directx users - the first 2-7 are mostly directx basics and you will most likely skip this to get to the meat.

Although there’s nothing incredibly complicated in this book, I think it gave me a healthy dose of not over estimating myself. The author only spends time on the what is required to complete the project and reuses his code a lot (i think the initial linked list was reused about 100 times in total) So if you ever find yourself making projects that always fail half way through - this is a good book for you.

Add a Comment! 
You must login first, to write an comment/review!
advertisement

© 2001 - 2009 3DXO | All rights reserved. | Terms of Service | About | Time data: GMT +1! | Portal Release X3 Beta | RunTime: 1.4281
Optimized for Internet Explorer 6.0+!

Broken Link Report