DirectX 9 User Interfaces: Design and Implementation (Wordware Game Developer's Library) Paperback – 28 Feb 2004
- Choose from over 13,000 locations across the UK
- Prime members get unlimited deliveries at no additional cost
- Find your preferred location and add it to your address book
- Dispatch to this address when you check out
Enter your mobile number or email address below and we'll send you a link to download the free Kindle App. Then you can start reading Kindle books on your smartphone, tablet, or computer - no Kindle device required.
To get the free app, enter your mobile phone number.
This title available in a book and CD format. It presents a user interface's influence over how an application or game is received by an audience, no matter what other features it might boast, cannot be understated. This unique book offers a comprehensive solution to successfully building a DirectX user interface library from the ground up for games and other multimedia software. This detailed account zealously narrates and implements an entire interface project, unveiling important techniques and professional solutions along the way, while nurturing the whole workflow from concept to completion.
Top Customer Reviews
Having said that, it is clear and well written. It's just that it's subject matter is trite and it does not deal with any of the broader issues of user interface design or the issues I'd expect to occur in a DirectX application - where is the information on 3d interface design, for example?
Most Helpful Customer Reviews on Amazon.com (beta)
However, there are problems with this book that others have stated. The code in the book and the code on the CD are VERY different. What you see in the book (screen shots of the examples) is not what you see on your screen when you run the code (the graphics used are very different too). This makes trying to learn some things very hard as you can't look at the code in the book and compare to it the code on the CD. If you have a question about how or why the code is doing something, a lot of the times, the answer is not in the book because the code is different.
There is also errors with the code on the CD. It compiles and runs, but the textures do not display correctly (they seem to have some wierd scaling going on). A 100x50 texture will not display as 100x50 on your screen using the code in the book, and there is no explaination in the book on how to draw the textures to their scale.
The best way to use this book is to use it as a guide to design your own GUI in your own graphics engine. Just using the UI code provided by the book is not something I would recommend.
The Code on the CD is a bit better but still there are things in that code that just wont let me compile it. I checked the Msdn and everything and its just not right.
I wish this book had a website with corrections because the book itself is good and thats what leads me to write this. I liked reading the book and wanted to program the stuff so bad and so i expected more from the code in it.
I hope this helps
with the realization that the code in this title is not production ready
came the idea that maybe the _correct_ way to teach a technology is
to use just enough 'information hiding' to motivate the reader to have
a deeper understanding of what is being said (instead of forwarding
a prepared solution)
PROS (not many)
- Easy reading book.
- Doesn't assume too much on the part of the reader. DirectX basics that are used was covered, etc.
- I don't agree with all of the control messaging system but the author's coverage/design is not too bad.
- As stated before, code in book does not match code on CD. Code on CD has some compilation issues that upon investigation are fairly straight forward to fix. Fixing requires knowledge beyond the basics of programming.
- The compiled executable examples, with very little happening on the screen, run very very poorly. I believe one of the basic issues with performance is with the overall design. That's a problem because then the book is pretty much useless. I suppose to be fair the writer might have been targeting a larger audience and not just gamers. WM_PAINT posted messages are done. That's slow. No respecting game engine will post paint messages, they will gain full control over rendering the window or full screen and "talk" directly to the Direct 3D device interface.
- (This one is personal) I do not like the coding style. Also, anytime a C++ programmer use "this->" the "this" pointer within the object itself doesn't fully understand that you don't need to fully qualify the pointer. <sigh>
If you're looking for decent code with somewhat decent comments then save yourself some money and just download the DirectX SDK. In it, you will get many examples of UI things. Microsoft created a CustomUI application which runs very, very fast and handles GUI things very similarly to this book. But Microsoft's runs much faster. The problem with that is you won't find a very detailed writeup on "why" things are done the way they are. At least I haven't found it.
The authors approach to designing the interface code is easy to understand and read. I will now apply these concepts to my new 3D engine.
"DirectX 9: User Interfaces" provides a solid code base in which one can learn. Note, I said learn-not just copy the code. I've been programming in C/C++ for about three years and have read many books. The books alright and worth your time. However, its not for beginners. Many techniques are skimmed over quickly because the author assumes a moderate knowledge base.
In closing I'd like to address the issue of running the programs.
Some reviewers stated that the code does not work. THIS IS NOT TRUE. However, if you attempt to compile the code with Visual C++ 6.0 it will fail. The solution to this problem is to go to the DirectX 9 web site at Microsoft. Next, proceed to the Direct X 9 SDk downloads area. Look for the DirectX 9 SDK Extras download. Inside this download is a set of libraries for the utility features of DirectX 9 that are designed specificly
for Visual C++ 6.0. Set your compiler to these utilities libaries
and everything should work-did for me. If it doesn't make sure the compiler points to the new lib files before it checks the older ones during linking.
Look for similar items by category
- Books > Business, Finance & Law
- Books > Computing & Internet > PC & Video Games
- Books > Computing & Internet > Programming > Games
- Books > Computing & Internet > Programming > Interface Design
- Books > Computing & Internet > Programming > Languages
- Books > Computing & Internet > Programming > Microsoft Windows
- Books > Computing & Internet > Programming > Software Design, Testing & Engineering