DirectX Toolkit V1.2 -------------------- Introduction ------------ There are alot of people out there that has the ambition to create games and other graphical applications, but the hazel of getting started often, unfortunately, seems to take the ambition away. Ok, I want to make a game, that is for sure! But where do I start ? My best advise is to buy a book of game programming, or search the net for articles on the subject. But the code is still missing, the time to create an own library can be very long and tedious,especially if you are new in the area (I know that:). Clearly the fastest way to get started is to get components that are ready, use and learn from them, while you directly start programming your game or graphical application. The DirectX Toolkit is a source library that will get you started immediately with your project, one of our goals was to keep the price on the toolkit as low as possible so that induviduals can afford it. The price for the source code is only 30 USD! You will recieve the toolkit (0.6MB) in your email within 24 hours from the your order. DirectX Toolkit --------------- This library helps the developer to get started with DirectX 7.0, it simplifies the DirectX 7.0 API by adapting an easy-to-use interface. This is a brilliant solution for users who wants to get started quick and learn about DirectX. Classes included in the package are DirectDraw, DirectSound, DirectInput, Sprite, Sound, Bitmap, Wave, Mouse, Window and Debug. Also included is an example of how to use the different components. What is needed to use the toolkit --------------------------------- - DirectX 7.0 SDK (can be found at www.microsoft.com) - Since the toolkit is entirely object oriented skills in C++ are needed, - A computer running with Windows 95/98/2000 OS. - A c++ compiler (Microsofts Visual Stuido 6.0 was for developing the toolkit) - Recommended is some general knowledge of game programming. Advantages of the toolkit ------------------------- - Easy to use - Fast - General - Get started quickly How easy can DirectX get ? -------------------------- This is an example of how DirectDraw is set up with the toolkit. The DirectInput and DirectSound objects are as simple to set up. - DirectDraw directDraw; - directDraw.initAll(_windowHandle, 640, 480, 16); These two rows creates an full screen DirectDraw application, with the resulution 640 * 480, 16 bit colors. It also creates a primary and secondary surface that is used for double buffering. For more information on primary, secondary surfaces and double buffering a refer to the DirectX 7.0 Help or a book of game programming. For more information of how the toolkit is used I refer to the example provided with the toolkit - clickhit (see bottom of file). There really are no restrictions -------------------------------- The DirectX toolkit is very simple to use. It provides the user with the most common operations that can be done with DirectX. A simplyfied system is generally more restricted then a complex system. But the DirectX toolkit opens doors to those who want to go behind the general toolkit interface and use the real DirectX object directly. This is done by retrieving the real IDirectX interface that is encapsulated within the toolkits interfaces. This is done with the operation get(). For example to get the real DirectDraw object hidden within the toolkit the following code is used: - IDirectDrawX* dd = directDraw.get(); So by other words, this toolkit is an easy-to-use adapter to Microsofts DirectX model, but still the Microsofts directX can be used directly in cooperation with the toolkit. A breif description of the classes ---------------------------------- DirectDraw ---------- This class encapsulates the Microsofts DirectDraw interface and instead adapts an easy-to-use interface. DirectSound ----------- This class encapsulates the Microsofts DirectSound interface and instead adapts an easy-to-use interface. DirectInput ----------- This class encapsulates the Microsofts DirectInput interface and instead adapts an easy-to-use interface. Sprite ------ The sprite class is an all around class it has many diffrent applications. A sprite can be any 2D object, everything from a space ship to a meny button. This class enabled the developer to use animated sprites easily. For the animation purpose the animation should be in a square pattern with equally big squares. Sound ----- This class can be seen as a sound. It has fundermental operations that can be done on a sound such as load, play and stop. It supports the .wav format. Bitmap ------ This class loads a bitmap to a memory or a directX surface. It will keep information about the bitmap. It supports, 8, 16 and 24 bit .bmp files. Wave ---- This class provides an interface for loading .wav files. it loads a file and keeps the information about the sound in private members. The can be reached by asking the public interface. Mouse ----- This class handle the mouse. It draws the icon and keeps it updated when the mouse is moved. It uses a DirectInput object to get the mouse postions. ' Basically the mouse is a Sprite. Window ------ This class creates a simple window. It can be done in either fullscreen or with a size. It takes care of the main window initiation and it does also encapsulate the message control. This class is only ment to be a helper class for a quick and dirty window setup, that is if you for example want to make a directX fullscreen application, where the window is almost insignificant. Debug ----- This is a simple debug class with the << operator. It writes the output to an ostream, defined by the user. Don't hesitate to send us feedback, questions or comments. Sureshot Software