Modern Computer Algebra

January 25, 2012 9:10 pm | Uncategorized

Introduction to 3D Game Programming with DirectX 9.0 by Frank Luna

Introduction
This book is an introduction to programming interactive 3D computer graphics using DirectX 9.0, with an emphasis on game development. It teaches you the fundamentals of Direct3D, after which you will be able to go on to learn and apply more advanced techniques. Assumingly, since you have this book in your hands, you have a rough idea of what DirectX is about. From a developer’s perspective, DirectX is a set of APIs (application programming interfaces) for developing multimedia applications on the Windows platform. In this book we are concerned with a particular DirectX subset, namely Direct3D. As the name implies, Direct3D is the API used for developing 3D applications.

This book is divided into four main parts. Part I explains the mathematical tools that will be used throughout this book. Part II covers elementary 3D techniques, such as lighting, texturing, alpha blending, and stenciling. Part III is largely about using Direct3D to implement a variety of interesting techniques and applications, such as picking, terrain rendering, particle systems, a flexible virtual camera, and loading and rendering 3D models (XFiles). The theme of Part IV is vertex and pixel shaders, including the effects framework and the new (to DirectX 9.0) High-Level Shading Language. The present and future of 3D game programming is the use of shaders, and by dedicating an entire part of the book to shaders, we have an up-to-date and relevant book on modern graphics programming.

For the beginner, this book is best read front to back. The chapters have been organized so that the difficulty increases progressively with each chapter. In this way, there are no sudden jumps in complexity, leaving the reader lost. In general, for a particular chapter we will use the techniques and concepts previously developed. Therefore, it is important that you have mastered the material of a chapter before continuing. Experienced readers can pick the chapters of interest.

Finally, you may wonder what kinds of games you can develop after reading this book. The answer to that question is best obtained by skimming through this book and seeing the types of applications that are developed. From that you should be able to visualize the types of games that can be developed based on the techniques taught in this book and some of your own ingenuity.

Prerequisites
This book is designed to be an introductory level textbook. However, that does not imply that it is easy for people with no programming experience. Readers are expected to be comfortable with algebra, trigonometry, their development environment (e.g., Visual Studio), C++, and fundamental data structures such as arrays and lists. Being familiar with Windows programming is also helpful but not imperative; refer to Appendix A for an introduction to Windows programming.

Required Development Tools
This book uses C++ as its programming language for the sample programs. To quote the DirectX documentation, “DirectX 9.0 supports only Microsoft Visual C++ 6.0 and later.” Therefore, as of publication, in order to write C++ applications using DirectX 9.0, you need either Visual C++ (VC ++) 6.0 or VC ++ 7.0 (.NET).

Note The sample code for this book was compiled and built using VC++ 7.0. For the most part, it should compile and build on VC++ 6.0 also, but be aware of the following difference. In VC++ 7.0 the following will compile and is legal because the variable cnt is considered to be local to the for loop.

int main()
{
for(int cnt = 0; cnt
WildLinAlg18: The geometry of a system of linear equations


Texas Instruments TI-30XIIB Scientific Calculator


Texas Instruments TI-30XIIB Scientific Calculator


$14.99


MODEL- TI30XIIB VENDOR-TEXAS INSTRUMENTS FEATURES- Scientific 2-line Battery Calculator Ideal for general math algebra trigonometry statistics and science. This 2-line battery powered scientific calcualtor allows the user to vie…

Mathematical Methods and Algorithms for Signal Processing


Mathematical Methods and Algorithms for Signal Processing


$115.60


Mathematical Methods and Algorithms for Signal Processing tackles the challenge of providing readers and practitioners with the broad tools of mathematics employed in modern signal processing. Building from an assumed background in signals and stochastic processes, the book provides a solid foundation in analysis, linear algebra, optimization, and statistical signal processing. Interesting moder…

The American Journey Reconstruction to the Present, Student Edition


The American Journey Reconstruction to the Present, Student Edition


$25.75


Middle grade American history to match your curriculumThe American Journey: Reconstruction to the Present is the last half of The American Journey and begins in 1858 (Unit 6). A two-chapter Prologue reviews history from pre-exploration to Reconstruction. The Declaration of Independence, the United States Constitution, and the Citizenship Handbook are also included. Create a seamless two-year scope…

Number Theory: Volume II: Analytic and  Modern Tools (Graduate Texts in Mathematics)


Number Theory: Volume II: Analytic and Modern Tools (Graduate Texts in Mathematics)


$48.23


This book deals with several aspects of what is now called “explicit number theory.” The central theme is the solution of Diophantine equations, i.e., equations or systems of polynomial equations which must be solved in integers, rational numbers or more generally in algebraic numbers. This theme, in particular, is the central motivation for the modern theory of arithmetic algebraic geometry. In t…

Tags: , , , , , , , , ,