Archived

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

Ziphnor

Good DX8 litterature from an OOP viewpoint?

Recommended Posts

Ziphnor    122
Hi there, before flaming me for asking a stupid question like "whats a good book to learn Dx8" when a list of books with reviews can be found on this very site, please consider that the reviewing crowdd rarely writes very much about there own background knowledge, which is problematic for me. It seems that everybody today is C people, struggling to learn C++ and OOP. Well, im sort of coming from the "other side", im a Computer science and Mathematics student pretty well fluent in Java. In java, im pretty confident in AWT/Swing(ie the Java equivalent of MFC), and have also done some programs needing basic graphics capability. I even participated in making to small games, one a result of a OOP framework for Arcade games, which we, to show it was working, fleshed out into a breakout clone. I also participated in making a Checkers game, with decent AI, GUI etc. Recently ive taking an interest in C++, which i mostly find compelling because of operator overloading, MFC, DirectX, and the way it compiles to a native executable without using special compilers. Since ive been "raised" strictly too use OOP "everywhere" i found alot of C++ tutorials confusing, because they weighted explaining OOP principles(which i already understand) above the rest(like messing with pointers, C++ code/naming conventions etc). But now im starting to catch on to C++, and would really like to look into game programming and DirectX programming. But i would really appreciate a book that took a strong OOP view on how to structure programs and didnt have "C-style" examples. So the obvious question is, which book should that be? I would strongly prefer one that covered DX8, since there seems to have been some major changes in DX8 compared to DX7. Finally, it doesnt need to bother explaining the mathematics of the 3d graphics too much, since i already had some courses in linear algebra. Thanks for any help you can give, and for reading this ridicously long post. PS: I use Visual C++ 6.0 for all my C++ programming so it would be really nice with a book that did the same.

Share this post


Link to post
Share on other sites
Ziphnor    122
Thanks, thats what i call a fast response
I already noticed this book on Amazon but wasnt sure if it was 100% DX8 or if it dabbled in deprecated methods and just included DX8 SDK on the CD(already have DX8 SDK
But from checking the Prima-Tech homepage i can see that is not the case.
Just too bad it has such an *ugly* cover, but i guess thats Prima-Techs fault

Share this post


Link to post
Share on other sites
saetrum    122
You might also try Beginning Direct3d game Programming (Also a prima tech book) by Wolfgang Engel. It does go into some of the 3d math however. But it tries to use OOP as much as possible.

www.geocities.com/saetrum

Share this post


Link to post
Share on other sites
CruxMihiAncora    122
I probably wouldn''t advise Direct 3d Game Progamming. The way they teach you to use everything is through the DirectX wrapper functions. I''m sure this is okay with some people but it annoys me to no end when I don''t know what''s going on "underneath the blanket". The book is OOP based but the class "MyApp" they use is just a derived class from the DirectX helper application class. So, this book is okay for OOP but if you are like me and would like to know how to do everything in "pure" DirectX then this book is not for you.

Share this post


Link to post
Share on other sites
Ziphnor    122
"I probably wouldn''t advise Direct 3d Game Progamming. "

Do you mean the "zen" or the "beginning" book?
Anyway, as stated earlier i really dont want to learn what goes on behind the scenes(or at least not start by learning it), i like OOP, and that also means i like the idea of just taking nicely encapsulated code other people have made and use it myself.
Of course, you should always have a good idea of how the things you are using are implemented, but that part comes after you''ve learned how to use it.(This might be more true for Java where the classes you use for the foundation of your program is always "safe", they dont really make alot of assumptions that you need to know about, from what ive seen of C++ this is usually not the case(accessing arrays out of bounds comes to mind). So perhaps understanding whats going on behind the scenes is more important here).
But thanks for the warning all the same

What exactly is the difference between these 2 books? They sound pretty much alike. Also reviews of them on Amazon differs wildly.(i checked amazon.com,.co.uk,.de).

Share this post


Link to post
Share on other sites
CruxMihiAncora    122
I meant the "Beginning Direct3d Game Programming" book. I should clarify, for beginners this is a great book since you don''t have to get through all the details. I may have misunderstood you, I had assumed that you wanted a good oop-oriented book so you could write your own OOP code (i.e. your own wrapper class or engine). If you don''t want to get bogged down in all the details, than it can be a pretty good book. I don''t have the zen book but the one thing I like about "beginning direct3d game programming" is that it uses the DirectX 8.0 sdk. However, I have heard better things about the zen book. I don''t know, maybe someone with more experience than I have (i.e. they have read both books) could point in the right direction.

Share this post


Link to post
Share on other sites
Ziphnor    122
"I may have misunderstood you, I had assumed that you wanted a good oop-oriented book so you could write your own OOP code (i.e. your own wrapper class or engine)."

I do want to write my own OOP code, i just want to base it on already existing classes if i can. My expectation coming from java, is that there is already some base class which i can use to derive my own class from.[and yes i do know thats not always the case with C++].
On the other hand, i dont want to base my classes on some handicapped class that only works for small program for examples(like the Applet in Java , especially if its not part of DirectX.


Edited by - ziphnor on November 8, 2001 4:09:34 AM

Share this post


Link to post
Share on other sites