drisw: use getImageShm() if available
[mesa.git] / docs / intro.html
index 303f5eb0f80ef00e0e54632f8c4e4c257b0c7e47..be164c883dd59be2bc9f6a22c49bcf31024ba633 100644 (file)
@@ -1,36 +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>
+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="http://dri.freedesktop.org/" 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 
+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.
@@ -77,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>
@@ -134,7 +154,7 @@ and OpenGL Shading Language.
 
 <p>
 2008: Keith Whitwell and other Tungsten Graphics employees develop
-<a href="http://en.wikipedia.org/wiki/Gallium3D"  target="_parent">Gallium</a>
+<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>
@@ -145,18 +165,27 @@ and version 1.30 of the OpenGL Shading Language.
 </p>
 
 <p>
-Ongoing: Mesa is the OpenGL implementation for several types of hardware
-made by Intel, AMD and NVIDIA, plus the VMware virtual GPU.
+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 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) and llvmpipe
-(LLVM/JIT-based high-speed rasterizer).
+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 specification.
+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.
@@ -165,7 +194,46 @@ of the OpenGL specification is implemented.
 </p>
 
 
-<H2>Version 8.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
@@ -174,14 +242,14 @@ the i965 driver.
 </p>
 
 
-<H2>Version 7.x features</H2>
+<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:
@@ -215,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:
@@ -247,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
@@ -266,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
@@ -282,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.
@@ -331,6 +399,6 @@ features.
        </ul>
 </ul>
 
-
+</div>
 </body>
 </html>