etnaviv: switch magic single buffer state to "3"
[mesa.git] / docs / intro.html
index 0e37322823b4d54cb3ed2411f691e3f5fd6eafec..be164c883dd59be2bc9f6a22c49bcf31024ba633 100644 (file)
@@ -1,35 +1,56 @@
-<HTML>
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<html lang="en">
+<head>
+  <meta http-equiv="content-type" content="text/html; charset=utf-8">
+  <title>Mesa Introduction</title>
+  <link rel="stylesheet" type="text/css" href="mesa.css">
+</head>
+<body>
 
-<TITLE>Mesa Introduction</TITLE>
+<div class="header">
+  <h1>The Mesa 3D Graphics Library</h1>
+</div>
 
-<link rel="stylesheet" type="text/css" href="mesa.css"></head>
+<iframe src="contents.html"></iframe>
+<div class="content">
 
-<BODY>
-
-<H1>Introduction</H1>
+<h1>Introduction</h1>
 
 <p>
-Mesa is an open-source implementation of the
-<a href="http://www.opengl.org/" target="_parent">OpenGL</a> specification -
+The Mesa project began as an open-source implementation of the
+<a href="https://www.opengl.org/">OpenGL</a> specification -
 a system for rendering interactive 3D graphics.
 </p>
 
 <p>
-A variety of device drivers allows Mesa to be used in many different
-environments ranging from software emulation to complete hardware acceleration
-for modern GPUs.
+Over the years the project has grown to implement more graphics APIs,
+including
+<a href="https://www.khronos.org/opengles/">OpenGL ES</a> (versions 1, 2, 3),
+<a href="https://www.khronos.org/opencl/">OpenCL</a>,
+<a href="https://www.khronos.org/openmax/">OpenMAX</a>,
+<a href="https://en.wikipedia.org/wiki/VDPAU">VDPAU</a>,
+<a href="https://en.wikipedia.org/wiki/Video_Acceleration_API">VA API</a>,
+<a href="https://en.wikipedia.org/wiki/X-Video_Motion_Compensation">XvMC</a> and
+<a href="https://www.khronos.org/vulkan/">Vulkan</a>.
 </p>
 
 <p>
-Mesa ties into several other open-source projects: the 
-<a href="http://dri.sf.net/" target="_parent">Direct Rendering Infrastructure</a>
-and <a href="http://x.org" target="_parent">X.org</a> to provide OpenGL
-support to users of X on Linux, FreeBSD and other operating systems.
+A variety of device drivers allows the Mesa libraries to be used in many
+different environments ranging from software emulation to complete hardware
+acceleration for modern GPUs.
 </p>
 
+<p>
+Mesa ties into several other open-source projects: the
+<a href="https://dri.freedesktop.org/">Direct Rendering
+Infrastructure</a> and <a href="https://x.org">X.org</a> to
+provide OpenGL support on Linux, FreeBSD and other operating
+systems.
+</p>
 
 
-<H1>Project History</H1>
+
+<h1>Project History</h1>
 
 <p>
 The Mesa project was originally started by Brian Paul.
@@ -76,7 +97,7 @@ the OpenGL API, so they didn't feel threatened by the project.
 1995-1996: I continue working on Mesa both during my spare time and during
 my work hours at the Space Science and Engineering Center at the University
 of Wisconsin in Madison.  My supervisor, Bill Hibbard, lets me do this because
-Mesa is now being using for the <a href="http://www.ssec.wisc.edu/%7Ebillh/vis.html" target="_parent">Vis5D</a> project.
+Mesa is now being using for the <a href="https://www.ssec.wisc.edu/%7Ebillh/vis.html">Vis5D</a> project.
 </p><p>
 October 1996: Mesa 2.0 is released.  It implements the OpenGL 1.1 specification.
 </p>
@@ -110,11 +131,9 @@ It implements the OpenGL 1.3 specification.
 
 
 <p>
-November 2001: I cofound <a href="http://www.tungstengraphics.com" target="_parent">
-Tungsten Graphics, Inc.</a> with Keith Whitwell, Jens Owen, David Dawes and
-Frank LaMonica.
-I continue to develop Mesa as part of my resposibilities with Tungsten
-Graphics and as a spare-time project.
+November 2001: I cofounded Tungsten Graphics, Inc. with Keith Whitwell,
+Jens Owen, David Dawes and Frank LaMonica.
+Tungsten Graphics was acquired by VMware in December 2008.
 </p>
 
 <p>
@@ -133,17 +152,40 @@ June 2007: Mesa 7.0 is released, implementing the OpenGL 2.1 specification
 and OpenGL Shading Language.
 </p>
 
+<p>
+2008: Keith Whitwell and other Tungsten Graphics employees develop
+<a href="https://en.wikipedia.org/wiki/Gallium3D">Gallium</a>
+- a new GPU abstraction layer.  The latest Mesa drivers are based on
+Gallium and other APIs such as OpenVG are implemented on top of Gallium.
+</p>
+
+<p>
+February 2012: Mesa 8.0 is released, implementing the OpenGL 3.0 specification
+and version 1.30 of the OpenGL Shading Language.
+</p>
+
+<p>
+July 2016: Mesa 12.0 is released, including OpenGL 4.3 support and initial
+support for Vulkan for Intel GPUs.  Plus, there's another gallium software
+driver ("swr") based on LLVM and developed by Intel.
+</p>
 
 <p>
