Archived

This topic is now archived and is closed to further replies.

Strategy Game Programming with Direct X 9

This topic is 5036 days old which is more than the 365 day threshold we allow for new replies. Please post a new topic.

If you intended to correct an error in the post then please contact us.

Recommended Posts

** UPDATE ** This book has been released, comments about content will be reviewed for possible tutorials on my website. ------------OLD POST FOLLOWS------------- Hi everyone, I have been working on my next book, Strategy Game Programming with Direct X 9, and am soliciting input for content you would like to see in it if the topic interests you. So far I am covering the following main topics: 1. Game mechanics 2. Game design (as it relates to strategy games) 3. Interface programming 4. Pathing, formations, and flocking 5. Entity and resource management 6. Tile maps (2D & 3D) 7. Tools programming (map editor, unit editor, etc.) 8. Multiplayer support 9. Direct X 9 programming Any suggestions are very welcome. Thanks! LostLogic www.lostlogic.com Author, Multiplayer Game Programming Author, Strategy Game Programming with Direct X 9 (Not yet released) [edited by - LostLogic on September 4, 2003 10:31:49 AM]

Share this post


Link to post
Share on other sites
My very first suggestion is to leave out the "useless" 300-400
or so pages of YET ANOTHER DirectX introduction. Too many
trees have been killed because of the "Introduction to DirectX"
section found is SO MANY books!



Kami no Itte ga ore ni zettai naru!

Share this post


Link to post
Share on other sites
What about:

10. A finished sample game (like Jim Adams did)

Perhaps you could also include some higher-level AI stuff (like decision making) or tell the readers where to do research on this.

By the way, when do you expect the book to be published?

Share this post


Link to post
Share on other sites
quote:
Original post by tangentz
My very first suggestion is to leave out the "useless" 300-400
or so pages of YET ANOTHER DirectX introduction. Too many
trees have been killed because of the "Introduction to DirectX"
section found is SO MANY books!



Kami no Itte ga ore ni zettai naru!


I agree with you on that one. I am only including the bare minimum of intro text.

LostLogic
www.lostlogic.com
Author, Multiplayer Game Programming
Author, Strategy Game Programming with Direct X 9 (Not yet released)

Share this post


Link to post
Share on other sites
I agree. I think OpenGL Game Programming was good in that it told you about OpenGL programming, but it still left a lot of it out for you to research on your own.
I hear that some other books in the series also give great introductions to DirectX, include OGP oddly enough, but what I would like to know is, why is DirectX so important that it has to be bundled with a Strategy Game Programming boook?
I think the main topics seem to cover things the way they should be, as two separate things, and so networking/multiplayer is separate from the rest of the theory. I mean, isn''t there already a networking book with DirectX? I mean, it is good that it is so detailed, but what about if I am programming for Linux? DirectX isn''t gonna help too much there. General networking principles should be dealt with in a book about networking/multiplay, but as I understand it, that book was very specific about Direct X.

Game mechanics, interface, AI etc, should be in here, and perhaps the muliplayer code that should be involved as well. I can see using DirectX as the example code, but why be overly specific? Like, using C++ as the example code makes sense, but it doesn''t mean I have to read the code and not be able to port to something else... I guess I could do the same with DirectX, but oh well.

Share this post


Link to post
Share on other sites
May I suggest an intro to DirectX 9....i don''t think anyone here knows it...or are you making people learn DX9 on their own? or can we just pick it up from your code? thanks.

Share this post


Link to post
Share on other sites
Yeah,

If you are going to be using the new stuff... I forget what it was called... DirectGraphics maybe? Have a simple intro of that and how it correlates with DirectDraw... Many people know DD but I am not sure people know the new stuff. I would probablly buy the book just for that

- Jesse Barksdale

Share this post


