3D Game Engine Design Using DirectX 9 and C#

Size: px
Start display at page:

Download "3D Game Engine Design Using DirectX 9 and C#"

Transcription

1 Introduction to 3D Game Engine Design Using DirectX 9 and C# LYNN T. HARRISON APress Media, LLC

2 Introduction to 3D Game Engine Design Using DirectX 9 and C# Copyright 2003 by Lynn T. Harrison Originally published by Apress in 2003 All rights reserved. No part of this work may be reproduced or transmitted in any form or by any means, electronic or mechanical, including photocopying, recording, or by any information storage or retrieval system, without the prior written permission of the copyright owner and the publisher. ISBN ISBN (ebook) DOI / Trademarked names may appear in this book. Rather than use a trademark symbol with every occurrence of a trademarked name, we use the names only in an editorial fashion and to the benefit of the trademark owner, with no intention of infringement of the trademark. Technical Reviewer: Patrick DeNardo Editorial Board: Dan Appleman, Craig Berry, Gary Cornell, Tony Davis, Steven Rycroft, Julian Skinner, Martin Streicher, Jim Sumser, Karen Watterson, Gavin Wray, John Zukowski Assistant Publisher: Grace Wong Project Manager: Tracy Brown Collins Copy Editor: Ami Knox Production Manager: Kari Brooks Compositor and Proofreader: Kinetic Publishing Services, ILC Indexer: Michael Brinkman Cover Designer: Kurt Krames Manufacturing Manager: Tom Debolski The information in this book is distributed on an "as is" basis, without warranty. Although every precaution has been taken in the preparation of this work, neither the author(s) nor Apress shall have any liability to any person or entity with respect to any loss or damage caused or alleged to be caused directly or indirectly by the information contained in this work.

3 To my wife, Gerri, for her support and patience during the process of writing this book. I couldn't have done it without you. And also to my son, Mike, who inherited my love of games of all types.

4 Contents at a Glance About the Author... xi About the Technical Reviewer... xii Acknowledgments... xiii Introduction... xv Chapter 1 Overview Chapter 2 User Interface Chapter 3 Hanging Ten: A Ride Through the Rendering Pipeline Chapter 4 Basic 3D Objects Chapter 5 Complex 3D Objects Chapter 6 Camera: The Player's View of the World Chapter 7 Adding Some Atmosphere: Lighting and Fog Chapter 8 Artificial Intelligence: Adding the Competition Chapter 9 Game Audio: Let's Make Some Noise Chapter 10 Game Physics: Keeping It Real Chapter 11 Tools of the Trade Index v

5 Contents About the Author... xi About the Technical Reviewer... xii Acknowledgments... xiii Introduction... xv Chapter 1 Overview What Is a Game Engine?... 1 How This Book's Game Engine Project Differs... 3 Starting at the Beginning-Defining a Few Primitives... 5 Interfaces: The Integration Contract... 7 Process Flow Overview Developer Splash Screen Game Splash Screen Presenting the Options Playing the Game After Action Review: Player Scoring Looking at the C# Code Summary Chapter 2 User Interface Getting Keyboard Input Getting Mouse Input Getting Joystick Input A Unified Input Interface Drawing Splash Screens Drawing Option Screens Developing the Console Pulling It All Together Summary Chapter 3 Hanging Ten: A Ride Through the Rendering Pipeline Moving Cameras and Objects Animating Objects Checking Visibility and Performing Rough Culling vii

6 Contents Selecting Level of Detail (LOD) Converting Model Coordinates to the View Frame Back Face Culling Clipping Setting Up the Vertex Buffer Shading, Texturing, and Fog Rendering Summary Chapter 4 Basic 3D Objects Seeing to the Horizon: The Skybox Traveling the Rolling Landscape Populating the Landscape: Billboards Adding Environmental Effects: Particle Systems Summary Chapter 5 Complex 3D Objects Looking at Mesh Basics Developing the Model Class Summary Chapter 6 Camera: The Player's View of the World Looking Through the Lens Summary Chapter 7 Adding Some Atmosphere: Lighting and Fog Shedding Some Light on the Subject Piercing the Fog Summary Chapter 8 Artificial Intelligence: Adding the Competition Looking at Our AI Options Implementing the Artificial Intelligence System Summary viii

7 Contents Chapter 9 Game Audio: Let's Make Some Noise Making Beautiful Music Together Hearing in Three Dimensions Summary Chapter 10 Game Physics: Keeping It Real Looking at Vehicle Dynamics Summary Chapter 11 Tools of the Trade Setting Up Your Development Environment Three-Dimensional Modeling Tools Level Editors Editing Images Audio Tools Summary Index ix

8 About the Author LYNN THOMAS IIARiusoN is both a Microsoft Certified Systems Engineer (MCSE) and Microsoft Certified Solutions Developer (MCSD) and is currently employed as a senior systems engineer for Diamond Visionics Company (a visualization engineering company). He lives in Binghamton, New York, with his wife, Gerri, and son, Michael. Lynn has been active in the simulation and graphics industries for over 22 years. xi

9 About the Technical Reviewer PATRICK DENARDO is a project director and software technical lead at Universal Instruments, Inc., where he architects and develops client-server internationalized software for the Wmdows platform. He is a Microsoft Certified Professional and has a Bachelor of Science degree in computer science from Binghamton University. Patrick enjoys reading computer books, playing golf, and spending time with his wife, Jennifer, and their dog, Abby. xii

10 Acknowledgments I would LIKE ro THANK ALL of the great people at Apress for their guidance along the way. I really had no idea when I started this book about everything that went into the process. First, thanks to Gary Cornell and Dan Appleman for their enthusiasm in this project and for getting me started. Also thanks to Sofia Marchant and Tracy Brown Collins for keeping everything organized and on track. Big thanks to my wife, Gerri, and to my copy editor, Ami Knox, who helped translate my techie ramblings into English. I would also like to thank my technical reviewer, Pat DeNardo. Pat not only made sure that the information presented in this book was technically correct, but also that the information was understandable to those new to C# and Managed DirectX. Lastly, I would like to thank my family for their support over the last 14 months. Too many weekends were spent with my computer rather than with them. Gerri and Mike, thanks for understanding my need to do this. I would also like to thank my parents for always believing me and raising me to believe in myself. xiii

