Revolution Graphics Library (GX)

Total Page:16

File Type:pdf, Size:1020Kb

Revolution Graphics Library (GX) Revolution Graphics Library (GX) Version 1.00 © 2006 Nintendo © 2006 Nintendo RVL-06-0037-001-A CONFIDENTIAL Released: February 27, 2006 Graphics Library (GX) "Confidential" These coded instructions, statements, and computer programs contain proprietary information of Nintendo of America Inc. and/or Nintendo Company Ltd., and are pro- tected by Federal copyright law. They may not be disclosed to third parties or copied or duplicated in any form, in whole or in part, without the prior written consent of Nin- tendo. © 2006 Nintendo TM and ® are trademarks of Nintendo. Dolby, Pro Logic and the Double-D symbol are trademarks of Dolby Laboratories. IBM is a trademark of International Business Machines Corporation. Roland GS Sound Set is a trademark of Roland Corporation U.S. All other trademarks and copyrights are property of their respective owners. RVL-06-0037-001-A © 2006 Nintendo Released: February 27, 2006 CONFIDENTIAL i Graphics Library (GX) Version 1.00 Contents Revision History ...............................................................................................................................I-xii 1 Introduction................................................................................................................................. I-1 1.1 Document organization..................................................................................................... I-1 1.2 Syntax notes ..................................................................................................................... I-1 1.3 A note on pointers............................................................................................................. I-2 1.4 Useful books ..................................................................................................................... I-2 2 Code example: onetri.c............................................................................................................... I-3 3 Initialization................................................................................................................................. I-9 3.1 Video initialization ............................................................................................................. I-9 3.2 Graphics initialization........................................................................................................ I-9 3.3 Graphics Processor (GP)................................................................................................ I-10 4 Vertex and primitive data.......................................................................................................... I-11 4.1 Describing the vertex data .............................................................................................. I-12 4.2 Describing arrays............................................................................................................I-14 4.3 Describing attribute data formats.................................................................................... I-15 4.4 Drawing graphics primitives............................................................................................ I-17 4.4.1 Primitive types....................................................................................................... I-17 4.4.2 Points and lines..................................................................................................... I-18 4.4.3 Rasterization rules ................................................................................................ I-19 4.4.4 Using vertex functions........................................................................................... I-20 4.5 Vertex data organization................................................................................................. I-22 4.5.1 Indexed vertex data .............................................................................................. I-25 4.5.2 Direct vertex data.................................................................................................. I-26 4.5.3 Mixture of direct and indexed data........................................................................ I-27 4.6 Display lists..................................................................................................................... I-28 4.6.1 Creating display lists ............................................................................................. I-28 4.6.2 Drawing primitives using display lists.................................................................... I-30 4.6.3 Effect on machine state ........................................................................................ I-31 4.7 GXDraw functions........................................................................................................... I-31 5 Viewing..................................................................................................................................... I-33 5.1 Loading a modelview matrix ........................................................................................... I-34 5.2 Setting a projection matrix .............................................................................................. I-35 5.3 Culling, clipping, and scissoring...................................................................................... I-36 5.4 Viewport and scissoring.................................................................................................. I-37 5.5 Coordinate systems ........................................................................................................ I-38 5.6 How to override the default matrix memory configuration .............................................. I-39 6 Vertex lighting........................................................................................................................... I-41 6.1 Lighting pipeline.............................................................................................................. I-41 6.1.1 Diffuse lights, diffuse attenuation and vertex normals........................................... I-41 6.1.2 Local lights and range attenuation ........................................................................ I-41 6.1.3 Spotlights, directional lights and angle attenuation............................................... I-41 6.2 Diffuse lighting equations................................................................................................ I-43 6.3 Matrix memory ................................................................................................................I-44 6.4 Light parameters.............................................................................................................I-44 6.4.1 Angle attenuation .................................................................................................. I-44 6.4.2 Distance attenuation ............................................................................................. I-45 © 2006 Nintendo RVL-06-0037-001-A CONFIDENTIAL Released: February 27, 2006 ii Graphics Library (GX) 6.5 Channel parameters ....................................................................................................... I-47 6.5.1 Channel colors ...................................................................................................... I-47 6.5.2 Channel control..................................................................................................... I-47 6.5.3 Pre-lighting............................................................................................................ I-48 6.6 Specular lighting ............................................................................................................. I-49 6.7 Vertex performance ........................................................................................................ I-50 6.8 Lighting performance ...................................................................................................... I-51 7 Texture coordinate generation..................................................................................................I-53 7.1 Specifying texgens.......................................................................................................... I-53 7.2 Other texture coordinate generation issues.................................................................... I-55 7.3 Texture coordinate generation performance................................................................... I-55 8 Texture mapping....................................................................................................................... I-57 8.1 Example: Drawing a textured triangle............................................................................. I-58 8.2 Loading a texture into main memory .............................................................................. I-60 8.3 Code describing a texture object .................................................................................... I-60 8.3.1 Texel formats ........................................................................................................ I-61 8.3.2 Texture Lookup Table (TLUT) formats.................................................................. I-63 8.3.3 Texture image formats .......................................................................................... I-63 8.3.4 Texture coordinate space ..................................................................................... I-64 8.3.5 Filter modes and LOD controls ............................................................................
Recommended publications
  • Roland Announces V-160Hd Streaming Video Switcher
    Press Release FOR IMMEDIATE RELEASE ROLAND ANNOUNCES V-160HD STREAMING VIDEO SWITCHER Professional Hybrid Event Switcher with Eight HDMI and Eight SDI Inputs, USB-C Streaming, 40-Channel Audio Mixing, Powerful New Automation Features, and More Los Angeles, CA, June 15, 2021 — Roland’s Professional A/V division announces the V- 160HD Streaming Video Switcher, the latest addition to the company’s respected V-series lineup of multichannel HD video switching products and the first with built-in streaming capabilities. Perfectly tailored for modern hybrid production, the V-160HD allows users to connect with live audiences in Full HD with comprehensive HDMI and SDI I/O and simultaneously stream to any popular web platform via USB-C. The V-160HD also features an eight-layer video effects engine, a 40-channel digital audio mixer, and integrated PTZ camera control, plus next-generation cue management and live show automation tools that make tough production tasks simple. Compact, portable, and easy to operate, the V-160HD combines the reliable hardware features needed to flawlessly execute live productions with the livestreaming capabilities found in computer-based systems. While software workflows are fine for online-only events, the V-160HD delivers the pro essentials to handle both the in-person and web streaming components of a live hybrid event, complete with the ability to tailor the content for each audience. With its extensive connectivity and powerful real-time processing, the V-160HD is ready to take on nearly any production. Eight HDMI sources and eight SDI sources can be mixed in Full HD, even with mismatched frame rates and color spaces.
    [Show full text]
  • Musical Instruments Business Make Waves 1
    STRATEGIES BY BUSINESS STRATEGIES BY BUSINESS ■ MUSICAL INSTRUMENTS BUSINESS MAKE WAVES 1 . 0 By enhancing our developmental capabilities in terms of Business Strategies of the New Medium-Term Management Plan hard and soft technologies and strengthening our brand power, we will achieve overwhelmingly high levels of profit. Business Vision Receive the highest possible evaluation from an even greater number of customers Realize overwhelmingly high levels of profitability by enhancing our brand power Teruhiko Tsurumi Targets for Fiscal 2022 (Based on IFRS) Operating Offcer Executive General Manager of Revenue: ¥297.0 billion (6.3% growth compared with fiscal 2019) Musical Instruments Business Unit Core operating profit: ¥49.0 billion (20.1% growth compared with fiscal 2019) Business Overview Review of NEXT STAGE 12 ■ Improvement in the promotion of value that fts the life stage of each customer through In the musical instruments business, which represents our core Over the course of the previous medium-term management plan, ■ Shift toward making direct connections with digital marketing our customers on a global basis due to the ■ Signifcant improvement in product development for pursuing the essence of musical business, we possess numerous core technologies related to NEXT STAGE 12, we achieved our target of improving our operat- acceleration of digitalization, dramatic changes instruments due to the progression of digital technologies and AI; enhancement of sound and music that have been cultivated over our long history. In ing income ratio from 11% in fscal 2016 to over 15% by the end in approach to brand recognition and consumer Opportunities manufacturing effciency through IoT behavior, etc.
    [Show full text]
  • Roland Corporation U.S. Welcomes Home a Soldier
    FOR IMMEDIATE RELEASE Press Contact: Company Contact: Robert Clyne Rebecca Eaddy President Marketing Communications Mgr. Clyne Media, Inc. Roland Corporation U.S. (615) 662-1616 (323) 890-3718 [email protected] [email protected] ROLAND CORPORATION U.S. WELCOMES HOME A SOLDIER Los Angeles, CA, October 21, 2015 — The staff at Roland Corporation U.S. participated in a special surprise homecoming at their headquarters in Los Angeles. Mary Ann Sherman from Roland’s Sales Administration Department was treated to a memorable day when her daughter, U.S. Army Specialist Kim Sherman, completed her service a few months early and arrived home ahead of schedule. As far as her mother knew, Kim was not due home until later this year. Roland caught wind of the early homecoming and planned something special to surprise Mary Ann. Her co-workers organized a party and decorated Roland’s video studio to give it a patriotic touch for this special day. Roland Corporation U.S. officers, directors and employees celebrated and posed in photos with Mary Ann and Kim, for a homecoming none of them will ever forget. “Our employees are our extended family, so we wanted to create a special memory for Mary Ann and give her daughter a warm ‘Welcome Home’ from our team,” noted Jay Wanamaker, President & CEO of Roland Corporation U.S. --------- About Roland Corporation Roland Corporation is a leading manufacturer and distributor of electronic musical instruments, including keyboards and synthesizers, guitar products, electronic percussion, digital recording equipment, amplifiers, audio processors, and multimedia products. With more than 40 years of musical instrument development, Roland sets the standard in music technology for the world to follow.
    [Show full text]
  • Roland Announces V-60HD and XS-62S Ver.3.0 Updates Featuring Multiple PTZ Support for Video
    Press Release FOR IMMEDIATE RELEASE Roland Announces V-60HD and XS-62S Ver.3.0 Updates Featuring Multiple PTZ Support for Video Enhanced stills-capture workflow, expanded control with additional frame-rate support, and more offered through Roland’s free update Los Angeles, California, April 7, 2020 — Roland, a leading manufacturer of professional audio, video and electronic musical instrument gear, apps and cloud-based software, today announces the forthcoming Ver.3.0 updates for two of their most popular HD video switcher models, the Roland V-60HD and XS-62S. The updates will offer workflow enhancements and expanded control for both switchers, like the newly added multiple PTZ (Pan-Tilt-Zoom) support and several new tools for professionals looking to simplify the creation of premium-quality streaming broadcasts and live event productions. When PTZ cameras are called into action, users can take control using Roland V-60HD and XS- 62S video switchers and powerful RCS (remote control software). With Roland’s new Ver.3.0 updates, users can now seamlessly integrate these Roland switchers with JVC, Panasonic, Sony, PTZOptics, Avonic, and any VISCA-compatible professional PTZ cameras to streamline workflow without the need for a dedicated separate controller. For projects that would benefit from an engaging, gaming-like experience, the new update gives users the option of adding in a USB gamepad to easily control a team of PTZ cameras, allowing instincts to guide the way as cameras pan, tilt and zoom effortlessly on the action. The Ver.3.0 updates for V-60HD and XS-62S make capturing stills directly from PGM possible and adds frame-rate support on SDI inputs for 60p, 30p, 24p and 23.98p sources.
    [Show full text]
  • Owner's Manual for the Digital Device
    To resize thickness, move all items on the front cover and center registration marks to left or right / / Owner’s Manual Owner’s Manual 04017912 ’06-03-3N *04017912-03* To resize thickness, move all items on the front cover and center registration marks to left or right. KR117_115_r_e.book 3 ページ 2006年2月27日 月曜日 午前11時55分 Before using this unit, carefully read the sections entitled: “IMPORTANT SAFETY INSTRUCTIONS,” “USING THE UNIT SAFELY” (p. 4, 5), and “IMPORTANT NOTES” (p. 6, 7). These sections provide important information concerning the proper operation of the unit. Additionally, in order to feel assured that you have gained a good grasp of every feature provided by your new unit, Owner’s Manual should be read in its entirety. The manual should be saved and kept on hand as a convenient reference WARNING: To reduce the risk of fire or electric shock, do not expose this apparatus to rain or moisture. CAUTION The lightning flash with arrowhead symbol, within an equilateral triangle, is intended to alert the user to the RISK OF ELECTRIC SHOCK DO NOT OPEN presence of uninsulated “dangerous voltage” within the product’s enclosure that may be of sufficient magnitude to ATTENTION: RISQUE DE CHOC ELECTRIQUE NE PAS OUVRIR constitute a risk of electric shock to persons. CAUTION: TO REDUCE THE RISK OF ELECTRIC SHOCK, The exclamation point within an equilateral triangle is DO NOT REMOVE COVER (OR BACK). intended to alert the user to the presence of important NO USER-SERVICEABLE PARTS INSIDE. operating and maintenance (servicing) instructions in the literature accompanying the product.
    [Show full text]
  • 9.Texture Mapping
    OpenGL_PG.book Page 359 Thursday, October 23, 2003 3:23 PM Chapter 9 9.Texture Mapping Chapter Objectives After reading this chapter, you’ll be able to do the following: • Understand what texture mapping can add to your scene • Specify texture images in compressed and uncompressed formats • Control how a texture image is filtered as it’s applied to a fragment • Create and manage texture images in texture objects and, if available, control a high-performance working set of those texture objects • Specify how the color values in the image combine with those of the fragment to which it’s being applied • Supply texture coordinates to indicate how the texture image should be aligned with the objects in your scene • Generate texture coordinates automatically to produce effects such as contour maps and environment maps • Perform complex texture operations in a single pass with multitexturing (sequential texture units) • Use texture combiner functions to mathematically operate on texture, fragment, and constant color values • After texturing, process fragments with secondary colors • Perform transformations on texture coordinates using the texture matrix • Render shadowed objects, using depth textures 359 OpenGL_PG.book Page 360 Thursday, October 23, 2003 3:23 PM So far, every geometric primitive has been drawn as either a solid color or smoothly shaded between the colors at its vertices—that is, they’ve been drawn without texture mapping. If you want to draw a large brick wall without texture mapping, for example, each brick must be drawn as a separate polygon. Without texturing, a large flat wall—which is really a single rectangle—might require thousands of individual bricks, and even then the bricks may appear too smooth and regular to be realistic.
    [Show full text]
  • Hamamatsu Monitoring Report 2014-2018
    HAMAMATSU MONITORING REPORT 2014-2018 Hamamatsu UNESCO Creative City of Music November 2018 1 EXECUTIVE SUMMARY Hamamatsu is a Creative City that has created a richly unique culture which prides itself of its world-class entrepreneurs and industrial technologies. The city has developed as the “City of Industry” and the “City of Music” where the locals have inherited diverse traditional cultures, and also takes advantage of its amassed talent and technology in community building. Hamamatsu has shown the diversity and potential of music in a way that can only be done by a city where headquarters of world-renowned musical instruments makers such as Yamaha, Kawai and Roland can be found. In the midst of promoting Hamamatsu locally and internationally as the hub for the musical instrument industry and as a city that continues to build the community through cultural arts as well as promote projects to draw out the potential power of music, Hamamatsu became a member of the UNESCO Creative Cities Network (UCCN) in the field of music in December 2014. In the four years since joining the UCCN, the city has promoted strategic projects based on the five basic policies of international activities established as contributions to UCCN in addition to Hamamatsu’s longstanding initiatives in providing opportunities for local residents to experience the wonders and enjoyment of music as well as initiatives in exchanges based on music and fostering musical talent. 1. Promotion of International Exchange through International Musical Events 2. Realization of Cross-cultural Understanding and Cultural Diversity through Music 3. Exchange and Nurturing of Musical Talents at an International Level 4.
    [Show full text]
  • Programming Guide: Revision 1.4 June 14, 1999 Ccopyright 1998 3Dfxo Interactive,N Inc
    Voodoo3 High-Performance Graphics Engine for 3D Game Acceleration June 14, 1999 al Voodoo3ti HIGH-PERFORMANCEopy en GdRAPHICS E NGINEC FOR fi ot 3D GAME ACCELERATION on Programming Guide: Revision 1.4 June 14, 1999 CCopyright 1998 3Dfxo Interactive,N Inc. All Rights Reserved D 3Dfx Interactive, Inc. 4435 Fortran Drive San Jose CA 95134 Phone: (408) 935-4400 Fax: (408) 935-4424 Copyright 1998 3Dfx Interactive, Inc. Revision 1.4 Proprietary and Preliminary 1 June 14, 1999 Confidential Voodoo3 High-Performance Graphics Engine for 3D Game Acceleration Notice: 3Dfx Interactive, Inc. has made best efforts to ensure that the information contained in this document is accurate and reliable. The information is subject to change without notice. No responsibility is assumed by 3Dfx Interactive, Inc. for the use of this information, nor for infringements of patents or the rights of third parties. This document is the property of 3Dfx Interactive, Inc. and implies no license under patents, copyrights, or trade secrets. Trademarks: All trademarks are the property of their respective owners. Copyright Notice: No part of this publication may be copied, reproduced, stored in a retrieval system, or transmitted in any form or by any means, electronic, mechanical, photographic, or otherwise, or used as the basis for manufacture or sale of any items without the prior written consent of 3Dfx Interactive, Inc. If this document is downloaded from the 3Dfx Interactive, Inc. world wide web site, the user may view or print it, but may not transmit copies to any other party and may not post it on any other site or location.
    [Show full text]
  • Antialiasing
    Antialiasing CSE 781 Han-Wei Shen What is alias? Alias - A false signal in telecommunication links from beats between signal frequency and sampling frequency (from dictionary.com) Not just telecommunication, alias is everywhere in computer graphics because rendering is essentially a sampling process Examples: Jagged edges False texture patterns Alias caused by under-sampling 1D signal sampling example Actual signal Sampled signal Alias caused by under-sampling 2D texture display example Minor aliasing worse aliasing How often is enough? What is the right sampling frequency? Sampling theorem (or Nyquist limit) - the sampling frequency has to be at least twice the maximum frequency of the signal to be sampled Need two samples in this cycle Reconstruction After the (ideal) sampling is done, we need to reconstruct back the original continuous signal The reconstruction is done by reconstruction filter Reconstruction Filters Common reconstruction filters: Box filter Tent filter Sinc filter = sin(πx)/πx Anti-aliased texture mapping Two problems to address – Magnification Minification Re-sampling Minification and Magnification – resample the signal to a different resolution Minification Magnification (note the minification is done badly here) Magnification Simpler to handle, just resample the reconstructed signal Reconstructed signal Resample the reconstructed signal Magnification Common methods: nearest neighbor (box filter) or linear interpolation (tent filter) Nearest neighbor bilinear interpolation Minification Harder to handle The signal’s frequency is too high to avoid aliasing A possible solution: Increase the low pass filter width of the ideal sinc filter – this effectively blur the image Blur the image first (using any method), and then sample it Minification Several texels cover one pixel (under sampling happens) Solution: Either increase sampling rate or reduce the texture Frequency one pixel We will discuss: Under sample artifact 1.
    [Show full text]
  • Power Optimizations for Graphics Processors
    POWER OPTIMIZATIONS FOR GRAPHICS PROCESSORS B.V.N.SILPA DEPARTMENT OF COMPUTER SCIENCE & ENGINEERING INDIAN INSTITUTE OF TECHNOLOGY DELHI March 2011 POWER OPTIMAZTIONS FOR GRAPHICS PROCESSORS by B.V.N.SILPA Department of Computer Science and Engineering Submitted in fulfillment of the requirements of the degree of Doctor of Philosophy to the Indian Institute of Technology Delhi March 2011 Certificate This is to certify that the thesis titled Power optimizations for graphics pro- cessors being submitted by B V N Silpa for the award of Doctor of Philosophy in Computer Science & Engg. is a record of bona fide work carried out by her under my guidance and supervision at the Deptartment of Computer Science & Engineer- ing, Indian Institute of Technology Delhi. The work presented in this thesis has not been submitted elsewhere, either in part or full, for the award of any other degree or diploma. Preeti Ranjan Panda Professor Dept. of Computer Science & Engg. Indian Institute of Technology Delhi Acknowledgment It is with immense gratitude that I acknowledge the support and help of my Professor Preeti Ranjan Panda in guiding me through this thesis. I would like to thank Professors M. Balakrishnan, Anshul Kumar, G.S. Visweswaran and Kolin Paul for their valuable feedback, suggestions and help in all respects. I am indebted to my dear friend G Kr- ishnaiah for being my constant support and an impartial critique. I would like to thank Neeraj Goel, Anant Vishnoi and Aryabartta Sahu for their technical and moral support. I would also like to thank the staff of Philips, FPGA, Intel laboratories and IIT Delhi for their help.
    [Show full text]
  • Texture Filtering Jim Van Verth Some Definitions
    Texture Filtering Jim Van Verth Some definitions Pixel: picture element. On screen. Texel: texture element. In image (AKA texture). Suppose we have a texture (represented here in blue). We can draw the mapping from a pixel to this space, and represent it as a red square. If our scale from pixel space to texel space is 1:1, with no translation, we just cover one texel, so rendering is easy. If we translate, the pixel can cover more than one texel, with different areas. If we rotate, then the pixel can cover even more texels, with odd shaped areas. And with scaling up the texture (which scales down the pixel area in texture space)... ...or scaling down the texture (which scales up the pixel area in texture space), we also get different types of coverage. So what are we trying to do? We often think of a texture like this -- blocks of “color” (we’ll just assume the texture is grayscale in these diagrams to keep it simple). But really, those blocks represent a sample at the texel center. So what we really have is this. Those samples are snapshots of some function, at a uniform distance apart. We don’t really know what the function is, but assuming it’s fairly smooth it could look something like this. So our goal is to reconstruct this function from the samples, so we can compute in-between values. We can draw our pixel (in 1D form) on this graph. Here the red lines represent the boundary of the pixel in texture space.
    [Show full text]
  • Voodoo Graphics Specification
    SST-1(a.k.a. Voodoo Graphics™) HIGH PERFORMANCE GRAPHICS ENGINE FOR 3D GAME ACCELERATION Revision 1.61 December 1, 1999 Copyright ã 1995 3Dfx Interactive, Inc. All Rights Reserved 3dfx Interactive, Inc. 4435 Fortran Drive San Jose, CA 95134 Phone: (408) 935-4400 Fax: (408) 262-8602 www.3dfx.com Proprietary Information SST-1 Graphics Engine for 3D Game Acceleration Copyright Notice: [English translations from legalese in brackets] ©1996-1999, 3Dfx Interactive, Inc. All rights reserved This document may be reproduced in written, electronic or any other form of expression only in its entirety. [If you want to give someone a copy, you are hereby bound to give him or her a complete copy.] This document may not be reproduced in any manner whatsoever for profit. [If you want to copy this document, you must not charge for the copies other than a modest amount sufficient to cover the cost of the copy.] No Warranty THESE SPECIFICATIONS ARE PROVIDED BY 3DFX "AS IS" WITHOUT ANY REPRESENTATION OR WARRANTY, EXPRESS OR IMPLIED, INCLUDING ANY WARRANTY OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, NONINFRINGEMENT OF THIRD-PARTY INTELLECTUAL PROPERTY RIGHTS, OR ARISING FROM THE COURSE OF DEALING BETWEEN THE PARTIES OR USAGE OF TRADE. IN NO EVENT SHALL 3DFX BE LIABLE FOR ANY DAMAGES WHATSOEVER INCLUDING, WITHOUT LIMITATION, DIRECT OR INDIRECT DAMAGES, DAMAGES FOR LOSS OF PROFITS, BUSINESS INTERRUPTION, OR LOSS OF INFORMATION) ARISING OUT OF THE USE OF OR INABILITY TO USE THE SPECIFICATIONS, EVEN IF 3DFX HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES. [You're getting it for free.
    [Show full text]