Link to post
Share on other sites
Some thing I think should be written in such a book (and some things which should not ;-)).
1. No introduction to C/C++ (but there is no danger of you writing one, is there?)
2. Not too much introduction to DX. It would be better if you could point out the main differences to DX8.
3. Game scripting and mission design i.e. how to programm missions the player has to solve etc.
4. Basic AI (especially for the player`s units so they can atack when getting near an enemy and so on)
5. Perhaps am more general approach to writing an Engine (and not what I would call an "inline game")

And, when will it be released?
(I am very interested in that book and will certainly buy it (if there are enough interesting techniques ;-))).



Im Anfang war die Tat...
Faust

Share this post


Link to post
Share on other sites
okay, here''s what i think:

-keep a directx9 intro, not many people know it and your book could be a good reference.

-cover ai with scripting because it can sometimes be a pain to hardcode all ai techniques in the source. plus, it saves space in the executible and allows for ai mods

-make sure you cover a lil bit of 2D rendering in dx9 because many strategy games are still in 2D today and many people still prefer it that way

-cover many ai techniques, because a strategy game depends on that. cover some basic techniques and then cover everything you think would be nescessary to create an advanced ai system.

-if it''s possible, try to put in a small 30- pages of input and sound with directx 9. Maybe only a single chapter worth or less of just reviewing what you need to do to get it up and running. Nothing special but sometimes I''ll need a quick reference book for that stuff, especially in dx9.

-Mention the differences in an appendix or something between dx8 and dx9.

-I also agree with a previous post, create a final game showing what you learned. Readers get a fealing of accomplishment when they see the final demo like in Tricks of the Windows and Role Playing Game Programming wDX.

-Oh yea, one more thing. Don''t tell the reader to look ahead at future demos to see what you will learn later. Role Playing Game Programmign wDX did that and it really discouraged me from finishing the book (although I still did). Don''t tell them not to look ahead either. Just don''t say anything about it.

---
My Site
Come join us on IRC in #directxdev @ irc.afternet.org

Share this post


Link to post
Share on other sites
To answer some of the above questions:

1. I am including information about how DX9 is different from DX8. I am also covering some short intro''s to each API but nothing deforrestating.

2. Scripting and mission design is covered.

3. I am hooking the DX code to the actual game engine part as little as possible. This is to let people with OpenGL get something out of it as well.

4. When? Good question, hopefully by December. I have been working on it since last year but DX9 just went beta not too long ago; hence, the delay.

5. I am including a fully working RTS game example with source code.

Thanks for the comments so far!

LostLogic
www.lostlogic.com
Author, Multiplayer Game Programming
Author, Strategy Game Programming with Direct X 9 (Not yet released)

Share this post


Link to post
Share on other sites
i''d agree with the idea of doing a game engine vs. an "inline game". it would be nice to see how to design a more generic game engine and then put that to use.

Share this post


Link to post
Share on other sites
quote:
Original post by Mike
i''d agree with the idea of doing a game engine vs. an "inline game". it would be nice to see how to design a more generic game engine and then put that to use.


Not including a full game would definitely allow for more generic examples. I wonder what the consensus on this is though? I always liked seeing complete examples personally. But thats just me.

So, thoughts anyone? A complete game example or generic pieces?

LostLogic
www.lostlogic.com
Author, Multiplayer Game Programming
Author, Strategy Game Programming with Direct X 9 (Not yet released)

Share this post


Link to post
Share on other sites
I think a complete sample would be best as it will most likely include many generic pieces that are wrapped together.

Also as i''m sure you know there are hardly any differences in DX9 as compared to DX8(IMHO)

Please be sure your complete game actually compiles. I''ve bought two books on DX that has "complete" games and neither "complete" game actually ran. (one of them didn''t even enumerate my hardware, it just assumed that i would be able to support hardware vertex processing and 800X600X32) oh yeah, and i would be a player on your book if the feature set is cool enough as well.

Dreddnafious Maelstrom

"If i saw farther, it was because I stood on the shoulders of giants."

Sir Isaac Newton

Share this post


Link to post
Share on other sites
Todd I would suggest that you only do the most basic intro to DX9. Meaning do what you said, only list the differences between 8 and 9. Let other books worry about teaching people how to use DX9.

Concentrate on straight mechanics of using the product to make a game, and in this case a "stragegy game". Be specific, give examples, show actual code. Make allowances for recognizing that there might be more than one way to accomplish something also.

I am not a programmer although I am reading tons of books with the desire to know how, and I have bought (and returned some) loads of books on the various subjects. Let me please BEG that you don''t do what so many others have done which is give a few good chapters in the beginning of the book, then fill up the book with what amounts to a sales pitch to buy the full version of the included software on the disc! I hate that. (Not that I expect you to do so of course )

I am a game designer and we are working on our first title which is an RTS. We are using C++ and fully adopting DX and we are looking forward to implementing some of the newer DX features when DX9 comes out. I hope that your book will be a useful tool for us as well and I look forward to seeing in on the shelves.

Nexus Entertainment
The Turning Point in Gaming
www.NexusEnt.com

Share this post


Link to post
Share on other sites
Two things. First, a completed game example would be nice. I''ve seen that done and I think that the logical progression of the book from beginning to end showing the actual applications of the stuff you explain would be nice.

Second, integration of scripting engines for extensability of the game. Sort of like level loading, but not really. How to integrate new AI algorithms without recompiling would be something I''d like to see covered in a book.

If that''s already been done, would someone please point me in the right direction? I''ve never seen a formal introduction to it and my experience is limited to a number of experimentations, both failed and successful.

Share this post


Link to post
Share on other sites
If you can please do not do the awful mistake of Windows Game Programming for Dummies (I heard the same was for Tricks of the GP Gurus) and just bounce from topic to topic without any cohesion. Let each topic/chapter flow one into the other, so people, like myself, can see where and how they come together. And also could you go through the animation code and AI in some detail, not just a quick overview.

I heard DX9 will have DirectDraw again. So will this be using DirectDraw or Direct3D to render 2D graphics?

Knowledge is what you learn, wisdom is how you apply it.

Share this post


Link to post
Share on other sites
Hi,

How big is the section on tools programming? I''ve been working on a (really) small 3d game for a while now, but I had to accept there was no way around not writing a few tools (level editor, mesh cleaner - coming up with suitable file formats). In fact something i''ve not seen covered in a book before is detailed (i.e. with code) stuff about fixing geometry - mesh consolidation etc.. I''m my own 3d artist (so invariably, all the artwork sucks..) but even I manage to produce artwork that isn''t really suitable for rendering (due to unwelded points etc).

Anyway, hope that helps,

Cheers,
T

Share this post


Link to post
Share on other sites
quote:
Original post by Alpha_ProgDes
If you can please do not do the awful mistake of Windows Game Programming for Dummies (I heard the same was for Tricks of the GP Gurus) and just bounce from topic to topic without any cohesion. Let each topic/chapter flow one into the other, so people, like myself, can see where and how they come together. And also could you go through the animation code and AI in some detail, not just a quick overview.

I heard DX9 will have DirectDraw again. So will this be using DirectDraw or Direct3D to render 2D graphics?

Knowledge is what you learn, wisdom is how you apply it.


I can''t reveal DX9 information but I can tell you that my code uses 3D to display 2D graphics. It seems to be the preferred method nowadays.

LostLogic
www.lostlogic.com
Author, Multiplayer Game Programming
Author, Strategy Game Programming with Direct X 9 (Not yet released)

Share this post


Link to post
Share on other sites
Guest Anonymous Poster
since its directx 9, i hope you explain about shaders.

Share this post


Link to post
Share on other sites
quote:
Original post by Zipster
Yeah, since DX9 allows for easier shader programming, i.e a notch above assembly, it would be useful to have maybe a small little tidbit section.


I''m actually working on the shader section now.

LostLogic
www.lostlogic.com
Author, Multiplayer Game Programming
Author, Strategy Game Programming with Direct X 9 (Not yet released)

Share this post


Link to post
Share on other sites
1. Please do not do too much on shaders (my graphics hardware (geforce 2 GTS does not support them and I have problems to imagine there are that many people out there with an >=geforce3 under the hood)
2. Please do not make one of the biggest mistakes I have so far seen in programming books.
The mistake concerns inline games. I think it is one of the worst things to read a book whose sole purpose is to implement a single game in a set of functions (as can be seen in "3D Spieleprogrammierung mit C/C++" by Stefan Zerbst). I have read this book and did not learn much from it because the implemented techniques where too specifically adopted for the sample game.
So there was no chance to learn how a more complex project is to be done.

Im Anfang war die Tat...
Faust

Share this post


Link to post
Share on other sites

Hey LostLogic!

I would be happy if you could show some special
effects like:

- fog of war (a must have for every rts)
- rain & snow (like in Warcraft III)
- optional:day & night change

I think that it is also important to show
how a nice interface - with drag & drop,
animated cursor''s and buttons works - as
you mentioned above in your first post.

Bye,
Zackie62

Share this post


Link to post
Share on other sites
quote:
Original post by LostLogic
So, thoughts anyone? A complete game example or generic pieces?

Complete, without a doubt. It boosts the new developer''s confidence a lot to see that an entire working game of that sort of complexity can be described in a single book. What would be even better still, is if various stages of the book were able to elaborate on ways the reader could make some basic alterations to the code so that the eventual game differs from reader to reader.



[ MSVC Fixes | STL | SDL | Game AI | Sockets | C++ Faq Lite | Boost | Asking Questions | Organising code files ]

Share this post


Link to post
Share on other sites