Beginning Direct3d Game Programming, 2Nd Edition

Total Page:16

File Type:pdf, Size:1020Kb

Beginning Direct3d Game Programming, 2Nd Edition Beginning Direct3D® Game Programming 2nd Edition Beginning Direct3D® Game Programming 2nd Edition Wolfgang F. Engel © 2003 by Premier Press, a division of Course Technology. All rights reserved. No part of this book 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 written permission from Premier Press, except for the inclusion of brief quotations in a review. The Premier Press logo and related trade dress are trademarks of Premier Press and may not be used without written permission. Publisher: Stacy L. Hiquet Senior Marketing Manager: Martine Edwards Marketing Manager: Heather Hurley Associate Marketing Manager: Kristin Eisenzopf Manager of Editorial Services: Heather Talbot Acquisitions Editor: Mitzi Foster-Koontz Project Editor/Copy Editor: Cathleen D. Snyder Technical Reviewer: André LaMothe Retail Market Coordinator: Sarah Dubois Interior Layout: Shawn Morningstar Cover Designer: Mike Tanamachi CD-ROM Producer: Brandon Penticuff Indexer: Katherine Stimson Proofreader: Lorraine Gunter DirectDraw, DirectMusic, DirectPlay, DirectSound, DirectX, Microsoft, Visual Basic, Visual C++, Windows, Windows NT, Xbox, and/or other Microsoft products are registered trademarks or trade- marks of Microsoft Corporation in the U.S. and/or other countries. All other trademarks are the property of their respective owners. Important: Premier Press cannot provide software support. Please contact the appropriate software manufacturer’s technical support line or Web site for assistance. Premier Press and the author have attempted throughout this book to distinguish proprietary trade- marks from descriptive terms by following the capitalization style used by the manufacturer. Information contained in this book has been obtained by Premier Press from sources believed to be reliable. However, because of the possibility of human or mechanical error by our sources, Premier Press, or others, the Publisher does not guarantee the accuracy, adequacy, or completeness of any information and is not responsible for any errors or omissions or the results obtained from use of such information. Readers should be particularly aware of the fact that the Internet is an ever-chang- ing entity. Some facts may have changed since this book went to press. ISBN: 1-931841-39-x Library of Congress Catalog Card Number: 2003101212 Printed in the United States of America 03 04 05 06 07 BH 10 9 8 7 6 5 4 3 2 1 Premier Press, a division of Course Technology 25 Thomson Place Boston, MA 02210 Für meine Frau Katja und unsere Tochter Anja Acknowledgments his book couldn’t have been completed without the help of many people. In Tparticular, I want to thank my parents, who gave me a wonderful and warm child- hood; my wife, Katja, for being patient with a spare-time author; and our nearly two-year-old daughter, Anna, for showing me the important things in life. Additionally I would like to thank those people who also helped to make this book possible: Heather Hurley, Mitzi Koontz, Emi Smith, Cathleen Snyder, Heather Talbot, and André LaMothe. Thanks for your patience with me and for a great time at GDC 2003. About the Author Wolfgang F. Engel is the editor and coauthor of several programming books. He has also written several online tutorials published on http://www.gamedev.net, http://www.direct3d.info, and other Web sites. He held lectures at GDC 2003 and at Vision Days in Copenhagen. Wolfgang is also a faculty advisor for the Academy of Game Entertainment Technology (http://www.academyofget.com/html/advisors.html). Contents at a Glance Introduction . xx Part One DirectX Graphics: Don’t Hurt Me . 1 Chapter 1 The History of Direct3D/DirectX Graphics . 3 Chapter 2 Overview of HAL and COM . 9 Chapter 3 Programming Conventions. 19 Chapter 4 3D Fundamentals, Gouraud Shading, and Texture-Mapping Basics . 27 Chapter 5 The Basics. 37 Chapter 6 First Steps to Animation. 77 Part Two Knee-Deep in DirectX Graphics Programming . 123 Chapter 7 Texture-Mapping Fundamentals . 125 Chapter 8 Using Multiple Textures . 149 Part Three Hard-Core DirectX Graphics Programming . 175 Chapter 9 Shader Programming with the High-Level Shader Language. 177 Chapter 10 More Advanced Shader Effects. 197 Contents at a Glance ix Chapter 11 Working with Files . 227 Chapter 12 Using *.md3 Files . 253 Part Four Appendixes . 299 Appendix A Windows Game Programming Foundation . 301 Appendix B C++ Primer . 327 Appendix C Mathematics Primer . 353 Appendix D Creating a Texture with D3DXCreateTextureFromFileEx(). 371 Appendix E Game Programming Resources . 375 Appendix F What’s on the CD . 377 Index . 381 Contents Letter from the Series Editor . xix Introduction . xx Part One DirectX Graphics: Don’t Hurt Me . 1 Chapter 1 The History of Direct3D/DirectX Graphics. 3 DirectX 2.0 . 4 DirectX 6/7 . 5 DirectX 8. 5 Point Sprites . 6 3D Textures. 6 Direct3DX Utility Library . 6 Vertex and Pixel Shaders . 6 DirectX 9. 7 Summary. 8 Chapter 2 Overview of HAL and COM . 9 Hardware Abstraction Layer . 10 Pluggable Software Devices. 13 Reference Rasterizer . 14 Controlling Devices . 14 COM . 15 Summary. 17 Contents xi Chapter 3 Programming Conventions . 19 Accessing COM Objects . 20 Naming Conventions . 22 Debugging DirectX. 24 Return Codes . 25 Summary. 26 Chapter 4 3D Fundamentals, Gouraud Shading, and Texture-Mapping Basics . 27 3D Fundamentals . 28 Understanding Vertices . 30 Working with Orientation . 31 Understanding Faces . 31 Understanding Polygons . 33 Understanding Normals. 33 Understanding Normals and Gouraud Shading . 33 Te x t ure-Mapping Basics . 34 Summary. 36 Chapter 5 The Basics . 37 Compiling the Examples . 38 The DirectX Graphics Common Architecture . 40 The Basic Example . 41 The ConfirmDevice(), OneTimeSceneInit(), and InitDeviceObjects() Functions . 44 The RestoreDeviceObjects() Method . 45 The FrameMove() Function . 53 The Render() Function . 53 xii Contents The InvalidateDeviceObjects() Function . 57 The DeleteDeviceObjects() Function . 58 The FinalCleanup() Function . 58 The Basic2 Example. 58 The InitDeviceObjects() Function . 62 The RestoreDeviceObjects() Function . 62 The Render() Function . 64 The InvalidateDeviceObjects() Function . 66 The DeleteDeviceObjects() Function . ..
Recommended publications
  • THINC: a Virtual and Remote Display Architecture for Desktop Computing and Mobile Devices
    THINC: A Virtual and Remote Display Architecture for Desktop Computing and Mobile Devices Ricardo A. Baratto Submitted in partial fulfillment of the requirements for the degree of Doctor of Philosophy in the Graduate School of Arts and Sciences COLUMBIA UNIVERSITY 2011 c 2011 Ricardo A. Baratto This work may be used in accordance with Creative Commons, Attribution-NonCommercial-NoDerivs License. For more information about that license, see http://creativecommons.org/licenses/by-nc-nd/3.0/. For other uses, please contact the author. ABSTRACT THINC: A Virtual and Remote Display Architecture for Desktop Computing and Mobile Devices Ricardo A. Baratto THINC is a new virtual and remote display architecture for desktop computing. It has been designed to address the limitations and performance shortcomings of existing remote display technology, and to provide a building block around which novel desktop architectures can be built. THINC is architected around the notion of a virtual display device driver, a software-only component that behaves like a traditional device driver, but instead of managing specific hardware, enables desktop input and output to be intercepted, manipulated, and redirected at will. On top of this architecture, THINC introduces a simple, low-level, device-independent representation of display changes, and a number of novel optimizations and techniques to perform efficient interception and redirection of display output. This dissertation presents the design and implementation of THINC. It also intro- duces a number of novel systems which build upon THINC's architecture to provide new and improved desktop computing services. The contributions of this dissertation are as follows: • A high performance remote display system for LAN and WAN environments.
    [Show full text]
  • Microsoft Patches Were Evaluated up to and Including CVE-2020-1587
    Honeywell Commercial Security 2700 Blankenbaker Pkwy, Suite 150 Louisville, KY 40299 Phone: 1-502-297-5700 Phone: 1-800-323-4576 Fax: 1-502-666-7021 https://www.security.honeywell.com The purpose of this document is to identify the patches that have been delivered by Microsoft® which have been tested against Pro-Watch. All the below listed patches have been tested against the current shipping version of Pro-Watch with no adverse effects being observed. Microsoft Patches were evaluated up to and including CVE-2020-1587. Patches not listed below are not applicable to a Pro-Watch system. 2020 – Microsoft® Patches Tested with Pro-Watch CVE-2020-1587 Windows Ancillary Function Driver for WinSock Elevation of Privilege Vulnerability CVE-2020-1584 Windows dnsrslvr.dll Elevation of Privilege Vulnerability CVE-2020-1579 Windows Function Discovery SSDP Provider Elevation of Privilege Vulnerability CVE-2020-1578 Windows Kernel Information Disclosure Vulnerability CVE-2020-1577 DirectWrite Information Disclosure Vulnerability CVE-2020-1570 Scripting Engine Memory Corruption Vulnerability CVE-2020-1569 Microsoft Edge Memory Corruption Vulnerability CVE-2020-1568 Microsoft Edge PDF Remote Code Execution Vulnerability CVE-2020-1567 MSHTML Engine Remote Code Execution Vulnerability CVE-2020-1566 Windows Kernel Elevation of Privilege Vulnerability CVE-2020-1565 Windows Elevation of Privilege Vulnerability CVE-2020-1564 Jet Database Engine Remote Code Execution Vulnerability CVE-2020-1562 Microsoft Graphics Components Remote Code Execution Vulnerability
    [Show full text]
  • Microsoft Directshow: a New Media Architecture
    TECHNICAL PAPER Microsoft Directshow: A New Media Architecture By Amit Chatterjee and Andrew Maltz The desktop revolution in production and post-production has dramatical- streaming. Other motivating factors are ly changed the way film and television programs are made, simultaneously the new hardware buses such as the reducing equipment costs and increasing operator eficiency. The enabling IEEE 1394 serial bus and Universal digital innovations by individual companies using standard computing serial bus (USB), which are designed with multimedia devices in mind and platforms has come at a price-these custom implementations and closed promise to enable broad new classes of solutions make sharing of media and hardware between applications difi- audio and video application programs. cult if not impossible. Microsoft s DirectShowTMStreaming Media To address these and other require- Architecture and Windows Driver Model provide the infrastructure for ments, Microsoft introduced Direct- today’s post-production applications and hardware to truly become inter- ShowTM, a next-generation media- operable. This paper describes the architecture, supporting technologies, streaming architecture for the and their application in post-production scenarios. Windows and Macintosh platforms. In development for two and a half years, Directshow was released in August he year 1989 marked a turning Additionally, every implementation 1996, primarily as an MPEG-1 play- Tpoint in post-production equip- had to fight with operating system back vehicle for Internet applications, ment design with the introduction of constraints and surprises, particularly although the infrastructure was desktop digital nonlinear editing sys- in the areas of internal stream synchro- designed with a wide range of applica- tems.
    [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]
  • 5.1-Channel PCI Sound Card
    PSCPSC705705 5.1-Channel PCI Sound Card • Play all games in 5.1-channel surround sound, including EAX™ 2.0, A3D™ 1.0 and even ordinary stereo games! • Full compatablility with EAX™ 1.0, EAX™ 2.0 and A3D™ 1.0 games • Hear high-impact 3D sound from games, movies, music, and external sources using two, four, or six speakers. • 96 distinct 3D voices, 256 distinct DirectSound voices & 576 distinct synthesized Wavetable voices. • Included software: Sonic Foundry® SIREN Xpress™, Acid XPress™, QSound AudioPix™. 5.1-Channel PCI Sound Card PSCPSC705705 Arouse your senses. Make your games come to life with the excite- Technical Specifications ment of full-blown home cinema. Seismic Edge supports the latest multi-channel audio games and DVD movies, and can transform stereo Digital Acceleration sources into deep-immersion 5.1-channel surround sound. (5.1 refers • 96 streams of 3D audio acceleration including reverb, obstruction, and occlusion to five main speakers – front left, right and center, and rear left and • 256 streams of DirectSound accelerations and digital mixing right – and one bass subwoofer.) All this without straining your com- • Full-duplex, 48khz digital recording and playback puter’s resources, because complex audio demands are handled on- • 64 hardware sample rate conversion channels up to 48khz board by Seismic Edge’s powerful computing chip.You’ve never experi- • Wavetable and FM Synthesis enced games like this before! • DirectInput devices Experience state-of-the-art 360º Surround Sound. An embed- Comprehensive Connectivity ded, patented QSound algorithm extracts complex and distinct 5.1- • 5.1-channel (6 channel) analog output channel information from stereo or ProLogic sources.
    [Show full text]
  • Windows Poster 20-12-2013 V3
    Microsoft® Discover the Open Specifications technical documents you need for your interoperability solutions. To obtain these technical documents, go to the Open Specifications Interactive Tiles: open specifications poster © 2012-2014 Microsoft Corporation. All rights reserved. http://msdn.microsoft.com/openspecifications/jj128107 Component Object Model (COM+) Technical Documentation Technical Documentation Presentation Layer Services Technical Documentation Component Object Model Plus (COM+) Event System Protocol Active Directory Protocols Overview Open Data Protocol (OData) Transport Layer Security (TLS) Profile Windows System Overview Component Object Model Plus (COM+) Protocol Active Directory Lightweight Directory Services Schema WCF-Based Encrypted Server Administration and Notification Protocol Session Layer Services Windows Protocols Overview Component Object Model Plus (COM+) Queued Components Protocol Active Directory Schema Attributes A-L Distributed Component Object Model (DCOM) Remote Protocol Windows Overview Application Component Object Model Plus (COM+) Remote Administration Protocol Directory Active Directory Schema Attributes M General HomeGroup Protocol Supplemental Shared Abstract Data Model Elements Component Object Model Plus (COM+) Tracker Service Protocol Active Directory Schema Attributes N-Z Peer Name Resolution Protocol (PNRP) Version 4.0 Windows Data Types Services General Application Services Services Active Directory Schema Classes Services Peer-to-Peer Graphing Protocol Documents Windows Error Codes ASP.NET
    [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]
  • Microsoft Palladium
    Microsoft Palladium: A Business Overview Combining Microsoft Windows Features, Personal Computing Hardware, and Software Applications for Greater Security, Personal Privacy, and System Integrity by Amy Carroll, Mario Juarez, Julia Polk, Tony Leininger Microsoft Content Security Business Unit June 2002 Legal Notice This is a preliminary document and may be changed substantially prior to final commercial release of the software described herein. The information contained in this document represents the current view of Microsoft Corporation 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 White Paper is for informational purposes only. MICROSOFT MAKES NO WARRANTIES, EXPRESS OR IMPLIED, AS TO THE INFORMATION IN THIS DOCUMENT. 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 or by any means (electronic, mechanical, photocopying, recording, or otherwise), or for any purpose, without the express written permission of Microsoft Corporation. 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 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]
  • *Final New V2 PCI Super
    SuperQuad Digital PCI A3DTM PCI Audio Accelerator Card Powered by the Aureal Vortex2 AU8830 Key Features The Cutting Edge in Audio: Vortex2 SuperQuad • Hardware accelerated A3D 2.0 positional 3D audio with Digital PCI Aureal Wavetracing Aureal, the company that created magic with A3D positional audio • DirectSound3D and DirectSound hardware acceleration and the Vortex line of audio processor chips, introduces Vortex2 • 320-voice wavetable synthesizer with DLS 1.0 and SuperQuad Digital PCI, the ultimate PC sound card. DirectMusic support Powered by Aureal’s Vortex2 AU8830 audio processor chip, the • 10-band graphic equalizer Vortex2 SuperQuad PCI features a 3D audio engine, professional • Quad enhanced 3D sound wavetable synthesizer, and 10-band equalizer. In addition, Vortex2 • S/PDIF optical digital output SuperQuad features quad speaker support, which further enhances • High-performance PCI 2.1 interface A3D effects by providing front and back speaker pairs. For true • Superior audio quality (exceeds PC98/99 specifications) audiophiles, a TOSLINK S/PDIF optical digital output is provided • 4-speaker, 2-speaker and headphone support for pristine digital connections to modern digital audio devices • Accelerated DirectInput game port such as Dolby Digital receivers, DAT, CDR recorders, and MiniDisc. Connections Bracket connectors Aureal—The PC Audio Experts • Headphone/Line output— Aureal’s expertise in PC audio is unequalled by any front speakers other company. Aureal’s Vortex line of audio • Line output—rear speakers processor chips has set the standard for • Line input performance and sound quality on the • Microphone input PC, delivering superior audio to • Game/MIDI port top-tier computer companies • S/PDIF optical and leading sound card man- digital output ufacturers.
    [Show full text]
  • Nokia Standard Document Template
    HELSINKI UNIVERSITY OF TECHNOLOGY Department of Electrical and Communications Engineering Matti Paavola Advanced audio interfaces for mobile Java This Master's Thesis has been submitted for official examination for the degree of Master of Science in Espoo on June 2, 2003. Supervisor of the Thesis: Professor Matti Karjalainen Instructor of the Thesis: Antti Rantalahti, M.Sc. (Tech.) TEKNILLINEN KORKEAKOULU Diplomityön tiivistelmä Tekijä: Matti Paavola Työn nimi: Edistyneet äänirajapinnat kannettavaan Javaan Päivämäärä: 2. kesäkuuta 2003 Sivumäärä: 64 Osasto: Sähkö- ja tietoliikennetekniikan osasto Professuuri: S-89 Akustiikka ja äänenkäsittelytekniikka Työn valvoja: professori Matti Karjalainen Työn ohjaaja: dipl.ins. Antti Rantalahti Tiivistelmäteksti: Tämä työ käsittelee kannettavan laitteen äänisignaalinkäsittelyn ohjaamista ohjelmal- lisesti. Työssä käydään läpi työn kannalta oleelliset psykoakustiikan ilmiöt ja niiden sovellus: virtuaaliakustiikka. Toisaalta työssä tutustutaan viiteen eri äänisignaalinkäsittelyn ohjaus- rajapintaan, jotka ovat yleisesti käytössä henkilökohtaisissa tietokoneissa. Lisäksi yksi kannettaviin laitteisiin suunniteltu Java-kielinen rajapinta käydään läpi. Tämä ohjelmointi- rajapinta muodostaa alustan työssä itse kehitettävälle rajapinnalle. Työn pääasiallisena tuloksena syntyy uusi äänisignaalinkäsittelyn ohjausrajapinta. Tämä rajapinta on suunniteltu erityisesti kannettaville laitteille. Uusi rajapinta tukee muun muassa 3D-ääntä, keinotekoista kaiuntaa, taajuuskorjausta ja erilaisia tehostesuotimia. Esitelty
    [Show full text]