home *** CD-ROM | disk | FTP | other *** search
- Path: bloom-beacon.mit.edu!news.media.mit.edu!uhog.mit.edu!sgiblab!sgigate.sgi.com!fido.asd.sgi.com!kicksave.asd.sgi.com!woo
- From: woo@kicksave.asd.sgi.com (Mason Woo)
- Newsgroups: comp.graphics.opengl,comp.answers,news.answers
- Subject: comp.graphics.opengl Frequently Asked Questions (FAQ) [1/1]
- Followup-To: poster
- Date: 7 Apr 1994 21:16:18 GMT
- Organization: Silicon Graphics Inc., Mountain View, CA
- Lines: 497
- Approved: news-answers-request@MIT.Edu
- Distribution: world
- Expires: 30 April 1994 00:00:00 GMT
- Message-ID: <2o1t72$gfi@fido.asd.sgi.com>
- Reply-To: woo@kicksave.asd.sgi.com
- NNTP-Posting-Host: kicksave.asd.sgi.com
- Summary: This contains a list of Frequently Asked Questions about OpenGL (TM)
- Keywords: FAQ
- Xref: bloom-beacon.mit.edu comp.graphics.opengl:1438 comp.answers:4812 news.answers:17792
-
- Archive-name: graphics/opengl-faq
- Last-modified: 1994/4/5
- Version: 1.13
-
- * marks recently modified answers or new questions
-
- Q1: What is OpenGL?
- Q2: What is the relationship between IRIS GL and OpenGL?
- Q3: What does the .gl or .GL file format have to do with OpenGL?
- * Q4: Which vendors are supporting OpenGL?
- * Q5: What OpenGL implementations are available?
- * Q6: What documentation is available for OpenGL? (A bibliography of
- OpenGL documents is listed here.) Where is a written version of the
- OpenGL specification? Where is the source code which accompanies that
- documentation?
- Q7: Why doesn't SGI provide a free implementation of OpenGL?
- Q8: What are the conformance tests?
- Q9: How do I contribute OpenGL code examples to a publicly
- accessible archive?
- Q10: Will OpenGL code be source code or binary code compatible with
- IRIS GL code?
- Q11: Why should I port my IRIS GL application to OpenGL?
- Q12: How much work is it to convert an IRIS GL program to OpenGL?
- What are the major differences between them?
- Q13: How does a university or research institution acquire access to
- OpenGL source code?
- * Q14: Who needs to license OpenGL? Who doesn't? How is a
- commercial license acquired?
- Q15: How is the OpenGL governed? Who decides what changes can be
- made?
- Q16: Who are the current ARB members?
- Q17: What is the philosophy behind the structure of the ARB?
- * Q18: How does the OpenGL ARB operate logistically? When does the
- ARB have meetings?
- Q19: How do additional members join the OpenGL ARB?
- Q20: So if I'm not a member of the ARB, am I shut out of the decision
- making process?
- * Q21: What is the OpenGL Advisory Forum?
- Q22: Are ARB meetings open to observers?
-
- ------
- Subject: Q1: What is OpenGL?
-
- A: OpenGL is the software interface for graphics hardware that allows
- graphics programmers to produce high-quality color images of 3D
- objects. OpenGL is a rendering only, vendor neutral API providing 2D
- and 3D graphics functions, including modelling, transformations,
- color, lighting, smooth shading, as well as advanced features like
- texture mapping, NURBS, fog, alpha blending and motion blur. OpenGL
- works in both immediate and retained (display list) graphics modes.
- OpenGL is window system and operating system independent. OpenGL has
- been integrated with Windows NT and with the X Window System under
- UNIX. Also, OpenGL is network transparent. A defined common extension
- to the X Window System allows an OpenGL client on one vendor's platform
- to run across a network to another vendor's OpenGL server.
-
- ------
- Subject: Q2: What is the relationship between IRIS GL and OpenGL?
-
- A: IRIS GL is the predecessor to OpenGL. After other implementors
- had experience trying to port the IRIS GL to their own machines, it
- was learned that the IRIS GL was too tied to a specific window system
- or hardware. Based upon consultations with several implementors,
- OpenGL is much more platform independent.
-
- IRIS GL is being maintained and bugs will be fixed, but SGI will no
- longer add enhancements. OpenGL is now the strategic interface for
- 3-D computer graphics.
-
- ------
- Subject: Q3: What does the .gl or .GL file format have to do with OpenGL?
-
- .gl files have nothing to do with OpenGL. It's a file format for
- images, which has no relationship to IRIS GL or OpenGL.
-
- ------
- Subject: Q4: Which vendors are supporting OpenGL?
-
- A: OpenGL is supported by SGI and many other hardware vendors.
- As of April, 1994, OpenGL has been licensed to:
-
- AT&T, Cirrus Logic (which purchased the A1060 technology from
- Austek Microsystems), Cray Research, Daikin, Digital Equipment,
- Du Pont Pixel Systems (supporting Sun and a Du Pont Pixel
- graphics accelerator board), Evans & Sutherland, Harris Computer,
- Hitachi, IBM, the Institute for Information Industry, Intel,
- Intergraph, Kendall Square Research, Kubota Pacific, Media
- Vision, Microsoft, miro, NEC, Portable Graphics (formerly Nth
- Portable Graphics; supporting Sun and HP), RasterOps, SPEA,
- Samsung, Sony, and Univel.
-
- The machines supported by OpenGL licensees constitute over 95% of
- the graphics workstation marketplace, as well as the majority of
- the PC market.
-
- ------
- Subject: Q5: What OpenGL implementations are available?
-
- A: On SGI machines, OpenGL is available on both Onyx and Indy.
- Availability on at Indigo, Indigo 2, Crimson (except VGX(T)), and
- other SGI workstations will be part of the next release of IRIX.
- The graphics options covered by OpenGL include the Entry system,
- XS, XS24, XZ, XL, Elan, Extreme, VTX, Reality Engine, and Reality
- Engine 2.
-
- Digital Equipment has shipped its first OpenGL product as part of
- the Open3D 2.0 layered product for Alpha AXP OSF/1. The server
- support in this release is only for the PXG graphics adaptor, but
- the client libraries are of course universal if thats all you
- need. For information on ordering the Open3D 2.0 product from
- Digital contact your Digital sales representative.
-
- SGI does not speak for any other company. However, this space is
- available for any company who wishes to state status reports or
- release dates for their OpenGL implementation. Please send e-mail
- to woo@sgi.com to add to this section.
-
- ------
- Subject: Q6: What documentation is available for OpenGL? (A bibliography
- of OpenGL documents is listed here.) Where is a written version of the
- OpenGL specification? Where is the source code which accompanies that
- documentation?
-
- A: A 2 volume set, The OpenGL Technical Library, is being published
- by Addison-Wesley. The OpenGL Reference Manual is ISBN 0-201-63276-4.
- The OpenGL Programming Guide is ISBN 0-201-63274-8.
-
- You can purchase the books in extremely large volume by calling Robert
- Shepard of Addison-Wesley (617) 944-3700 ext 2435.
-
- The man pages for the OpenGL API, its Utility Library (GLU), and the X
- server extension API (GLX) and a PostScript version of the OpenGL
- specification are available via anonymous, public ftp, on the machine
- sgigate.sgi.com in ~ftp/pub/opengl/doc. A paper by Allen Akin comparing
- PEX 5.1 to OpenGL is also in this directory.
-
- The spec (Spec.tar.Z) is contained in a directory with several files
- which have been tar'd and compressed. The OpenGL, OpenGL Utility
- Library, X extensions and GLX protocol specifications are all here.
- Please read the README file in the directory, which explains the
- copyright and trademark rules for usage of the specification.
- Possession of the OpenGL Specification does not grant the right to
- reproduce, create derivative works based on or distribute or
- manufacture, use or sell anything that embodies the specification
- without an OpenGL license from SGI.
-
- You can also get the source code examples which are found in the
- OpenGL Programming Guide via anonymous, public ftp on sgigate.sgi.com
- in the file ~ftp/pub/opengl/opengl.tar.Z
-
- What follows is a bibliography of articles, books, and papers written
- about OpenGL.
-
- Magazine articles and books
- ---------------------------
- Davis, Tom. "Moving to OpenGL," IRIS Universe, Number 25,
- Summer, 1993.
-
- Glazier, Bill. "The 'Best Principle': Why OpenGL is emerging as the 3D
- graphics standard," Computer Graphics World, April, 1992.
-
- Karlton, Phil. "Integrating the GL into the X environment: a
- high performance rendering extension working with and not against
- X," The X Resource: Proceeding of the 6th Annual X Technical
- Conference, O'Reilly Associates, Issue 1, Winter, 1992.
-
- Ki The X Journal.
- November-December, 1993, page 36-51.
-
- Kilgard, Mark J. "Using OpenGL with Xlib," The X Journal.
- January-February, 1994, page 46-65.
-
- Neider, Jackie, Tom Davis, and Mason Woo, OpenGL Programming
- Guide: The Official Guide to Learning OpenGL, Release 1,
- Addison-Wesley, Reading, Massachusetts, 1993.
-
- OpenGL Architecture Review Board, OpenGL Reference Manual: The
- Official Reference Document for OpenGL, Release 1,
- Addison-Wesley, Reading, Massachusetts, 1992.
-
- "OpenGL Programs a New Horizon for Sun," SunWorld, January, 1994,
- page 15-17.
-
- Technical reports
- -----------------
- Akin, Allen. Analysis of PEX 5.1 and OpenGL 1.0. Technical
- report, Silicon Graphics Computer Systems, Mountain View,
- California, August 3, 1992.
-
- Segal, Mark and Kurt Akeley. The OpenGL Graphics System: A
- Specification. Technical report, Silicon Graphics Computer
- Systems, Mountain View, California, 1992, revised 1993.
-
- Segal, Mark and Kurt Akeley. The OpenGL Graphics Interface.
- Technical paper, Silicon Graphics Computer Systems, Mountain
- View, California, 1993.
-
- ------
- Subject: Q7: Why doesn't SGI provide a free implementation of OpenGL?
-
- A: The intent of licensing is to enhance conformity and portability of
- applications code. In the days before OpenGL, IRIS GL was supported
- differently and enhanced differently for each machine on which it was
- implemented. This included machines from IBM, HP, Sun, as well as SGI.
- Applications developers found this to be a nightmare, and convinced
- SGI that OpenGL implementations needed to be more consistent. This
- led us to develop specifications and conformance tests, and to seek
- some way to ensure that OpenGL implementors would honor them. There
- are only a few legal mechanisms that can be used for this purpose,
- and licensing is one of the most effective and widely accepted. SGI
- thinks the lack of a public-domain implementation is a trade-off for
- a guarantee of consistent OpenGL implementations from many different
- vendors, and that in the long run this is the best interests of
- application developers, who seek ease of portability, and end-users,
- who seek to be able to choose among hardware vendors for their chosen
- software solution.
-
- Licensing money goes to creating conformance tests to control variants
- and subsets, maintaining the specification and sample implementation.
- Because of the overhead of having the dozen or so engineers working
- on OpenGL at SGI, SGI is not making money from the OpenGL effort.
- Licensing is one way to help offset those costs.
-
- ------
- Subject: Q8: What are the conformance tests?
-
- A: The conformance tests are a suite of programs which judge the
- success of an OpenGL implementation. Each implementor is required
- to run these tests and pass them in order to call their implementation
- with the trademark OpenGL. Passing the conformance tests ensures
- source code compatibility of applications across all OpenGL
- implementations.
-
- ------
- Subject: Q9: How do I contribute OpenGL code examples to a publicly
- accessible archive?
-
- A: To contribute to the public OpenGL archive, send mail to
- opengl-contrib@sgi.com. Your mail should contain:
-
- The material to be archived, or instructions for obtaining it.
-
- An announcement suitable for posting to comp.graphics.opengl.
-
- SGI will place the material in the OpenGL/contrib directory on sgi.com
- and post the announcement to this newsgroup.
-
- To retrieve something from the archive, use anonymous ftp to sgi.com.
- Once connected, cd to the directory OpenGL. (Case is significant.)
- Currently there are two subdirectories:
-
- doc
- Manual pages for OpenGL and related libraries.
-
- contrib
- Contributions from the public.
-
- Note that all contributions are distributed as-is; neither SGI nor the
- other companies on the OpenGL Architecture Review Board make any
- legally valid claims about the robustness or usefulness of this software.
-
- If you do not have access to anonymous ftp, consider using an
- "ftp-by-mail" server. For information on one such server, send mail
- to ftpmail@decwrl.dec.com with a message body containing only the word
- "help".
-
-
- ------
- Subject: Q10: Will OpenGL code be source code or binary code compatible with
- IRIS GL code?
-
- A: OpenGL code is neither binary nor source code compatible with IRIS
- GL code. It was decided to bite the bullet at this time to make
- OpenGL incompatible with IRIS GL and fix EVERYTHING that made IRIS GL
- difficult to port or use. For example, the gl prefix has been added
- to every command: glVertex(), glColor(), etc.
-
- ------
- Subject: Q11: Why should I port my IRIS GL application to OpenGL?
-
- SGI will be maintaining the old IRIS GL, but not enhancing it.
- OpenGL is the API of choice on all new SGI machines.
-
- OpenGL has no subsets. You can use the same functionality
- on all machines from SGI or from other vendors.
-
- OpenGL is better integrated with the X Window System than
- the old IRIS GL. For example, you can mix OpenGL and X
- or Display PostScript drawing operations in the same window.
-
- The OpenGL naming scheme, argument list conventions, and
- rendering semantics are cleaner than those of IRIS GL. This
- should make OpenGL code easier to understand and maintain.
-
- ------
- Subject: Q12: How much work is it to convert an IRIS GL program to OpenGL?
- What are the major differences between them?
-
- There is a fair amount of work, most of which is in substituting
- for window management or input handling routines, for which the
- equivalents are not OpenGL, but the local window system, such as
- the X Windows System or Windows NT. And all routine names have changed,
- at least, minimally; for example: ortho() is now glOrtho().
-
- To help ease the way, port to "mixed model" right away, mixing the
- X Window System calls to open and manage windows, cursors, and color
- maps and read events of the window system, mouse and keyboard.
- You can do that now with IRIS GL, if you are running IRIX 4.0.
-
- In the X Window System, display mode choices (such as single or
- double buffering, color index or RGBA mode) must be declared before
- the window is initially opened. You may also substitute for other
- IRIS GL routines, such as using a OSF/Motif menu system, in place of
- the IRIS GL pop-up menus. You should use glXUseXFont(), whenever
- you were using the font manager with IRIS GL.
-
- Tables for states such as lighting or line and polygon stipples will
- be gone. Instead of using a def/set or def/bind sequence to load a
- table, you turn on the state with glEnable() and also declare the
- current values for that state.
-
- Colors are best stored as floating point values, scaled from 0.0 to
- 1.0 (0% to 100%). Alpha is fully integrated in the RGBA mode and
- at least source alpha will be available on all OpenGL implementations.
- OpenGL will not arbitrarily limit the number of bits per color to 8.
- Clearing the contents of buffers no longer uses the current color, but
- a special "clearing" color for each buffer (color, depth, stencil, and
- accumulation).
-
- The transformation matrix has changed. In OpenGL, there is no
- single matrix mode. Matrices are now column-major and are post-multiplied,
- although that does NOT change the calling order of these routines from
- IRIS GL to OpenGL. OpenGL's glRotate*() now allows for a rotation
- around an arbitrary axis, not just the x, y, and z axes. lookat()
- of IRIS GL is now gluLookAt(), which takes an up vector value, not
- merely a twist. There is no polarview() in OpenGL, but a series
- of glRotate*()s and glTranslate*()s can do the same thing.
-
- There are no separate depth cueing routines in OpenGL. Use linear fog.
-
- Feedback and selection (picking) return values, which are different
- from those found on any IRIS GL implementation. For selection and
- picking, depth values will be returned for each hit. In OpenGL, feedback
- and selection will now be standardized on all hardware platforms.
-
- ------
- Subject: Q13: How does a university or research institution acquire access to
- OpenGL source code?
-
- A: There is a university/research institution licensing program. A
- university license entitles the institution to generate binaries and
- copy them anywhere, so long as nothing leaves the institution. The
- OpenGL source and derived binaries can only be used for non-commercial
- purposes on-campus. A university license costs $500 and can be
- obtained by contacting woo@sgi.com.
-
- ------
- Subject: Q14: Who needs to license OpenGL? Who doesn't? How is a
- commercial license acquired?
-
- A: Companies which will be creating or selling binaries of the
- OpenGL library will need to license OpenGL. Typical examples of
- licensees include hardware vendors, such as Digital Equipment,
- IBM, and Silicon Graphics who would distribute OpenGL with the
- system software on their workstations or PCs. Also, some
- software vendors, such as Du Pont Pixel, MediaVision, and
- Portable Graphics, have a business in creating and distributing
- versions of OpenGL, and they need to license OpenGL.
-
- Applications developers do NOT need to license OpenGL. If a
- developer wants to use OpenGL, that developer needs to obtain
- copies of a linkable OpenGL library for a particular machine.
- Those OpenGL libraries may be bundled in with the development
- and/or run-time options or may be purchased from a third-party
- software vendor, without licensing the source code or use of the
- OpenGL(TM) trademark.
-
- Since many implementations will be a shared library on a hardware
- platform, the royalty sometimes will be charged for each hardware
- platform. In those cases, it would not be charged for each
- application which used OpenGL.
-
- In general, licensing a source code implementation of OpenGL
- would not be useful for an application developer, because the
- binary created from that implementation would not be accelerated
- and optimized to run on the graphics hardware of a machine.
-
- If you need a license or would like more information, call Mason
- Woo at (415) 390-4205 or e-mail him at woo@sgi.com. There are
- licenses available restricted to site (local) usage, or
- permitting redistribution of binary code. The limited source
- license provides a sample implementation of OpenGL for $50,000.
- The license for commerical redistribution of OpenGL binaries has
- two most commonly chosen levels. Level 1 costs $25,000. Level 2
- costs $100,000, and includes the sample implementation of OpenGL.
- Both levels require a $5 royalty for every copy of the OpenGL
- binary, which is redistributed.
-
- ------
- Subject: Q15: How is the OpenGL governed? Who decides what changes can be
- made?
-
- A: OpenGL is controlled by an independent board, the Architectural
- Review Board (ARB). Each member of the ARB has one vote. The founding
- members of the ARB are DEC, IBM, Intel, Microsoft, and SGI.
- Additional members will be added over time. The ARB governs the
- future of OpenGL, proposing and approving changes to the
- specification, new releases, and conformance testing.
-
- ------
- Subject: Q16: Who are the current ARB members?
-
- A: In alphabetical order: Digital Equipment, IBM, Intel, Microsoft,
- and Silicon Graphics.
-
- ------
- Subject: Q17: What is the philosophy behind the structure of the ARB?
-
- A: The ARB is intended to be able to respond quickly and flexibly to
- evolutionary changes in computer graphics technology. The ARB is
- currently "lean and mean" to encourage speedy communication and
- decision-making. Its members are highly motivated in ensuring the
- success of OpenGL.
-
- ------
- Subject: Q18: How does the OpenGL ARB operate logistically?
- When does the ARB have meetings?
-
- A: ARB meetings are held about once a quarter. The meetings rotate
- among sites hosted by the ARB members. To learn the date and place of
- the next OpenGL ARB meeting, watch the news group comp.graphics.opengl
- for posting announcing the next "OpenGL Advisory Forum/OpenGL ARB
- meetings" or e-mail opengl-secretary@sgi.com and ask for the
- information.
-
- Meetings are run by a set of by-laws, which are currently being
- approved. When they are approved, the by-laws will be publicly
- available for inspection.
-
- Minutes to the ARB meeting are posted to comp.graphics.opengl.
-
- ------
- Subject: Q19: How do additional members join the OpenGL ARB?
-
- A: The intention is that additional members may be added on a
- permanent basis or for a one-year term. The one-year term members
- would be voting members, added on a rotating basis, so that
- different viewpoints (such as ISV's) could be incorporated into new
- releases. Under the currently proposed (but not yet ratified)
- by-laws, SGI formally nominates new members.
-
- ------
- Subject: Q20: So if I'm not a member of the ARB, am I shut out of
- the decision making process?
-
- A: There are many methods by which you can influence the evolution of
- OpenGL.
-
- 1) Contribute to the comp.graphics.opengl news group. Most members of
- the ARB read the news group religiously.
- 2) Contact any member of the ARB and convince that member that your
- proposal is worth their advocacy. Any ARB member may present a
- proposal, and all ARB members have equal say.
- 3) Come to OpenGL Advisory Forum and speak directly to ARB in person.
-
- ------
- Subject: Q21: What is the OpenGL Advisory Forum?
-
- A: Preceding every ARB meeting will be a meeting of the OpenGL
- Advisory Forum. Members of the ARB will attend this meeting to listen
- to proposals and discussions. If you want to attend, you want to
- notify the Secretary of the ARB (e-mail opengl-secretary@sgi.com).
-
- The Advisory Forum is intended to start as an informal, self-governing
- group of people, highly interested in OpenGL. The ARB will invite a
- representative of the Advisory Forum to attend the ARB meetings, in a
- non-voting capacity. Advisory Forum members can be candidates for
- both short-term and permanent membership in the ARB. The Advisory
- Forum is encouraged to formulate its own structure and rules and move
- into any direction it wants.
-
- Minutes to the Advisory Forum meeting are posted to comp.graphics.opengl.
-
- Corporations, universities, or individuals can be members of the
- Advisory Forum.
-
- OpenGL Advisory Forum meetings are quarterly and are usually held a
- day before each OpenGL ARB meeting (see Question 18).
-
- ------
- Subject: Q22: Are ARB meetings open to observers?
-
- A: The ARB meeting will be open to observers, but we want to keep the
- meeting small. For the next meeting, the ARB will allow the Advisory
- Forum to nominate five representatives of the Advisory Forum to attend
- the ARB meeting, in a non-voting capacity. At any time, the
- ARB reserves the right to change the number of observers.
-