1462050775 Directx 9 User Interfaces: Design And Implementation (Wordware Game Developer's Library) - DirectX and XNA - Books - Books - GameDev.net

Jump to content

  • Log In with Google      Sign In   
  • Create Account

Game Development Books

  • You cannot edit this book

Directx 9 User Interfaces: Design And Implementation (Wordware Game Developer's Library) ****-

Directx 9 User Interfaces: Design And Implementation (Wordware Game Developer's Library) By Alan Thorn
Published January 2004
List Price: $59.95, Your Amazon.com Price: $59.95

Amazon.com Sales Rank: 3,162,145
Availability: Temporarily out of stock. Order now and we'll deliver when available. We'll e-mail you with an estimated delivery date as soon as we have more information. Your credit card will not be charged until we ship the item.

Interfaces strongly affect how an application or game is received by a user, no matter which cutting-edge features it may boast. This unique book presents a comprehensive solution for creating good interfaces using the latest version of DirectX. This involves building an interface library from the ground up. Divided into three sections, the book discusses the foundations of interface design, the construction of a feature-rich interface library, and the creation of a fully functional media player in DirectShow.

  • Learn about the building blocks of good, solid interfaces.
  • Design and implement controls in DirectX.
  • Build a reusable interface library.
  • Learn how to use Direct3D to create and display 2D and 3D worlds.
  • Use DirectInput to read data from input peripherals.
  • Play MP3 music files, MPG movies, and other media with DirectShow.
  • Understand linked lists, absolute positioning, alpha blending, and more.
  • Bring together the theory and practical code to create a working media player.

Buy it now:



  • You cannot edit this book


I own quite a few DirectX books, and i'd have to say, this is my all time favorite one. When buying this book I didn't really know a whole lot about how to use DirectX, even though this book is about User Intefaces, it includes the chapters, 'Introducing Direct3D', 'Introducing DirectInput', 'Wrapping Direct3D', and 'Abstracting DirectInput', to get you on your feet with DirectX. After the Foundation Section, it moves on to making a Control Library, going though the following Controls: Windows, Labels, Buttons, Text Boxes, Check Boxes, Scroll Bars, ListBoxes, and Drop Down Lists. If you've ever wanted to make a your own Control Library, I would definatly recommend that you buy this book. I wish that Alan Thorn would write some more books (This is his first book I believe) he has a great style of writing and I would definatly buy more books from him. 5 Stars from me.
The premise of this book is good. User interfaces are a necessity in any modern game engine and developing a reusable library of UI controls is a goal of many independant developers. This book hits the target in a few areas but it also has its share of faults.

The DirectX knowledge you need is not excessive. The author also makes use of the D3DX library which simplifies the code by a certain degree. If you can boot up the API and are familiar with the surface, texture, font and line interfaces then you shouldn't struggle toomuch. He develops wrapper classes at the start of the book to handle some of these components as well.

The core UI library code is pretty solid. You start of building a base class with functionality inherent in all the controls (of which they will inherit from). You then build controls such as windows, labels, buttons, checkboxes, text boxes, drop-down lists etc. The code makes good use or recursion, virtual functions and event handling (OnMouseMove(), OnMouseUp() etc) and uses a messaging system to notify the controls of what action to perform. To be honest, with a little code creativity (such as calling a function pointer in the OnRender() event and devising your own messaging system) you could quite easily make this library API independant.

The pitfall of this book is the CD that comes with it. The code in the projects on the CD does not always tally up with what is in the book (the code on the CD seems to be the more up-to-date). The sample projects on the CD do not compile without a lot of tweaking and they are very unpolished to boot! Don't expect to copy-paste anything here! There is also not updates or errata on the web (that I could find).

Despite these issues I still managed to develop an extendable GUI library through using this book and so I would proclaim it on its merits outlined above. I could see it really frustrating those fairly new to programming though.