        #
        | README file for
        |
        | ELSA OGLQUERY 2.0 for Windows NT 3.51 and 4.0
        |
        |       ELSA GLoria boards
        |
        | Copyright (c) 1993-97 ELSA AG, Aachen (Germany)
        |
        | ELSA AG                    Internet   : http://www.elsa.de
        | Sonnenweg 11               LocalWeb   : +49-(0)241-938800
        | D-52070 Aachen             
        |
        | ELSA Inc.                  Internet   : http://www.elsa.com
        | 2231 Calle De Luna         
        | Santa Clara, CA 95054
        | USA
        |
        | ELSA Asia Inc.             Internet   : http://www.elsa.com
        | 7F-11, No. 188, Sec. 5     
        | Nanking East Road
        | Taipei 105
        | Taiwan, R. O. C.
        |
        | ELSA Japan Inc.            Internet   : http://www.elsa.com
        | Mita Suzuki Building 3F                
        | 5-20-14 Shiba, Minato-ku
        | Tokyo 108-0014
        | Japan
        |
        | 10/23/97, GBorgs

        Table of Contents:

        1       Abstract
        2       Running The ELSA OpenGL Query Program
        3       Details For The Interested Reader

------------------------------------------------------------------------

1       Abstract

        The ELSA OpenGL Query program is a tool for Windows NT
        to determine if the current screen resolution and color depth
        is capable of double buffering in hardware with the installed
        ELSA GLoria board.

------------------------------------------------------------------------

2       Running The ELSA OpenGL Query Program

        Start the program OGLQUERY.EXE (from the Explorer, Program
        Manager, File Manager, Run... menu, or Command prompt).

        A message box appears with the following information of the
        currently running OpenGL driver:

        - Vendor name
        - Renderer name
        - Renderer version
        - OpenGL extensions in this driver
        - Horizontal and vertical resolution in pixels
        - Bits per pixel (Windows' Rastercaps value)
        - Bytes used/needed for front and back buffer
        - Bytes used/needed for the depth buffer

        The OpenGL animation in the main window of the program shows a
        tumbling golden object. There is no palette handling included in
        the program, therefore the image may be in wrong colors in 8 bit
        palette mode.

        For example:

           Following texts represent actual values on a GLoria-L with
           8 MB VRAM and 8MB DRAM on board in 1152*864 HighColor (a) and
           1600*1280 TrueColor (b).

           ELSA GLoria boards with PERMEDIA chips use a single type of
           memory (SGRAM) for display and depth buffer, so the text in the
           dialog box (a) varies accordingly.


        a) If running an ELSA OpenGL driver:

                -------------------------------------------------------
                Current OpenGL Driver:

                ELSA
                GLoria Installable Client Driver
                2.00.03.002
                GL_EXT_vertex_array GL_EXT_bgra GL_EXT_paletted_texture
                GL_EXT_texture_object

                Xres: 1152, Yres: 864, Bits: 16
                3981312 bytes VRAM used for front plus back buffer.
                3981312 bytes DRAM used for depth buffer.

                                        [OK]
                --------------------------------------------------------


        b) If running Microsoft's Windows NT OpenGL GDI Generic driver:

                --------------------------------------------------------
                Current OpenGL Driver:

                Microsoft Corporation
                GDI Generic
                1.1.0
                GL_WIN_swap_hint GL_EXT_bgra GL_EXT_paletted_texture

                Xres: 1600, Yres: 1280, Bits: 32
                16384000 bytes needed for front plus back buffer.
                8192000 bytes needed for depth buffer.

                Attention! No ELSA OpenGL driver running!

                                        [OK]
                --------------------------------------------------------


        If no ELSA OpenGL driver was found, you get another message box at
        the end of the program with the following text:

                ---------------------------------------------------------
                The previous OpenGL animation was not rendered using the
                ELSA OpenGL driver. If you have an ELSA GLoria installed
                the current screen resolution was not supported with
                hardware accelerated OpenGL and double buffering.

                Please consult the ELSA GLoria manual for the proper
                resolutions with 3D OpenGL hardware acceleration.

                                        [OK]
                ---------------------------------------------------------