-Ongoing: Mesa is used as the core of many hardware OpenGL drivers for
-the XFree86 and X.org X servers within the
-<A href="http://dri.freedesktop.org/" target="_parent">DRI project</A>.
-I continue to enhance Mesa with new extensions and features.
+Ongoing: Mesa is the OpenGL implementation for devices designed by
+Intel, AMD, NVIDIA, Qualcomm, Broadcom, Vivante, plus the VMware and
+VirGL virtual GPUs.
+There's also several software-based renderers: swrast (the legacy
+Mesa rasterizer), softpipe (a gallium reference driver), llvmpipe
+(LLVM/JIT-based high-speed rasterizer) and swr (another LLVM-based driver).
+</p>
+<p>
+Work continues on the drivers and core Mesa to implement newer versions
+of the OpenGL, OpenGL ES and Vulkan specifications.
 </p>
 
 
 
-<H1>Major Versions</H1>
+<h1>Major Versions</h1>
 
 <p>
 This is a summary of the major versions of Mesa.
@@ -152,14 +194,62 @@ of the OpenGL specification is implemented.
 </p>
 
 
-<H2>Version 7.x features</H2>
+<h2>Version 12.x features</h2>
+<p>
+Version 12.x of Mesa implements the OpenGL 4.3 API, but not all drivers
+support OpenGL 4.3.
+</p>
+<p>
+Initial support for Vulkan is also included.
+</p>
+
+
+<h2>Version 11.x features</h2>
+<p>
+Version 11.x of Mesa implements the OpenGL 4.1 API, but not all drivers
+support OpenGL 4.1.
+</p>
+
+
+<h2>Version 10.x features</h2>
+<p>
+Version 10.x of Mesa implements the OpenGL 3.3 API, but not all drivers
+support OpenGL 3.3.
+</p>
+
+
+<h2>Version 9.x features</h2>
+<p>
+Version 9.x of Mesa implements the OpenGL 3.1 API.
+While the driver for Intel Sandy Bridge and Ivy Bridge is the only
+driver to support OpenGL 3.1, many developers across the open-source
+community contributed features required for OpenGL 3.1.  The primary
+features added since the Mesa 8.0 release are
+GL_ARB_texture_buffer_object and GL_ARB_uniform_buffer_object.
+</p>
+<p>
+Version 9.0 of Mesa also included the first release of the Clover state
+tracker for OpenCL.
+</p>
+
+
+<h2>Version 8.x features</h2>
+<p>
+Version 8.x of Mesa implements the OpenGL 3.0 API.
+The developers at Intel deserve a lot of credit for implementing most
+of the OpenGL 3.0 features in core Mesa, the GLSL compiler as well as
+the i965 driver.
+</p>
+
+
+<h2>Version 7.x features</h2>
 <p>
 Version 7.x of Mesa implements the OpenGL 2.1 API.  The main feature
 of OpenGL 2.x is the OpenGL Shading Language.
 </p>
 
 
-<H2>Version 6.x features</H2>
+<h2>Version 6.x features</h2>
 <p>
 Version 6.x of Mesa implements the OpenGL 1.5 API with the following
 extensions incorporated as standard features:
@@ -193,13 +283,13 @@ GL_SRC2_ALPHA               GL_SOURCE2_ALPHA
 </pre>
 <p>
 See the
-<a href="http://www.opengl.org/documentation/spec.html" target="_parent">
+<a href="https://www.opengl.org/documentation/spec.html">
 OpenGL specification</a> for more details.
 </p>
 
 
 
-<H2>Version 5.x features</H2>
+<h2>Version 5.x features</h2>
 <p>
 Version 5.x of Mesa implements the OpenGL 1.4 API with the following
 extensions incorporated as standard features:
@@ -225,7 +315,7 @@ extensions incorporated as standard features:
 </ul>
 
 
-<H2>Version 4.x features</H2>
+<h2>Version 4.x features</h2>
 
 <p>
 Version 4.x of Mesa implements the OpenGL 1.3 API with the following
@@ -244,7 +334,7 @@ extensions incorporated as standard features:
 <li>GL_ARB_transpose_matrix
 </ul>
 
-<H2>Version 3.x features</H2>
+<h2>Version 3.x features</h2>
 
 <p>
 Version 3.x of Mesa implements the OpenGL 1.2 API with the following
@@ -260,7 +350,7 @@ features:
 </ul>
 
 
-<H2>Version 2.x features</H2>
+<h2>Version 2.x features</h2>
 <p>
 Version 2.x of Mesa implements the OpenGL 1.1 API with the following
 features.
@@ -309,6 +399,6 @@ features.
        </ul>
 </ul>
 
-
+</div>
 </body>
 </html>