11 Introduction I HAVE BEEN EDUCATING MYSELF about game design and 3D visualization for many years. My bookshelves are full of books on programming, game development, and the various graphical application programming interfaces (APis). Many books have been written that explain every part of DirectX or OpenGL. Quite a few books are also dedicated to creating portions of a game using one or both of these technologies. The book that I could never find was one on game engine design. I wanted an object -oriented, reusable package of software that was not tightly integrated to one particular game. I knew that I wasn't the only person interested in game engine design. I decided that, as I learned C# and managed DirectX 9 and ported my game engine to this new technology, I would document the process. The fact that you are reading this indicates you share my interest in 3D game engines. I have kept this book at an introductory level. When I initially began planning the book, I considered including more advanced topics such as animation, networking for multiplayer capability, and the programmable pipeline (shaders). I quickly came to the conclusion that to cover that much material in any depth at all was too much for a single book. I am hoping that at some point in the future I will have the time to do a follow-up volume that includes these and other more advanced areas. No one book can answer all questions. I encourage you to extend your research to other books and the Internet as you hone your development capabilities. The best resources for getting your questions answered are the Microsoft DirectX news groups. There are a number of newsgroups of interest that are prefixed with microsoft.public.win32.programmer.directx. The newsgroup dedicated to Managed DirectX is microsoft.public.win32.programmer.directx.managed. I often monitor this newsgroup, and I will answer any questions that I can. Chapter 1: Overview This chapter looks at several types of game engines as well as the distinction between a game and a game engine. Game engine design requires more thought than do hard-coding rendering and game logic within the game itself. The benefit is greater reuse of the underlying technology and a cleaner overall design. XV

12 Introduction Chapter 2: User Interface A game's user interface provides the means of giving the player information and obtaining the player's commands. This chapter investigates the presentation of splash screens, option screens, and a console screen. It also looks at the use of Directlnput to obtain player inputs from the keyboard, mouse, and joysticks. Chapter 3: Hanging Ten: A Ride Through the Rendering Pipeline Before diving into the actual rendering of three-dimensional objects, it is good to have a basic understanding of the rendering pipeline. This chapter walks you through the typical steps involved in the fixed-function rendering pipeline. This includes the manipulation of cameras to provide the viewpoint in the game. It also describes a base class that will be used for all rendered objects. The process of culling objects and other techniques for improving performance is also investigated. The actual illustration of these steps appears in Chapters 4 through 8. Chapter 4: Basic 30 Objects This chapter is the first of two chapters dealing with rendering the various types of objects that are used within a game. These objects include a skybox for providing a view into the distance, terrain rendering to provide a surface to move upon, billboards for simple symmetrical objects, and particle systems. Particle systems are an extremely powerful tool that may be used for dynamic systems of small objects. These include flowing water, fire, fireworks, and blowing sand. Chapter 5: Complex 30 Objects Chapter 5 is the second chapter dedicated to the rendering of objects for games. The objects described in this chapter are much more complex, with many polygons per object. These are referred to as mesh objects and are used as the primary moving models within a game. The class used to encapsulate meshes includes the capability to adjust the complexity of the mesh as a function of range from the camera to improve performance. xvi

13 Introduction Chapter 6: Camera: The Player's View of the World To control the view of the action, we need something akin to the cameras used to film a movie. This chapter illustrates the design and use of a camera class that may be employed in a variety of ways. Cameras may be positioned at static locations within the scene and follow objects as they move past or they may be attached to the moving objects themselves. Employing multiple cameras and including logic within a game can provide a cinematic flair to the game. Chapter 7: Adding Some Atmosphere: Lighting and Fog All of the rendering performed by the game engine up until this point has been under fully lit and crystal-clear conditions-conditions that are often hard to find in the real world. This chapter explores the four types of lights that may be used to illuminate a scene as well as how to configure fog to improve the realism of a game. Fog may also be used to disguise shortcomings in the ability to render objects at a large distance from the camera. Chapter 8: Artificial Intelligence: Adding the Competition Few games are much fun without opponents. Although it is possible to write games that are strictly multiplayer, in which all of the opponents are human, networking is out of the scope of this book. Instead, we will look at the different types of artificial intelligence techniques that can be used within a game. One of these methods will be developed as part of the sample game engine for the book. Chapter 9: Game Audio: Let's Make Some Noise Another method to add character to a game is through the use of audio. Background music, if chosen properly, adds mood to the play. This chapter shows you how to develop classes for the game engine that facilitate playing songs. It also includes support for sound effects within a game. Players expect certain sounds to coincide with events within a game. If a car hits another car or a tree, they expect to hear the crash as well as see a reaction between the objects involved in the collision. xvii