------------------------------------------------------------------------

3       Details For The Interested Reader

        If you would like to know how and why the amount of RAM on the
        board affects the maximum resolution in which hardware 3D
        acceleration with double buffering is possible, please read on.


3.1     ELSA GLoria with GLINT chip
        (Gloria-4, GLoria-8, GLoria-M, GLoria-L)

        The availability of hardware 3D acceleration and double buffering
        on an ELSA GLoria board depends on the amount of VRAM and DRAM
        memory installed.

        The VRAM is used for the front buffer AND the back buffer.
        On the ELSA GLoria the complete visible screen is seen as the
        front buffer. To do double buffering in hardware a second, non
        visible screen area of the same size must be available in
        offscreen (the part of the VRAM which is not visible).

        The DRAM required for the 3D acceleration (the z-buffer) is
        at least 32 bits per pixel regardless of the color depth.
        The DRAM, also called the local buffer, contains the depth and
        stencil buffer (e.g. 32 bits depth and no stencil, 24 bits depth
        and 8 bits stencil). This is important to remember, because in
        lower color depths and high screen resolutions the DRAM (at least
        4 bytes per pixel) may be the limitation of the maximum 3D screen
        resolution!

        Try this formula with your desired double buffered screen resolution:

          VRAM = xRes * yRes * bytesPerPixel * 2; // Front and back buffer
          DRAM = xRes * yRes * 4;                  // local buffer

          if (VRAM < VRAM_On_Board && DRAM < DRAM_On_Board)
                Double_Buffering_In_Hardware = TRUE;
          else
                Double_Buffering_In_Hardware = FALSE;


        Maximum resolutions and color depth for double buffered (OpenGL)
        hardware acceleration on ELSA GLoria boards:

        VRAM/DRAM        Palette       High Color      True Color
        ---------------------------------------------------------
           4/4          1152*864        1152*864        800*600
           4/8          1600*1280       1152*864        800*600
           8/8          1600*1280       1600*1280       1152*864
           8/16         >1600*1280      1600*1280       1152*864


        The bits per pixel value in the message boxes above represent the
        actual layout of the display memory.

        If it is stated as 16 bits the GLiNT is actually using only 15 bits
        for color representation. It uses 5 bits each for red, green, and
        blue. This is because the GLINT is capable of doing hardware
        dithering, which looks nicer with equally distributed color ramps.
        High Color is the recommend choice, if you need high resolution with
        double buffering.

        In True Color you have 32 bits per pixel, 8 bits each for red, green,
        blue, and alpha. This is the recommended color resolution if you use
        alpha blending, alpha test, or overlay planes, or need precise color
        values when reading bitmaps (no dithering!).


3.2     ELSA GLoria with PERMEDIA chip

        The design of the ELSA GLoria boards with PERMEDIA chip uses
        a maximum amount of 8 MB SGRAM. Front, back and depth buffer
        reside in this memory along with textures.

        The depth buffer has a maximum depth of 16 bits per pixel, so the
        formula to calculate the amount of video memory needed for double
        buffering is

        mem = xres * yres * (color_bytes_per_pixel * 2 +
                             depth_bytes_per_pixel);

        Examples:

          1024 * 768 with 32 bits true color plus depth buffer:
          1024 * 768 * (4 * 2 + 2)
          = 1024 * 768 * 10 = 7864320 bytes SGRAM

          1280 * 1024 with 15 bits high color plus depth buffer:
          1280 * 1024 * (2 * 2 + 2)
          = 1280 * 1024 * 6 = 7864320 bytes SGRAM

        So you will need 8 MB SGRAM installed to run these resolutions
        with hardware accelerated double buffering and have about
        half a megabyte left for textures.


------------------------------------------------------------------------


