Introduction to 3D Game Programming with Directx® 12

Total Page:16

File Type:pdf, Size:1020Kb

Introduction to 3D Game Programming with Directx® 12 Introduction to 3D Game Programming with DirectX® 12 LICENSE, DISCLAIMER OF LIABILITY, AND LIMITED WARRANTY By purchasing or using this book (the “Work”), you agree that this license grants permission to use the contents contained herein, but does not give you the right of ownership to any of the textual content in the book or ownership to any of the information or products contained in it. This license does not permit uploading of the Work onto the Internet or on a network (of any kind) without the written consent of the Publisher. Duplication or dissemination of any text, code, simulations, images, etc. contained herein is limited to and subject to licensing terms for the respective products, and permission must be obtained from the Publisher or the owner of the content, etc., in order to reproduce or network any portion of the textual material (in any media) that is contained in the Work. MERCURY LEARNING AND INFORMATION (“MLI” or “the Publisher”) and anyone involved in the creation, writing, or production of the companion disc, accompanying algorithms, code, or computer programs (“the software”), and any accompanying Web site or software of the Work, cannot and do not warrant the performance or results that might be obtained by using the contents of the Work. The author, developers, and the Publisher have used their best efforts to insure the accuracy and functionality of the textual material and/or programs contained in this package; we, however, make no warranty of any kind, express or implied, regarding the performance of these contents or programs. The Work is sold “as is” without warranty (except for defective materials used in manufacturing the book or due to faulty workmanship). The author, developers, and the publisher of any accompanying content, and anyone involved in the composition, production, and manufacturing of this work will not be liable for damages of any kind arising out of the use of (or the inability to use) the algorithms, source code, computer programs, or textual material contained in this publication. This includes, but is not limited to, loss of revenue or profi t, or other incidental, physical, or consequential damages arising out of the use of this Work. The sole remedy in the event of a claim of any kind is expressly limited to replacement of the book, and only at the discretion of the Publisher. The use of “implied warranty” and certain “exclusions” vary from state to state, and might not apply to the purchaser of this product. Companion disc fi les are available for download from the publisher by writing to info@ merclearning.com. Introduction to 3D Game Programming with DirectX® 12 Frank D. Luna MERCURY LEARNING AND INFORMATION Dulles, Virginia Boston, Massachusetts New Delhi Copyright ©2016 by MERCURY LEARNING AND INFORMATION LLC. All rights reserved. This publication, portions of it, or any accompanying software may not be reproduced in any way, stored in a retrieval system of any type, or transmitted by any means, media, electronic display or mechanical display, including, but not limited to, photocopy, recording, Internet postings, or scanning, without prior permission in writing from the publisher. Publisher: David Pallai MERCURY LEARNING AND INFORMATION 22841 Quicksilver Drive Dulles, VA 20166 [email protected] www.merclearning.com (800) 232-0223 Frank D. Luna. Introduction to 3D GAME PROGRAMMING WITH DIRECTX 12 ISBN: 978-1-942270-06-5 The publisher recognizes and respects all marks used by companies, manufacturers, and developers as a means to distinguish their products. All brand names and product names mentioned in this book are trademarks or service marks of their respective companies. Any omission or misuse (of any kind) of service marks or trademarks, etc. is not an attempt to infringe on the property of others. Library of Congress Control Number: 2015957713 161718321 This book is printed on acid-free paper. Our titles are available for adoption, license, or bulk purchase by institutions, corporations, etc. For additional information, please contact the Customer Service Dept. at 800-232-0223(toll free). All of our titles are available in digital format at authorcloudware.com and other digital vendors. Companion fi les for this title are available by contacting [email protected]. The sole obligation of MERCURY LEARNING AND INFORMATION to the purchaser is to replace the book or disc, based on defective materials or faulty workmanship, but not based on the operation or functionality of the product. To my nieces and nephews, Marrick, Hans, Max, Anna, Augustus, Presley, and Elyse CONTENTS Dedication v Acknowledgments xxii Introduction xxv Intended Audience xxvi Prerequisites xxvi Required Development Tools and Hardware xxvii Using the DirectX SDK Documentation and SDK Samples xxvii Clarity xxix Sample Programs and Online Supplements xxix Demo Project Setup in Visual Studio 2010 xxix Download the Book’s Source Code xxx Create a Win32 Project xxx Linking the DirectX Libraries xxxi Adding the Source Code and Building the Project xxxii PART I MATHEMATICAL PREREQUISITES Chapter 1 Vector Algebra 3 1.1 Vectors 4 1.1.1 Vectors and Coordinate Systems 5 1.1.2 Left-Handed Versus Right-Handed Coordinate Systems 6 1.1.3 Basic Vector Operations 7 1.2 Length and Unit Vectors 9 1.3 The Dot Product 10 1.3.1 Orthogonalization 13 1.4 The Cross Product 14 1.4.1 Pseudo 2D Cross Product 16 1.4.2 Orthogonalization with the Cross Product 16 viii INTRODUCTION TO 3D GAME PROGRAMMING WITH DIRECTX® 12 1.5 Points 17 1.6 DirectX Math Vectors 18 1.6.1 Vector Types 19 1.6.2 Loading and Storage Methods 21 1.6.3 Parameter Passing 21 1.6.4 Constant Vectors 23 1.6.5 Overloaded Operators 24 1.6.6 Miscellaneous 24 1.6.7 Setter Functions 25 1.6.8 Vector Functions 26 1.6.9 Floating-Point Error 30 1.7 Summary 31 1.8 Exercises 33 Chapter 2 Matrix Algebra 37 2.1 Defi nition 38 2.2 Matrix Multiplication 40 2.2.1 Defi nition 40 2.2.2 Vector-Matrix Multiplication 41 2.2.3 Associativity 42 2.3 The Transpose of a Matrix 42 2.4 The Identity Matrix 43 2.5 The Determinant of a Matrix 44 2.5.1 Matrix Minors 45 2.5.2 Defi nition 45 2.6 The Adjoint of a Matrix 47 2.7 The Inverse of a Matrix 47 2.8 DirectX Math Matrices 49 2.8.1 Matrix Types 50 2.8.2 Matrix Functions 52 2.8.3 DirectX Math Matrix Sample Program 53 2.9 Summary 54 2.10 Exercises 55 Chapter 3 Transformations 59 3.1 Linear Transformations 60 3.1.1 Defi nition 60 3.1.2 Matrix Representation 60 3.1.3 Scaling 61 3.1.4 Rotation 63 CONTENTS ix 3.2 Affi ne Transformations 66 3.2.1 Homogeneous Coordinates 66 3.2.2 Defi nition and Matrix Representation 67 3.2.3 Translation 67 3.2.4 Affi ne Matrices for Scaling and Rotation 70 3.2.5 Geometric Interpretation of an Affi ne Transformation Matrix 70 3.3 Composition of Transformations 72 3.4 Change of Coordinate Transformations 73 3.4.1 Vectors 74 3.4.2 Points 74 3.4.3 Matrix Representation 75 3.4.4 Associativity and Change of Coordinate Matrices 76 3.4.5 Inverses and Change of Coordinate Matrices 77 3.5 Transformation Matrix versus Change of Coordinate Matrix 78 3.6 DirectX Math Transformation Functions 79 3.7 Summary 80 3.8 Exercises 82 PART II DIRECT 3D FOUNDATIONS Chapter 4 Direct3D Initialization 89 4.1 Preliminaries 90 4.1.1 Direct3D 12 Overview 90 4.1.2 COM 90 4.1.3 Textures Formats 91 4.1.4 The Swap Chain and Page Flipping 93 4.1.5 Depth Buffering 93 4.1.6 Resources and Descriptors 96 4.1.7 Multisampling Theory 98 4.1.8 Multisampling in Direct3D 99 4.1.9 Feature Levels 101 4.1.10 DirectX Graphics Infrastructure 101 4.1.11 Checking Feature Support 105 4.1.12 Residency 107 4.2 CPU/GPU Interaction 107 4.2.1 The Command Queue and Command Lists 108 4.2.2 CPU/GPU Synchronization 112 x INTRODUCTION TO 3D GAME PROGRAMMING WITH DIRECTX® 12 4.2.3 Resource Transitions 114 4.2.4 Multithreading with Commands 116 4.3 Initializing Direct3D 116 4.3.1 Create the Device 117 4.3.2 Create the Fence and Descriptor Sizes 118 4.3.3 Check 4X MSAA Quality Support 119 4.3.4 Create Command Queue and Command List 119 4.3.5 Describe and Create the Swap Chain 120 4.3.6 Create the Descriptor Heaps 122 4.3.7 Create the Render Target View 123 4.3.8 Create the Depth/Stencil Buffer and View 125 4.3.9 Set the Viewport 129 4.3.10 Set the Scissor Rectangles 131 4.4 Timing and Animation 131 4.4.1 The Performance Timer 132 4.4.2 Game Timer Class 133 4.4.3 Time Elapsed Between Frames 134 4.4.4 Total Time 136 4.5 The Demo Application Framework 139 4.5.1 D3DApp 139 4.5.2 Non-Framework Methods 142 4.5.3 Framework Methods 143 4.5.4 Frame Statistics 145 4.5.5 The Message Handler 146 4.5.6 The “Init Direct3D” Demo 149 4.6 Debugging Direct3D Applications 153 4.7 Summary 155 Chapter 5 The Rendering Pipeline 159 5.1 The 3D Illusion 160 5.2 Model Representation 162 5.3 Basic Computer Color 163 5.3.1 Color Operations 164 5.3.2 128-Bit Color 165 5.3.3 32-Bit Color 165 5.4 Overview of the Rendering Pipeline 167 5.5 The Input Assembler Stage 168 5.5.1 Vertices 168 5.5.2 Primitive Topology 169 5.5.2.1 Point List 170 CONTENTS xi 5.5.2.2 Line Strip 170 5.5.2.3 Line List 170 5.5.2.4 Triangle Strip 170 5.5.2.5 Triangle List 171 5.5.2.6 Primitives with Adjacency 171 5.5.2.7 Control Point Patch List 172 5.5.3 Indices 172 5.6 The Vertex Shader Stage 175 5.6.1 Local Space and World Space 175 5.6.2 View Space 179 5.6.3 Projection and Homogeneous Clip Space 182 5.6.3.1 Defi ning a Frustum 183 5.6.3.2 Projecting Vertices 184 5.6.3.3 Normalized Device Coordinates (NDC) 185 5.6.3.4 Writing the Projection Equations with a Matrix 186 5.6.3.5 Normalized Depth Value 187 5.6.3.6 XMMatrixPerspectiveFovLH
Recommended publications
  • Windows 7 Operating Guide
    Welcome to Windows 7 1 1 You told us what you wanted. We listened. This Windows® 7 Product Guide highlights the new and improved features that will help deliver the one thing you said you wanted the most: Your PC, simplified. 3 3 Contents INTRODUCTION TO WINDOWS 7 6 DESIGNING WINDOWS 7 8 Market Trends that Inspired Windows 7 9 WINDOWS 7 EDITIONS 10 Windows 7 Starter 11 Windows 7 Home Basic 11 Windows 7 Home Premium 12 Windows 7 Professional 12 Windows 7 Enterprise / Windows 7 Ultimate 13 Windows Anytime Upgrade 14 Microsoft Desktop Optimization Pack 14 Windows 7 Editions Comparison 15 GETTING STARTED WITH WINDOWS 7 16 Upgrading a PC to Windows 7 16 WHAT’S NEW IN WINDOWS 7 20 Top Features for You 20 Top Features for IT Professionals 22 Application and Device Compatibility 23 WINDOWS 7 FOR YOU 24 WINDOWS 7 FOR YOU: SIMPLIFIES EVERYDAY TASKS 28 Simple to Navigate 28 Easier to Find Things 35 Easy to Browse the Web 38 Easy to Connect PCs and Manage Devices 41 Easy to Communicate and Share 47 WINDOWS 7 FOR YOU: WORKS THE WAY YOU WANT 50 Speed, Reliability, and Responsiveness 50 More Secure 55 Compatible with You 62 Better Troubleshooting and Problem Solving 66 WINDOWS 7 FOR YOU: MAKES NEW THINGS POSSIBLE 70 Media the Way You Want It 70 Work Anywhere 81 New Ways to Engage 84 INTRODUCTION TO WINDOWS 7 6 WINDOWS 7 FOR IT PROFESSIONALS 88 DESIGNING WINDOWS 7 8 WINDOWS 7 FOR IT PROFESSIONALS: Market Trends that Inspired Windows 7 9 MAKE PEOPLE PRODUCTIVE ANYWHERE 92 WINDOWS 7 EDITIONS 10 Remove Barriers to Information 92 Windows 7 Starter 11 Access
    [Show full text]
  • Wireless GPON ONT
    GPON 4 Ethernet Ports | 1 PON | VoIP | 802.11n | 802.11ac GRG-4260us Wireless GPON ONT The GRG-4260us is an advanced GPON ONT gateway with 1 GPON WAN port, 4 Gigabit Ethernet LAN ports, 2 FXS ports, 1 USB2.0 Host and IEEE802.11 series Wi-Fi. The Wi-Fi not only provides an 802.11n 2T2R 2.4GHz Band which is backward compatible with 802.11g/b but also supports high performance 802.11ac with 3T3R design at 5GHz band. GRG-4260us provides powerful functions which telephone companies have applied on the xDSL CPE IAD device, and remote management utilities (such as TR-069) for network management and maintenance. FEATURES .UPnP, IPv6 compliant .WPA and 802.1x/ WPS 2.0/ Radius Client .PhyR and G.INP .NAT/PAT .Supports TR-069/TR-098/TR-181i2 .IGMP Proxy/ Fast Leave/ Snooping/ Proxy .Configuration backup and restoration .DHCP Server/Client .Web-based management (HTTPS/HTTP) .Embedded SNMP agent .Supports remote administration, automatic .IP/MAC address filtering firmware upgrade and configuration .Static route/ RIP/ RIP v2 routing functions .Integrated 802.11ac AP (backward compatible .DNS Proxy/Relay with 802.11a/n) www.comtrend.com GRG-4260us 4 Ethernet Ports | 1 PON | VoIP | 802.11n | 802.11ac SPECIFICATIONS Hardware Networking Protocols .PPPoE pass-through, Multiple PPPoE sessions on single WAN .GPON X 1 Bi-directional Optical (1310nm/1490nm) .RJ-45 X 4 for LAN, (10/100/1000 Base T) interface .RJ-11 X 2 for FXS (optional) .PPPoE filtering of non-PPPoE packets between WAN and LAN .USB2.0 host X 1 .Transparent bridging between all LAN and WAN interfaces
    [Show full text]
  • Run-Commands-Windows-10.Pdf
    Run Commands Windows 10 by Bettertechtips.com Command Action Command Action documents Open Documents Folder devicepairingwizard Device Pairing Wizard videos Open Videos Folder msdt Diagnostics Troubleshooting Wizard downloads Open Downloads Folder tabcal Digitizer Calibration Tool favorites Open Favorites Folder dxdiag DirectX Diagnostic Tool recent Open Recent Folder cleanmgr Disk Cleanup pictures Open Pictures Folder dfrgui Optimie Drive devicepairingwizard Add a new Device diskmgmt.msc Disk Management winver About Windows dialog dpiscaling Display Setting hdwwiz Add Hardware Wizard dccw Display Color Calibration netplwiz User Accounts verifier Driver Verifier Manager azman.msc Authorization Manager utilman Ease of Access Center sdclt Backup and Restore rekeywiz Encryption File System Wizard fsquirt fsquirt eventvwr.msc Event Viewer calc Calculator fxscover Fax Cover Page Editor certmgr.msc Certificates sigverif File Signature Verification systempropertiesperformance Performance Options joy.cpl Game Controllers printui Printer User Interface iexpress IExpress Wizard charmap Character Map iexplore Internet Explorer cttune ClearType text Tuner inetcpl.cpl Internet Properties colorcpl Color Management iscsicpl iSCSI Initiator Configuration Tool cmd Command Prompt lpksetup Language Pack Installer comexp.msc Component Services gpedit.msc Local Group Policy Editor compmgmt.msc Computer Management secpol.msc Local Security Policy: displayswitch Connect to a Projector lusrmgr.msc Local Users and Groups control Control Panel magnify Magnifier
    [Show full text]
  • [MS-ERREF]: Windows Error Codes
    [MS-ERREF]: Windows Error Codes Intellectual Property Rights Notice for Open Specifications Documentation . Technical Documentation. Microsoft publishes Open Specifications documentation for protocols, file formats, languages, standards as well as overviews of the interaction among each of these technologies. Copyrights. This documentation is covered by Microsoft copyrights. Regardless of any other terms that are contained in the terms of use for the Microsoft website that hosts this documentation, you may make copies of it in order to develop implementations of the technologies described in the Open Specifications and may distribute portions of it in your implementations using these technologies or your documentation as necessary to properly document the implementation. You may also distribute in your implementation, with or without modification, any schema, IDL's, or code samples that are included in the documentation. This permission also applies to any documents that are referenced in the Open Specifications. No Trade Secrets. Microsoft does not claim any trade secret rights in this documentation. Patents. Microsoft has patents that may cover your implementations of the technologies described in the Open Specifications. Neither this notice nor Microsoft's delivery of the documentation grants any licenses under those or any other Microsoft patents. However, a given Open Specification may be covered by Microsoft Open Specification Promise or the Community Promise. If you would prefer a written license, or if the technologies described in the Open Specifications are not covered by the Open Specifications Promise or Community Promise, as applicable, patent licenses are available by contacting [email protected]. Trademarks. The names of companies and products contained in this documentation may be covered by trademarks or similar intellectual property rights.
    [Show full text]
  • (RUNTIME) a Salud Total
    Windows 7 Developer Guide Published October 2008 For more information, press only: Rapid Response Team Waggener Edstrom Worldwide (503) 443-7070 [email protected] Downloaded from www.WillyDev.NET The information contained in this document represents the current view of Microsoft Corp. on the issues discussed as of the date of publication. Because Microsoft must respond to changing market conditions, it should not be interpreted to be a commitment on the part of Microsoft, and Microsoft cannot guarantee the accuracy of any information presented after the date of publication. This guide is for informational purposes only. MICROSOFT MAKES NO WARRANTIES, EXPRESS OR IMPLIED, IN THIS SUMMARY. Complying with all applicable copyright laws is the responsibility of the user. Without limiting the rights under copyright, no part of this document may be reproduced, stored in or introduced into a retrieval system, or transmitted in any form, by any means (electronic, mechanical, photocopying, recording or otherwise), or for any purpose, without the express written permission of Microsoft. Microsoft may have patents, patent applications, trademarks, copyrights or other intellectual property rights covering subject matter in this document. Except as expressly provided in any written license agreement from Microsoft, the furnishing of this document does not give you any license to these patents, trademarks, copyrights, or other intellectual property. Unless otherwise noted, the example companies, organizations, products, domain names, e-mail addresses, logos, people, places and events depicted herein are fictitious, and no association with any real company, organization, product, domain name, e-mail address, logo, person, place or event is intended or should be inferred.
    [Show full text]
  • Directx™ 12 Case Studies
    DirectX™ 12 Case Studies Holger Gruen Senior DevTech Engineer, 3/1/2017 Agenda •Introduction •DX12 in The Division from Massive Entertainment •DX12 in Anvil Next Engine from Ubisoft •DX12 in Hitman from IO Interactive •DX12 in 'Game AAA' •AfterMath Preview •Nsight VSE & DirectX12 Games •Q&A www.gameworks.nvidia.com 2 Agenda •Introduction •DX12 in The Division from Massive Entertainment •DX12 in Anvil Next Engine from Ubisoft •DX12 in Hitman from IO Interactive •DX12 in 'Game AAA' •AfterMath Preview •Nsight VSE & DirectX12 Games •Q&A www.gameworks.nvidia.com 3 Introduction •DirectX 12 is here to stay • Games do now support DX12 & many engines are transitioning to DX12 •DirectX 12 makes 3D programming more complex • see DX12 Do’s & Don’ts in developer section on NVIDIA.com •Goal for this talk is to … • Hear what talented developers have done to cope with DX12 • See what developers want to share when asked to describe their DX12 story • Gain insights for your own DX11 to DX12 transition www.gameworks.nvidia.com 4 Thanks & Credits •Carl Johan Lejdfors Technical Director & Daniel Wesslen Render Architect - Massive •Jonas Meyer Lead Render Programmer & Anders Wang Kristensen Render Programmer - Io-Interactive •Tiago Rodrigues 3D Programmer - Ubisoft Montreal www.gameworks.nvidia.com 5 Before we really start … •Things we’ll be hearing about a lot • Memory Managment • Barriers • Pipeline State Objects • Root Signature and Shader Bindings • Multiple Queues • Multi threading If you get a chance check out the DX12 presentation from Monday’s ‘The
    [Show full text]
  • Assessing the Windows 8 Development Platform
    Assessing the Windows 8 Development Platform Introduction Metro Style vs. Traditional At the Build conference in September 2011, Microsoft provided Windows Applications details about their next operating system release, code name WinRT/Metro style applications differ from the traditional “Windows 8.” Leading up to this conference there has been a “Windows” look by eliminating the Windows “chrome” such fair amount of uncertainty about the future direction of the as frames, window borders, control corners, etc. in favor a full Microsoft development platform, including Microsoft .NET and screen, immersive experience. Metro style applications are Silverlight. intended to leverage asynchronous features in the UI controls Microsoft revealed that Windows 8 supports two broad and languages to provide a very “fast and fluid” interface. categories of application: traditional desktop applications and Figure 1 is an example of a traditional Windows application. the new WinRT, or “Metro” style applications. The new WinRT API and the Metro style applications it enables may represent the future of smart client development on the Windows operating system. However, it is important to understand that Microsoft stated their clear intent that all applications that run today on Windows 7 will run in the Windows 8 desktop environment. This means that applications built using Silverlight, WPF, Windows Forms, or other existing technologies will continue to run on Windows 8. WinRT is a new operating system programming interface (API), updated for modern technologies and concepts. It replaces the aging Win32 API, enabling the creation of applications that can better take advantage of modern networking, power, and user experience technologies. “Metro” is a set of user experience and interaction design guidelines that Microsoft recommends for WinRT applications.
    [Show full text]
  • Summary Both the Desktop Graphics And
    Summary Both the desktop graphics and animated film industries are striving to create spectacular, lifelike worlds. Film quality realism requires complicated per-pixel operations, previously impractical for desktop graphics which must render frames as fast as 60 times per second. The 3D Blaster GeForce2 GTS is the first Graphics Processing Unit (GPU) with the 3D performance and enhanced feature set necessary to approach this distinct level of realism. The 3D Blaster GeForce2 GTS is a State of the Art 3D Graphics Accelerator. The combination between Nvidia’s 2nd Generation Transform & Lighting (T&L) Architecture and the Nvidia Shading Rasterizer (NSR) produces one of the most stunning and realistic visuals ever seen on screen. The integrated NSR makes advanced per-pixel shading capabilities possible. This breakthrough technology has the ability to process seven pixel operations in a single pass on each of four pixel pipelines, simultaneously. The end result of this is to allow individual pixel control of colour, shadow, light, reflectivity, emissivity, specularity, loss, dirt, and other visual and material components used to create amazingly realistic objects and environments. Per-pixel shading delivers the next-generation of visual realism by going beyond the limited texture mapping techniques of previous graphics processors. • New HyperTexel architecture delivers 1.6 gigatexels per second for staggering frame rates and high- performance anti-aliasing • New NVIDIA Shading Rasterizer (NSR) delivers per pixel shading and lighting for rich,
    [Show full text]
  • Beginning .NET Game Programming in En
    Beginning .NET Game Programming in en DAVID WELLER, ALEXANDRE SANTOS LOBAo, AND ELLEN HATTON APress Media, LLC Beginning .NET Game Programming in C# Copyright @2004 by David Weller, Alexandre Santos Lobao, and Ellen Hatton Originally published by APress in 2004 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 978-1-59059-319-6 ISBN 978-1-4302-0721-4 (eBook) DOI 10.1007/978-1-4302-0721-4 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 Reviewers: Andrew Jenks, Kent Sharkey, Tom Miller Editorial Board: Steve Anglin, Dan Appleman, Gary Cornell, James Cox, Tony Davis, John Franklin, Chris Mills, Steve Rycroft, Dominic Shakeshaft, Julian Skinner, Jim Sumser, Karen Watterson, Gavin Wray, John Zukowski Assistant Publisher: Grace Wong Project Manager: Sofia Marchant Copy Editor: Ami Knox Production Manager: Kari Brooks Production Editor: JanetVail Proofreader: Patrick Vincent Compositor: ContentWorks Indexer: Rebecca Plunkett Artist: Kinetic Publishing Services, LLC 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.
    [Show full text]
  • Directx 11 Extended to the Implementation of Compute Shader
    DirectX 1 DirectX About the Tutorial Microsoft DirectX is considered as a collection of application programming interfaces (APIs) for managing tasks related to multimedia, especially with respect to game programming and video which are designed on Microsoft platforms. Direct3D which is a renowned product of DirectX is also used by other software applications for visualization and graphics tasks such as CAD/CAM engineering. Audience This tutorial has been prepared for developers and programmers in multimedia industry who are interested to pursue their career in DirectX. Prerequisites Before proceeding with this tutorial, it is expected that reader should have knowledge of multimedia, graphics and game programming basics. This includes mathematical foundations as well. Copyright & Disclaimer Copyright 2019 by Tutorials Point (I) Pvt. Ltd. All the content and graphics published in this e-book are the property of Tutorials Point (I) Pvt. Ltd. The user of this e-book is prohibited to reuse, retain, copy, distribute or republish any contents or a part of contents of this e-book in any manner without written consent of the publisher. We strive to update the contents of our website and tutorials as timely and as precisely as possible, however, the contents may contain inaccuracies or errors. Tutorials Point (I) Pvt. Ltd. provides no guarantee regarding the accuracy, timeliness or completeness of our website or its contents including this tutorial. If you discover any errors on our website or in this tutorial, please notify us at [email protected]
    [Show full text]
  • NET Technology Guide for Business Applications // 1
    .NET Technology Guide for Business Applications Professional Cesar de la Torre David Carmona Visit us today at microsoftpressstore.com • Hundreds of titles available – Books, eBooks, and online resources from industry experts • Free U.S. shipping • eBooks in multiple formats – Read on your computer, tablet, mobile device, or e-reader • Print & eBook Best Value Packs • eBook Deal of the Week – Save up to 60% on featured titles • Newsletter and special offers – Be the first to hear about new releases, specials, and more • Register your book – Get additional benefits Hear about it first. Get the latest news from Microsoft Press sent to your inbox. • New and upcoming books • Special offers • Free eBooks • How-to articles Sign up today at MicrosoftPressStore.com/Newsletters Wait, there’s more... Find more great content and resources in the Microsoft Press Guided Tours app. The Microsoft Press Guided Tours app provides insightful tours by Microsoft Press authors of new and evolving Microsoft technologies. • Share text, code, illustrations, videos, and links with peers and friends • Create and manage highlights and notes • View resources and download code samples • Tag resources as favorites or to read later • Watch explanatory videos • Copy complete code listings and scripts Download from Windows Store Free ebooks From technical overviews to drilldowns on special topics, get free ebooks from Microsoft Press at: www.microsoftvirtualacademy.com/ebooks Download your free ebooks in PDF, EPUB, and/or Mobi for Kindle formats. Look for other great resources at Microsoft Virtual Academy, where you can learn new skills and help advance your career with free Microsoft training delivered by experts.
    [Show full text]
  • PDF Download Beginning Directx 10 Game Programming 1St Edition Kindle
    BEGINNING DIRECTX 10 GAME PROGRAMMING 1ST EDITION PDF, EPUB, EBOOK Wendy Jones | 9781598633610 | | | | | Beginning DirectX 10 Game Programming 1st edition PDF Book In addition, this chapter explains primitive IDs and texture arrays. Discover the exciting world of game programming and 3D graphics creation using DirectX 11! Furthermore, we show how to smoothly "walk" the camera over the terrain. Show all. Show next xx. In addition, we show how to output 2D text, and give some tips on debugging Direct3D applications. JavaScript is currently disabled, this site works much better if you enable JavaScript in your browser. Pages Weller, David et al. The reader should satisfy the following prerequisites:. Beginning directx 11 game programming by allen Torrent 77e6ecdabd72afe42d5ec9 Contents. Beginning directx 11 game programming - bokus. Chapter 17, Particle Systems: In this chapter, we learn how to model systems that consist of many small particles that all behave in a similar manner. This book is anything but game programming,. He made the odd shift into multitier IT application development during the Internet boom, ultimately landing inside of Microsoft as a technical evangelist, where he spends time playing with all sorts of new technology and merrily saying under his breath, "I can't believe people pay me to have this much fun! For example, particle systems can be used to model falling snow and rain, fire and smoke, rocket trails, sprinklers, and fountains. Beginning DirectX 11 Game Programming. Ultimate game programming - coming soon Ultimate Game Programming coming soon website. We will be pleased if you get back more. Chapter 5, The Rendering Pipeline: In this long chapter, we provide a thorough introduction to the rendering pipeline, which is the sequence of steps necessary to generate a 2D image of the world based on what the virtual camera sees.
    [Show full text]