14 Introduction Chapter 10: Game Physics: Keeping It Real As I mentioned when talking about audio, players not only expect to hear noise in a collision, but also to see a more physical reaction. Chapter 10 concentrates on the physics involved primarily with cars. The basic mathematics applied to cars may also be applied to many types of moving objects. This chapter also covers the physics used for cloth dynamics. This type of physics is used for not only cloth, but also for many types of flexible objects such as hair or rope. Chapter 11: Tools of the Trade The final chapter of the book looks at a cross-section of tools that are used during game development. If you are just starting out in game development (or just starting out with C#), you may find it useful to check out this chapter before diving into the rest of the book. The first portion of this chapter concentrates on the development environment used to compile and test your software. Other topics covered in the chapter include the manipulation of the artistic content for the game. The artistic content includes the audio files, two-dimensional images, and three-dimensional models. xvili

iphone Games Projects

iphone Games Projects iphone Games Projects DAVE MARK, SERIES EDITOR PJ CABRERA JOACHIM BONDO AARON FOTHERGILL BRIAN GREENSTONE OLIVIER HENNESSY MIKE KASPRZAK MIKE LEE RICHARD ZITO MATTHEW AITKEN CLAYTON KANE iphone Games Projects

More information

Beginning 3D Game Development with Unity:

Beginning 3D Game Development with Unity: Beginning 3D Game Development with Unity: The World's Most Widely Used Multi-platform Game Engine Sue Blackman Apress* Contents About the Author About the Technical Reviewer Acknowledgments Introduction

More information

INTRODUCTION TO GAME AI

INTRODUCTION TO GAME AI CS 387: GAME AI INTRODUCTION TO GAME AI 3/31/2016 Instructor: Santiago Ontañón santi@cs.drexel.edu Class website: https://www.cs.drexel.edu/~santi/teaching/2016/cs387/intro.html Outline Game Engines Perception

More information

Learning XNA 4.0. Aaron Reed O'REILLY8. Cambridge. Beijing. Sebastopoi. Tokyo. Farnham Koln

Learning XNA 4.0. Aaron Reed O'REILLY8. Cambridge. Beijing. Sebastopoi. Tokyo. Farnham Koln Learning XNA 4.0 Aaron Reed O'REILLY8 Beijing Cambridge Farnham Koln Sebastopoi Tokyo Table of Contents Preface xiii 1. What's New in XNA 4.0? 1 Revised Project Folder Structure 1 Develop Games for Windows

More information

Building Arduino PLCs

Building Arduino PLCs Building Arduino PLCs The essential techniques you need to develop Arduino-based PLCs Pradeeka Seneviratne Building Arduino PLCs: The essential techniques you need to develop Arduino-based PLCs Pradeeka

More information

DM842 Computer Game Programming

DM842 Computer Game Programming DM842 Computer Game Programming Rolf Fagerberg and Marco Chiarandini Fall 2017 Why Computer Game Programming? Fun, attraction, curiosity Career goal Great display of use of many Computer Science subjects

More information

WhyTry Elementary Game Plan Journal

WhyTry Elementary Game Plan Journal WhyTry Elementary Game Plan Journal I can promise you that if you will do the things in this journal, develop a Game Plan for your life, and stick to it, you will get opportunity, freedom, and self respect;

More information

Effects of Shader Technology: Current-Generation Game Consoles and Real-Time. Graphics Applications

Effects of Shader Technology: Current-Generation Game Consoles and Real-Time. Graphics Applications Effects of Shader Technology: Current-Generation Game Consoles and Real-Time Graphics Applications Matthew Christian A Quick History of Pixel and Vertex Shaders Pixel and vertex shader technology built

More information

DM809 Computer Game Programming I: Graphics

DM809 Computer Game Programming I: Graphics DM809 Computer Game Programming I: Graphics Rolf Fagerberg August/Fall 2010 1 Goals for Today s Lecture Introduction to course: Motivation Contents of course Formalities of course Textbook Tentative courseplan

More information

Sensible Chuckle SuperTuxKart Concrete Architecture Report

Sensible Chuckle SuperTuxKart Concrete Architecture Report Sensible Chuckle SuperTuxKart Concrete Architecture Report Sam Strike - 10152402 Ben Mitchell - 10151495 Alex Mersereau - 10152885 Will Gervais - 10056247 David Cho - 10056519 Michael Spiering Table of

More information

The University of Melbourne Department of Computer Science and Software Engineering Graphics and Computation

The University of Melbourne Department of Computer Science and Software Engineering Graphics and Computation The University of Melbourne Department of Computer Science and Software Engineering 433-380 Graphics and Computation Project 2, 2008 Set: 18 Apr Demonstration: Week commencing 19 May Electronic Submission:

More information

Pangolin: A Look at the Conceptual Architecture of SuperTuxKart. Caleb Aikens Russell Dawes Mohammed Gasmallah Leonard Ha Vincent Hung Joseph Landy

Pangolin: A Look at the Conceptual Architecture of SuperTuxKart. Caleb Aikens Russell Dawes Mohammed Gasmallah Leonard Ha Vincent Hung Joseph Landy Pangolin: A Look at the Conceptual Architecture of SuperTuxKart Caleb Aikens Russell Dawes Mohammed Gasmallah Leonard Ha Vincent Hung Joseph Landy Abstract This report will be taking a look at the conceptual

More information

ARCHITECT VECTORWORKS EIGHTH EDITION TUTORIAL MANUAL BY JONATHAN PICKUP

ARCHITECT VECTORWORKS EIGHTH EDITION TUTORIAL MANUAL BY JONATHAN PICKUP CH EIGHTH EDITION TUTORIAL MANUAL BY JONATHAN PICKUP A M TO R I A L T TU EC IT UA L AR ARCHITECT N HTH EDITION EIG / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / /

More information

WHY STARTUPS FAIL AND HOW YOURS CAN SUCCEED. David Feinleib

WHY STARTUPS FAIL AND HOW YOURS CAN SUCCEED. David Feinleib WHY STARTUPS FAIL AND HOW YOURS CAN SUCCEED David Feinleib Why Startups Fail: And How Yours Can Succeed Copyright 2012 by David Feinleib This work is subject to copyright. All rights are reserved by the

More information

Windows Mobile Game Development Building Games for the Windows Phone and Other Mobile Devices

Windows Mobile Game Development Building Games for the Windows Phone and Other Mobile Devices Windows Mobile Game Development Building Games for the Windows Phone and Other Mobile Devices Adam Dawes i Windows Mobile Game Development: Building Games for the Windows Phone and Other Mobile Devices

More information

Lecture 1: Introduction and Preliminaries

Lecture 1: Introduction and Preliminaries CITS4242: Game Design and Multimedia Lecture 1: Introduction and Preliminaries Teaching Staff and Help Dr Rowan Davies (Rm 2.16, opposite the labs) rowan@csse.uwa.edu.au Help: via help4242, project groups,

More information

Unity Certified Programmer

Unity Certified Programmer Unity Certified Programmer 1 unity3d.com The role Unity programming professionals focus on developing interactive applications using Unity. The Unity Programmer brings to life the vision for the application

More information

The 8 th International Scientific Conference elearning and software for Education Bucharest, April 26-27, / X

The 8 th International Scientific Conference elearning and software for Education Bucharest, April 26-27, / X The 8 th International Scientific Conference elearning and software for Education Bucharest, April 26-27, 2012 10.5682/2066-026X-12-153 SOLUTIONS FOR DEVELOPING SCORM CONFORMANT SERIOUS GAMES Dragoş BĂRBIERU

More information

Program a Game Engine from Scratch. Chapter 1 - Introduction

Program a Game Engine from Scratch. Chapter 1 - Introduction Program a Game Engine from Scratch Mark Claypool Chapter 1 - Introduction This document is part of the book Dragonfly Program a Game Engine from Scratch, (Version 5.0). Information online at: http://dragonfly.wpi.edu/book/

More information

AIRCRAFT CONTROL AND SIMULATION

AIRCRAFT CONTROL AND SIMULATION AIRCRAFT CONTROL AND SIMULATION AIRCRAFT CONTROL AND SIMULATION Third Edition Dynamics, Controls Design, and Autonomous Systems BRIAN L. STEVENS FRANK L. LEWIS ERIC N. JOHNSON Cover image: Space Shuttle

More information

THE JOHN DEERE WAY. Performance That Endures. David Magee. John Wiley & Sons, Inc.

THE JOHN DEERE WAY. Performance That Endures. David Magee. John Wiley & Sons, Inc. THE JOHN DEERE WAY Performance That Endures David Magee John Wiley & Sons, Inc. THE JOHN DEERE WAY THE JOHN DEERE WAY Performance That Endures David Magee John Wiley & Sons, Inc. Copyright 2005 by David

More information

Learn Autodesk Inventor 2018 Basics

Learn Autodesk Inventor 2018 Basics Learn Autodesk Inventor 2018 Basics 3D Modeling, 2D Graphics, and Assembly Design T. Kishore Learn Autodesk Inventor 2018 Basics T. Kishore Hyderabad, India ISBN-13 (pbk): 978-1-4842-3224-8 ISBN-13 (electronic):

More information

Towards a Reference Architecture for 3D First Person Shooter Games

Towards a Reference Architecture for 3D First Person Shooter Games Towards a Reference Architecture for 3D First Person Shooter Games Philip Liew-pliew@swen.uwaterloo.ca Ali Razavi-arazavi@swen.uwaterloo.ca Atousa Pahlevan-apahlevan@cs.uwaterloo.ca April 6, 2004 Abstract

More information

CREATING. Digital Animations. by Derek Breen

CREATING. Digital Animations. by Derek Breen CREATING Digital Animations by Derek Breen ii CREATING DIGITAL ANIMATIONS Published by John Wiley & Sons, Inc. 111 River Street Hoboken, NJ 07030 5774 www.wiley.com Copyright 2016 by John Wiley & Sons,

More information

Virtual Environments. Ruth Aylett

Virtual Environments. Ruth Aylett Virtual Environments Ruth Aylett Aims of the course 1. To demonstrate a critical understanding of modern VE systems, evaluating the strengths and weaknesses of the current VR technologies 2. To be able

More information

Colorized. Mustang Wiring & Vacuum Diagrams. (with Electrical Illustrations)

Colorized. Mustang Wiring & Vacuum Diagrams. (with Electrical Illustrations) 1971 Colorized Free Bonus! 30-Minute Video Ford Training Course 13001, Vol 68 S7 "How to Read Wiring Diagrams" Mustang Wiring & Vacuum Diagrams Included! (with Electrical Illustrations) A consolidated

More information

Pulse-Width Modulated DC-DC Power Converters Second Edition

Pulse-Width Modulated DC-DC Power Converters Second Edition Pulse-Width Modulated DC-DC Power Converters Second Edition Marian K. Kazimierczuk Pulse-Width Modulated DC DC Power Converters Pulse-Width Modulated DC DC Power Converters Second Edition MARIAN K. KAZIMIERCZUK

More information

TINY METAL: Developing a big game with a small team AREA35 - GIAN PEIRCE - BIZDEV & LOCALIZATION AREA35 - DANIEL DRESSLER - CHIEF ENGINEER

TINY METAL: Developing a big game with a small team AREA35 - GIAN PEIRCE - BIZDEV & LOCALIZATION AREA35 - DANIEL DRESSLER - CHIEF ENGINEER TINY METAL: Developing a big game with a small team AREA35 - GIAN PEIRCE - BIZDEV & LOCALIZATION AREA35 - DANIEL DRESSLER - CHIEF ENGINEER About This Presentation Development of TINY METAL started early

More information

RETRO PIXEL ART SKETCH PAD

RETRO PIXEL ART SKETCH PAD RETRO PIXEL ART SKETCH PAD Pixel Art Doodling for All Ages Gazzapper Press First Published in 2016 by Gazzapper Press http://www.gazzapper.com Cover design by German Creative All rights reserved. No part

More information

Unity 3.x. Game Development Essentials. Game development with C# and Javascript PUBLISHING

Unity 3.x. Game Development Essentials. Game development with C# and Javascript PUBLISHING Unity 3.x Game Development Essentials Game development with C# and Javascript Build fully functional, professional 3D games with realistic environments, sound, dynamic effects, and more! Will Goldstone

More information

Chapter 7- Lighting & Cameras

Chapter 7- Lighting & Cameras Chapter 7- Lighting & Cameras Cameras: By default, your scene already has one camera and that is usually all you need, but on occasion you may wish to add more cameras. You add more cameras by hitting

More information

CS Game Programming, Fall 2014

CS Game Programming, Fall 2014 CS 38101 Game Programming, Fall 2014 Recommended Text Learn Unity 4 for ios Game Development, Philip Chu, 2013, Apress, ISBN-13 (pbk): 978-1-4302-4875-0 ISBN-13 (electronic): 978-1-4302-4876-7, www.apress.com.

More information

Individual Test Item Specifications

Individual Test Item Specifications Individual Test Item Specifications 8208110 Game and Simulation Foundations 2015 The contents of this document were developed under a grant from the United States Department of Education. However, the

More information

Mustang Wiring & Vacuum Diagrams

Mustang Wiring & Vacuum Diagrams 1971 Colorized Mustang Wiring & Vacuum Diagrams Free Bonus! 30-Minute Video Ford Training Course 13001, Vol 68 S7 "How to Read Wiring Diagrams" Included! (with Electrical Illustrations) A consolidated

More information

HIGH INTEGRITY DIE CASTING PROCESSES

HIGH INTEGRITY DIE CASTING PROCESSES HIGH INTEGRITY DIE CASTING PROCESSES EDWARD J. VINARCIK JOHN WILEY & SONS, INC. HIGH INTEGRITY DIE CASTING PROCESSES HIGH INTEGRITY DIE CASTING PROCESSES EDWARD J. VINARCIK JOHN WILEY & SONS, INC. This

More information

Advances in Computer Vision and Pattern Recognition

Advances in Computer Vision and Pattern Recognition Advances in Computer Vision and Pattern Recognition For further volumes: http://www.springer.com/series/4205 Marco Alexander Treiber Optimization for Computer Vision An Introduction to Core Concepts and

More information

FILTRATION HANDBOOK: LIQUIDS

FILTRATION HANDBOOK: LIQUIDS FILTRATION HANDBOOK: LIQUIDS THEODORE H. MELZER MAIK W. JORNITZ PDA Bethesda, MD, USA DHI Publishing, LLC River Grove, IL, USA 10 9 8 7 6 5 4 3 2 1 ISBN: 1-930114-62-1 Copyright 2004 Theodore H. Melzer

More information

How to develop and localize Xbox 360 Titles. 강상진 XBOX Program Manager 한국마이크로소프트소프트웨어연구소

How to develop and localize Xbox 360 Titles. 강상진 XBOX Program Manager 한국마이크로소프트소프트웨어연구소 How to develop and localize Xbox 360 Titles 강상진 (sjkang@microsoft.com) XBOX Program Manager 한국마이크로소프트소프트웨어연구소 Agenda Xbox Title DEV Team Xbox Software Architecture Overview XTL(Xbox Title Library) XDK(Xbox

More information

Introduction to Game Design. Truong Tuan Anh CSE-HCMUT

Introduction to Game Design. Truong Tuan Anh CSE-HCMUT Introduction to Game Design Truong Tuan Anh CSE-HCMUT Games Games are actually complex applications: interactive real-time simulations of complicated worlds multiple agents and interactions game entities

More information

Current Technologies in Vehicular Communications

Current Technologies in Vehicular Communications Current Technologies in Vehicular Communications George Dimitrakopoulos George Bravos Current Technologies in Vehicular Communications George Dimitrakopoulos Department of Informatics and Telematics Harokopio

More information

Attack of Township. Moniruzzaman, Md. Daffodil International University Institutional Repository Daffodil International University

Attack of Township. Moniruzzaman, Md. Daffodil International University Institutional Repository Daffodil International University Daffodil International University Institutional Repository Computer Science and Engineering Project Report of M.Sc 2018-05 Attack of Township Moniruzzaman, Md Daffodil International University http://hdl.handle.net/20.500.11948/2705

More information

English as a Second Language Podcast ESL Podcast 295 Playing Video Games

English as a Second Language Podcast   ESL Podcast 295 Playing Video Games GLOSSARY fighting violent; with two or more people physically struggling against each other * In this fighting game, you can make the characters kick and hit each other in several directions. role-playing

More information

Design Document for: Name of Game. One Liner, i.e. The Ultimate Racing Game. Something funny here! All work Copyright 1999 by Your Company Name

Design Document for: Name of Game. One Liner, i.e. The Ultimate Racing Game. Something funny here! All work Copyright 1999 by Your Company Name Design Document for: Name of Game One Liner, i.e. The Ultimate Racing Game Something funny here! All work Copyright 1999 by Your Company Name Written by Chris Taylor Version # 1.00 Thursday, September

More information

The purpose of this document is to outline the structure and tools that come with FPS Control.

The purpose of this document is to outline the structure and tools that come with FPS Control. FPS Control beta 4.1 Reference Manual Purpose The purpose of this document is to outline the structure and tools that come with FPS Control. Required Software FPS Control Beta4 uses Unity 4. You can download

More information

Unity Game Development Essentials

Unity Game Development Essentials Unity Game Development Essentials Build fully functional, professional 3D games with realistic environments, sound, dynamic effects, and more! Will Goldstone 1- PUBLISHING -J BIRMINGHAM - MUMBAI Preface

More information

Engineering at a Games Company: What do we do?

Engineering at a Games Company: What do we do? Engineering at a Games Company: What do we do? Dan White Technical Director Pipeworks October 17, 2018 The Role of Engineering at a Games Company Empower game designers and artists to realize their visions

More information

g GETTING STARTED D PC System Requirements Computer: Pentium 90 MHz processor or equivalent.

g GETTING STARTED D PC System Requirements Computer: Pentium 90 MHz processor or equivalent. g GETTING STARTED D PC System Requirements Computer: Pentium 90 MHz processor or equivalent. Operating Systems: Windows 2000, Windows XP, or Windows Vista. Memory: 16 MB of RAM Controls: A keyboard and

More information

Chapter 1 Virtual World Fundamentals

Chapter 1 Virtual World Fundamentals Chapter 1 Virtual World Fundamentals 1.0 What Is A Virtual World? {Definition} Virtual: to exist in effect, though not in actual fact. You are probably familiar with arcade games such as pinball and target

More information

CSE 125 Boot Camp. Or: How I Learned to Stop Worrying and Love The Lab

CSE 125 Boot Camp. Or: How I Learned to Stop Worrying and Love The Lab CSE 125 Boot Camp Or: How I Learned to Stop Worrying and Love The Lab About Me Game Developer since 2010 forever Founder and President of VGDC gamedev.ucsd.edu (shameless self-promotion ftw) I look like

More information

SOLDERING. Understanding the Basics. Edited by Mel Schwartz. Materials Park, Ohio

SOLDERING. Understanding the Basics. Edited by Mel Schwartz. Materials Park, Ohio SOLDERING Understanding the Basics Edited by Mel Schwartz ASM International Materials Park, Ohio 44073-0002 Copyright 2014 by ASM International All rights reserved No part of this book may be reproduced,

More information

Request for Permission to Remake Monolith Production's Shogo: Mobile Armor Division. On behalf of the

Request for Permission to Remake Monolith Production's Shogo: Mobile Armor Division. On behalf of the Request for Permission to Remake Monolith Production's Shogo: Mobile Armor Division On behalf of the http://shogomad.com community: Introduction The game Shogo: Mobile Armor Division by Monolith Productions,

More information

PROGRAMMING AN RTS GAME WITH DIRECT3D BY CARL GRANBERG DOWNLOAD EBOOK : PROGRAMMING AN RTS GAME WITH DIRECT3D BY CARL GRANBERG PDF

PROGRAMMING AN RTS GAME WITH DIRECT3D BY CARL GRANBERG DOWNLOAD EBOOK : PROGRAMMING AN RTS GAME WITH DIRECT3D BY CARL GRANBERG PDF PROGRAMMING AN RTS GAME WITH DIRECT3D BY CARL GRANBERG DOWNLOAD EBOOK : PROGRAMMING AN RTS GAME WITH DIRECT3D BY CARL GRANBERG PDF Click link bellow and free register to download ebook: PROGRAMMING AN

More information

Revised Curriculum for Bachelor of Computer Science & Engineering, 2011

Revised Curriculum for Bachelor of Computer Science & Engineering, 2011 Revised Curriculum for Bachelor of Computer Science & Engineering, 2011 FIRST YEAR FIRST SEMESTER al I Hum/ T / 111A Humanities 4 100 3 II Ph /CSE/T/ 112A Physics - I III Math /CSE/ T/ Mathematics - I

More information

Advances in Game-Based Learning

Advances in Game-Based Learning Advances in Game-Based Learning Series Editors Dirk Ifenthaler Scott Joseph Warren Deniz Eseryel More information about this series at http://www.springer.com/series/13094 Janna Jackson Kellinger A Guide

More information

Learn Unity for Windows 10 Game Development

Learn Unity for Windows 10 Game Development Learn Unity for Windows 10 Game Development Sue Blackman Adam Tuliper Learn Unity for Windows 10 Game Development Sue Blackman Adam Tuliper Temecula, California, USA Lake Forest, California, USA ISBN-13

More information

How To See, How To Draw: Keys To Realistic Drawing PDF

How To See, How To Draw: Keys To Realistic Drawing PDF How To See, How To Draw: Keys To Realistic Drawing PDF Imagine having the ability to draw any subject with precision, detail and expression. With Claudia's help, you can do it! In How to See, How to Draw,

More information

Chapter 6- Lighting and Cameras

Chapter 6- Lighting and Cameras Cameras: Chapter 6- Lighting and Cameras By default, your scene already has one camera and that is usually all you need, but on occasion you may wish to add more cameras. You add more cameras by hitting

More information

HERO++ DESIGN DOCUMENT. By Team CreditNoCredit VERSION 6. June 6, Del Davis Evan Harris Peter Luangrath Craig Nishina

HERO++ DESIGN DOCUMENT. By Team CreditNoCredit VERSION 6. June 6, Del Davis Evan Harris Peter Luangrath Craig Nishina HERO++ DESIGN DOCUMENT By Team CreditNoCredit Del Davis Evan Harris Peter Luangrath Craig Nishina VERSION 6 June 6, 2011 INDEX VERSION HISTORY 4 Version 0.1 April 9, 2009 4 GAME OVERVIEW 5 Game logline

More information

Application Survey: Audiosurf

Application Survey: Audiosurf Audiosurf is a music and rhythm-based videogame which was first released for the personal computer in February 2008 by an independent videogame developer. In Audiosurf, the player selects a music track

More information

Prestwick House. Activity Pack. Click here. to learn more about this Activity Pack! Click here. to find more Classroom Resources for this title!

Prestwick House. Activity Pack. Click here. to learn more about this Activity Pack! Click here. to find more Classroom Resources for this title! Prestwick House Sample Pack Pack Literature Made Fun! Lord of the Flies by William GoldinG Click here to learn more about this Pack! Click here to find more Classroom Resources for this title! More from

More information

Discursive Constructions of Corporate Identities by Chinese Banks on Sina Weibo

Discursive Constructions of Corporate Identities by Chinese Banks on Sina Weibo Discursive Constructions of Corporate Identities by Chinese Banks on Sina Weibo Wei Feng Discursive Constructions of Corporate Identities by Chinese Banks on Sina Weibo An Integrated Sociolinguistics Approach

More information

The New Hollywood Historical Film

The New Hollywood Historical Film The New Hollywood Historical Film Tom Symmons The New Hollywood Historical Film 1967 78 Tom Symmons Arcadia University London, United Kingdom ISBN 978-1-137-52929-9 ISBN 978-1-137-52930-5 (ebook) DOI

More information

Transforming Industries with Enlighten

Transforming Industries with Enlighten Transforming Industries with Enlighten Alex Shang Senior Business Development Manager ARM Tech Forum 2016 Korea June 28, 2016 2 ARM: The Architecture for the Digital World ARM is about transforming markets

More information

11+ A STEP BY STEP GUIDE HOW TO DO NON-VERBAL REASONING 11+ CEM STEP BY STEP NON-VERBAL REASONING 12+

11+ A STEP BY STEP GUIDE HOW TO DO NON-VERBAL REASONING 11+ CEM STEP BY STEP NON-VERBAL REASONING 12+ 11+ HOW TO DO NON-VERBAL REASONING A STEP BY STEP GUIDE STEP BY STEP NON-VERBAL REASONING SELECTION TESTS GRAMMAR SCHOOL SELECTION STEP BY STEP NON-VERBAL REASONING 12+ 11+ PRIVATE SCHOOLS CEM Step by

More information

ADVANCED POWER ELECTRONICS CONVERTERS

ADVANCED POWER ELECTRONICS CONVERTERS ADVANCED POWER ELECTRONICS CONVERTERS IEEE Press 445 Hoes Lane Piscataway, NJ 08854 IEEE Press Editorial Board Tariq Samad, Editor in Chief George W. Arnold Mary Lanzerotti Linda Shafer Dmitry Goldgof

More information

Amazon Kindle Product Special: Drag-n-Drop Illustrator. James J. Jones

Amazon Kindle Product Special: Drag-n-Drop Illustrator. James J. Jones Amazon Kindle Product Special: Drag-n-Drop Illustrator James J. Jones Copyright 2014 James J Jones, LLC. All Rights Reserved. This guide may not be reproduced or transmitted in any form without the written

More information

Professional Python Frameworks Web 2.0 Programming with Django and TurboGears

Professional Python Frameworks Web 2.0 Programming with Django and TurboGears Professional Python Frameworks Web 2.0 Programming with Django and TurboGears Dana Moore Raymond Budd William Wright Wiley Publishing, Inc. Professional Python Frameworks Web 2.0 Programming with Django

More information

OBJECTIVE FOOD SCIENCE & TECHNOLOGY (3rd Revised & Enlarged Edition)

OBJECTIVE FOOD SCIENCE & TECHNOLOGY (3rd Revised & Enlarged Edition) OBJECTIVE FOOD SCIENCE & TECHNOLOGY (3rd Revised & Enlarged Edition) DEEPAK MUDGIL Assistant Professor Department of Dairy and Food Technology MIDFT, Mehsana, Gujarat & SHEWETA BARAK MUDGIL Assistant Professor

More information

Free Ebooks Game Programming Gems (Game Programming Gems (W/CD))

Free Ebooks Game Programming Gems (Game Programming Gems (W/CD)) Free Ebooks Game Programming Gems (Game Programming Gems (W/CD)) For the countless tasks involved in creating a game engine there are an equal number of possible solutions. But instead of spending hours

More information

Level 3 Extended Diploma Unit 22 Developing Computer Games

Level 3 Extended Diploma Unit 22 Developing Computer Games Level 3 Extended Diploma Unit 22 Developing Computer Games Outcomes LO1 Understand the impact of the gaming revolution on society LO2 Know the different types of computer game LO3 Be able to design and

More information

Announcing the 2018 International Games SIG Classic Game Showcase

Announcing the 2018 International Games SIG Classic Game Showcase Announcing the 2018 International Games SIG Classic Game Showcase featuring the Intellivision Game Console final event to be held online and live on stage September 29, 2018 at Thunder Studios in Long

More information

Game Programming Laboratory Conclusion report

Game Programming Laboratory Conclusion report Game Programming Laboratory Conclusion report Huw Bowles Samuel Muff Filip Wieladek Revision: 1 1. Table of Contents 1.Table of Contents...2 2.Introduction...2 3.Final Results The Game...2 4.Experiences...3

More information

Game Production: game development

Game Production: game development Game Production: game development Fabiano Dalpiaz f.dalpiaz@uu.nl 1 Outline Lecture contents 1. Development team and tasks 2. Game dev vs. Software dev 3. Tooling 4. Game engines 5. Sub-disciplines 2 1.

More information

Prof Manjula R 1, Chakradhar Raju M 2, Sai Chand M 3 Computer Science Department, VIT University

Prof Manjula R 1, Chakradhar Raju M 2, Sai Chand M 3 Computer Science Department, VIT University Software Engineering Challenges in Game Development Prof Manjula R 1, Chakradhar Raju M 2, Sai Chand M 3 Computer Science Department, VIT University Abstract Game development is the software process that

More information

The Test and Launch Control Technology for Launch Vehicles

The Test and Launch Control Technology for Launch Vehicles The Test and Launch Control Technology for Launch Vehicles Zhengyu Song The Test and Launch Control Technology for Launch Vehicles 123 Zhengyu Song China Academy of Launch Vehicle Technology Beijing China

More information

Using a Game Development Platform to Improve Advanced Programming Skills

Using a Game Development Platform to Improve Advanced Programming Skills Journal of Reviews on Global Economics, 2017, 6, 328-334 328 Using a Game Development Platform to Improve Advanced Programming Skills Banyapon Poolsawas 1 and Winyu Niranatlamphong 2,* 1 Department of

More information

GAME PRODUCTION HANDBOOK Second Edition

GAME PRODUCTION HANDBOOK Second Edition THE GAME PRODUCTION HANDBOOK Second Edition BY HEATHER MAXWELL CHANDLER INFINITY SCIENCE PlliSS INFINITY SCIENCE PRESS LLC Hingham, Massachusetts New Delhi, India TABLE OF CONTENTS Foreword Preface Acknowledgments

More information

Introduction. Video Game Programming Spring Video Game Programming - A. Sharf 1. Nintendo

Introduction. Video Game Programming Spring Video Game Programming - A. Sharf 1. Nintendo Indie Game The Movie - Official Trailer - YouTube.flv 235 Free Indie Games in 10 Minutes - YouTube.flv Introduction Video Game Programming Spring 2012 Nintendo Video Game Programming - A. Sharf 1 What

More information

THE ART OF. PHOTOGRAPHY Bruce D. Taubert and Amy Brooks Horn

THE ART OF. PHOTOGRAPHY Bruce D. Taubert and Amy Brooks Horn THE ART OF PHOTOGRAPHY Bruce D. Taubert and Amy Brooks Horn i ii The Art of Macro Photography Copyright 2018. Bruce D. Taubert, Amy Brooks Horn Text and Photography: Bruce D. Taubert and Amy Brooks Horn

More information

For personal use only!

For personal use only! Seeing Stars 2003 Galaxy series 2003-2009 Galaxy Series 2003 Page 2 of 9 Notice of Rights: All rights reserved. No part of this booklet may be reproduced or transmitted in any form by any means, electronic,

More information

CS 354R: Computer Game Technology

CS 354R: Computer Game Technology CS 354R: Computer Game Technology Introduction to Game AI Fall 2018 What does the A stand for? 2 What is AI? AI is the control of every non-human entity in a game The other cars in a car game The opponents

More information

25 Top Tips for Better Photography. Preview

25 Top Tips for Better Photography. Preview 25 Top Tips for Better Photography By Malcolm Boone http://www.photographyposingsecrets.com Disclaimer All rights reserved. No part of this publication may be reproduced or transmitted in any form or by

More information

DECISION TREE TUTORIAL

DECISION TREE TUTORIAL Kardi Teknomo DECISION TREE TUTORIAL Revoledu.com Decision Tree Tutorial by Kardi Teknomo Copyright 2008-2012 by Kardi Teknomo Published by Revoledu.com Online edition is available at Revoledu.com Last

More information

Game Design Document. RELEASE December 18, Austin Krauss

Game Design Document. RELEASE December 18, Austin Krauss Game Design Document RELEASE December 18, 2003 Table of Contents Disclaimer...- 1 - Game Overview...- 1 - How should the game be unique?...- 1 - How is it different from other games?...- 1 - What sort

More information

Gaming Development. Resources

Gaming Development. Resources Gaming Development Resources Beginning Game Programming Fourth Edition Jonathan S. Harbour 9781305258952 Beginning Game Programming will introduce students to the fascinating world of game programming

More information

Learn Sprite Kit for ios Game Development. Leland Long

Learn Sprite Kit for ios Game Development. Leland Long Learn Sprite Kit for ios Game Development Leland Long Learn Sprite Kit for ios Game Development Copyright 2014 by Leland Long This work is subject to copyright. All rights are reserved by the Publisher,

More information

Dry Etching Technology for Semiconductors. Translation supervised by Kazuo Nojiri Translation by Yuki Ikezi

Dry Etching Technology for Semiconductors. Translation supervised by Kazuo Nojiri Translation by Yuki Ikezi Dry Etching Technology for Semiconductors Translation supervised by Kazuo Nojiri Translation by Yuki Ikezi Kazuo Nojiri Dry Etching Technology for Semiconductors Kazuo Nojiri Lam Research Co., Ltd. Tokyo,

More information

Grouping Fingers and Keys

Grouping Fingers and Keys Grouping Fingers and Keys A Visual Approach to Fingering Scales and Arpeggios Major and Minor Keys A Tutorial for the Beginning Pianist Rosalie A. Gregory Cover Art: Courtesy of Art Explosion by Nova and

More information

Oculus Rift Getting Started Guide

Oculus Rift Getting Started Guide Oculus Rift Getting Started Guide Version 1.23 2 Introduction Oculus Rift Copyrights and Trademarks 2017 Oculus VR, LLC. All Rights Reserved. OCULUS VR, OCULUS, and RIFT are trademarks of Oculus VR, LLC.

More information

Federico Forti, Erdi Izgi, Varalika Rathore, Francesco Forti

Federico Forti, Erdi Izgi, Varalika Rathore, Francesco Forti Basic Information Project Name Supervisor Kung-fu Plants Jakub Gemrot Annotation Kung-fu plants is a game where you can create your characters, train them and fight against the other chemical plants which

More information

Mastering Autodesk Navisworks 2013

Mastering Autodesk Navisworks 2013 Mastering Autodesk Navisworks 2013 Dodds, J ISBN-13: 9781118281710 Table of Contents Foreword xvii Introduction xix Part 1 Navisworks Basics 1 Chapter 1 Getting to Know Autodesk Navisworks 3 Interface

More information

Level 3 Extended Diploma Unit 22 Developing Computer Games

Level 3 Extended Diploma Unit 22 Developing Computer Games Level 3 Extended Diploma Unit 22 Developing Computer Games Outcomes Understand the impact of the gaming revolution on society Know the different types of computer game Be able to design and develop computer

More information

Level 3 Extended Diploma Unit 22 Developing Computer Games

Level 3 Extended Diploma Unit 22 Developing Computer Games Level 3 Extended Diploma Unit 22 Developing Computer Games Outcomes Understand the impact of the gaming revolution on society Know the different types of computer game Be able to design and develop computer

More information

Robust Hand Gesture Recognition for Robotic Hand Control

Robust Hand Gesture Recognition for Robotic Hand Control Robust Hand Gesture Recognition for Robotic Hand Control Ankit Chaudhary Robust Hand Gesture Recognition for Robotic Hand Control 123 Ankit Chaudhary Department of Computer Science Northwest Missouri State

More information

Palgrave Studies in Comics and Graphic Novels. Series Editor Roger Sabin University of the Arts London London, United Kingdom

Palgrave Studies in Comics and Graphic Novels. Series Editor Roger Sabin University of the Arts London London, United Kingdom Palgrave Studies in Comics and Graphic Novels Series Editor Roger Sabin University of the Arts London London, United Kingdom This series concerns Comics Studies with a capital c and a capital s. It feels

More information

COMPOSITE FILAMENT WINDING

COMPOSITE FILAMENT WINDING COMPOSITE FILAMENT WINDING Edited by S.T. Peters ASM International Materials Park, Ohio 44073-0002 Copyright 2011 by ASM International All rights reserved No part of this book may be reproduced, stored

More information

Backgammon. by Chris Bray. FOR DUMmIES. A John Wiley and Sons, Ltd, Publication

Backgammon. by Chris Bray. FOR DUMmIES. A John Wiley and Sons, Ltd, Publication Backgammon FOR DUMmIES by Chris Bray A John Wiley and Sons, Ltd, Publication Backgammon For Dummies Published by John Wiley & Sons, Ltd The Atrium Southern Gate Chichester West Sussex PO19 8SQ England

More information

Product Development Strategy

Product Development Strategy Product Development Strategy Product Development Strategy Innovation Capacity and Entrepreneurial Firm Performance in High-Tech SMEs Mina Tajvidi Bangor Business School, Bangor University, UK and Azhdar

More information

Intellectual Capital in Enterprise Success

Intellectual Capital in Enterprise Success Intellectual Capital in Enterprise Success Strategy Revisited Dr. Lindsay Moore and Lesley Craig, Esq. John Wiley & Sons, Inc. Additional praise for Strategic Intellectual Capital Lesley Craig and Lindsay

More information

IMGD Technical Game Development I: Introduction. by Robert W. Lindeman

IMGD Technical Game Development I: Introduction. by Robert W. Lindeman IMGD 3000 - Technical Game Development I: Introduction by Robert W. Lindeman gogo@wpi.edu What to Expect This course is mainly about the nuts and bolts of creating game-engine code Game architecture, algorithms,

More information