From 0b27aceae2464db3dd149cf4fd667e353a655c5e Mon Sep 17 00:00:00 2001
From: Brian Paul
+The Mesa 3D Graphics Library
+
+Bug reports can be filed in the Bug
+Database on sourceforge.net. Please follow these guidelines:
+
+Bug reports will automatically be forwarded to the Mesa developer's list.
+
+The easier a bug is to reproduce, the sooner it will be fixed.
+Please do everything you can to facilitate quickly fixing bugs.
+If your bug report is vague or your test program doesn't compile
+easily, the problem may not be fixed very quickly.
+
+The SGI OpenGL conformance tests verify correct operation of OpenGL
+implementations. I, Brian Paul, have been given a copy of the tests
+for testing Mesa. The tests are not publically available.
+
+This file has the latest results of testing Mesa with the OpenGL 1.2
+conformance tests. Testing with the preliminary OpenGL 1.3 tests has
+also been done. Mesa passes all the 1.3 tests.
+
+The tests were run using the software X11 device driver on 24-bpp
+and 16-bpp displays.
+
+Mesa 4.0 and later pass all conformance tests at all path levels.
+Note that this says nothing about the conformance of hardware drivers
+based upon Mesa.
+
+Mesa is primarily developed and maintained on a volunteer basis.
+Some Mesa development work has been done in conjuction with contracted
+projects, such as the XFree86/DRI drivers.
+
+Bug Database
+
+
+
+
+Conformance
+
+
+
+COVERAGE TESTS
+--------------
+
+Test that all API functions accept the legal parameters and reject
+illegal parameters. The result of each test is either pass or fail.
+
+% covgl
+OpenGL Coverage Test.
+Version 1.2
+
+covgl passed.
+
+covgl passed at 1.1 level.
+
+covgl passed at 1.2 level.
+
+covgl passed for ARB_multitexture.
+
+
+% covglu
+OpenGL GLU Coverage Test.
+Version 1.3
+
+covglu passed.
+
+covglu passed at 1.1 level.
+
+
+% covglx
+OpenGL X Coverage Test.
+Version 1.1.1
+
+covglx passed.
+
+
+% primtest -v
+Open GL Primitives Test.
+Version 1.2
+
+[lots of output deleted]
+
+292159 Combinations.
+primtest passed.
+
+
+
+
+GL CONFORMANCE TEST
+===================
+
+Render test images, read them back, then test for expected results.
+
+
+----------------------------------------------------------------------
+% conform -v 2
+
+OpenGL Conformance Test
+Version 1.2
+
+Setup Report.
+ Verbose level = 2.
+ Random number seed = 1.
+ Path inactive.
+
+Visual Report.
+ Display ID = 35. Indirect Rendering.
+ Double Buffered.
+ RGBA (5, 6, 5, 0).
+ Stencil (8).
+ Depth (16).
+ Accumulation (16, 16, 16, 16).
+
+Epsilon Report.
+ zero error epsilon = 0.000122.
+ RGBA error epsilon = 0.0324, 0.016, 0.0324, 0.000122.
+ Depth buffer error epsilon = 0.000137.
+ Stencil plane error epsilon = 0.00404.
+ Accumulation error epsilon = 0.000137, 0.000137, 0.000137, 0.000137.
+
+Default State test passed.
+Must Pass test passed.
+Divide By Zero test passed.
+Viewport Clamp test passed.
+Matrix Stack test passed.
+Matrix Stack Mixing test passed.
+Vertex Order test passed.
+Transformations test passed.
+Transformation Normal test passed.
+Viewport Transformation test passed.
+Buffer Clear test passed.
+Buffer Corners test passed.
+Buffer Color test passed.
+Color Ramp test passed.
+Mask test passed.
+Buffer Invariance test passed.
+Accumulation Buffer test passed.
+Select test passed.
+Feedback test passed.
+Scissor test passed.
+Alpha Plane Function test passed.
+Stencil Plane Clear test passed.
+Stencil Plane Corners test passed.
+Stencil Plane Operation test passed.
+Stencil Plane Function test passed.
+Depth Buffer Clear test passed.
+Depth Buffer Function test passed.
+Blend test passed.
+Dither test passed.
+LogicOp Function test does not exist for an RGB visual.
+DrawPixels test passed.
+CopyPixels test passed.
+Bitmap Rasterization test passed.
+Point Rasterization test passed.
+Anti-aliased Point test passed.
+Line Rasterization test passed.
+Line Stipple test passed.
+Anti-aliased Line test passed.
+Horizontal and Vertical Line test passed.
+Triangle Rasterization test passed.
+Triangle Tile test passed.
+Triangle Stipple test passed.
+Anti-aliased Triangles test passed.
+Quad Rasterization test passed.
+Polygon Face test passed.
+Polygon Cull test passed.
+Polygon Stipple test passed.
+Polygon Edge test passed.
+Ambient Material test passed.
+Ambient Scene test passed.
+Attenuation Position test passed.
+Diffuse Light test passed.
+Diffuse Material test passed.
+Diffuse Material Normal test passed.
+Diffuse Material Positioning test passed.
+Emissive Material test passed.
+Specular Exponent test passed.
+Specular Exponent Normal test passed.
+Specular Local Eye Half Angle test passed.
+Specular Light test passed.
+Specular Material test passed.
+Specular Normal test passed.
+Spot Positioning test passed.
+Spot Exponent and Positioning test passed.
+Spot Exponent and Direction test passed.
+Fog Exponential test passed.
+Fog Linear test passed.
+Texture Decal test passed.
+Texture Border test passed.
+Mipmaps Selection test passed.
+Mipmaps Interpolation test passed.
+Display Lists test passed.
+Evaluator test passed.
+Evaluator Color test passed.
+Texture Edge Clamp test passed.
+Packed Pixels test passed.
+Texture LOD test passed.
+Rescale Normal test passed.
+Color Table test passed.
+Convolution test passed.
+Convolution Border test passed.
+Histogram test passed.
+MinMax test passed.
+MultiTexture test passed.
+
+Conform passed.
+
+----------------------------------------------------------------------
+% conform -v 2 -p 1
+
+OpenGL Conformance Test
+Version 1.2
+
+Setup Report.
+ Verbose level = 2.
+ Random number seed = 1.
+ Path level = 1.
+
+Visual Report.
+ Display ID = 35. Indirect Rendering.
+ Double Buffered.
+ RGBA (5, 6, 5, 0).
+ Stencil (8).
+ Depth (16).
+ Accumulation (16, 16, 16, 16).
+
+Epsilon Report.
+ zero error epsilon = 0.000122.
+ RGBA error epsilon = 0.0324, 0.016, 0.0324, 0.000122.
+ Depth buffer error epsilon = 0.000137.
+ Stencil plane error epsilon = 0.00404.
+ Accumulation error epsilon = 0.000137, 0.000137, 0.000137, 0.000137.
+
+Default State test passed.
+Must Pass test passed.
+Divide By Zero test passed.
+Viewport Clamp test passed.
+Matrix Stack test passed.
+Matrix Stack Mixing test passed.
+Vertex Order test passed.
+Transformations test passed.
+Transformation Normal test passed.
+Viewport Transformation test passed.
+Buffer Clear test passed.
+Buffer Corners test passed.
+Buffer Color test passed.
+Color Ramp test passed.
+Mask test passed.
+Buffer Invariance test passed.
+Accumulation Buffer test passed.
+Select test passed.
+Feedback test passed.
+Scissor test passed.
+Alpha Plane Function test passed.
+Stencil Plane Clear test passed.
+Stencil Plane Corners test passed.
+Stencil Plane Operation test passed.
+Stencil Plane Function test passed.
+Depth Buffer Clear test passed.
+Depth Buffer Function test passed.
+Blend test passed.
+Dither test passed.
+LogicOp Function test does not exist for an RGB visual.
+DrawPixels test passed.
+CopyPixels test passed.
+Bitmap Rasterization test passed.
+Point Rasterization test passed.
+Anti-aliased Point test passed.
+Line Rasterization test passed.
+Line Stipple test passed.
+Anti-aliased Line test passed.
+Horizontal and Vertical Line test passed.
+Triangle Rasterization test passed.
+Triangle Tile test passed.
+Triangle Stipple test passed.
+Anti-aliased Triangles test passed.
+Quad Rasterization test passed.
+Polygon Face test passed.
+Polygon Cull test passed.
+Polygon Stipple test passed.
+Polygon Edge test passed.
+Ambient Material test passed.
+Ambient Scene test passed.
+Attenuation Position test passed.
+Diffuse Light test passed.
+Diffuse Material test passed.
+Diffuse Material Normal test passed.
+Diffuse Material Positioning test passed.
+Emissive Material test passed.
+Specular Exponent test passed.
+Specular Exponent Normal test passed.
+Specular Local Eye Half Angle test passed.
+Specular Light test passed.
+Specular Material test passed.
+Specular Normal test passed.
+Spot Positioning test passed.
+Spot Exponent and Positioning test passed.
+Spot Exponent and Direction test passed.
+Fog Exponential test passed.
+Fog Linear test passed.
+Texture Decal test passed.
+Texture Border test passed.
+Mipmaps Selection test passed.
+Mipmaps Interpolation test passed.
+Display Lists test passed.
+Evaluator test passed.
+Evaluator Color test passed.
+Texture Edge Clamp test passed.
+Packed Pixels test passed.
+Texture LOD test passed.
+Rescale Normal test passed.
+Color Table test passed.
+Convolution test passed.
+Convolution Border test passed.
+Histogram test passed.
+MinMax test passed.
+MultiTexture test passed.
+
+Conform passed.
+
+----------------------------------------------------------------------
+% conform -v 2 -p 2
+
+OpenGL Conformance Test
+Version 1.2
+
+Setup Report.
+ Verbose level = 2.
+ Random number seed = 1.
+ Path level = 2.
+
+Visual Report.
+ Display ID = 35. Indirect Rendering.
+ Double Buffered.
+ RGBA (5, 6, 5, 0).
+ Stencil (8).
+ Depth (16).
+ Accumulation (16, 16, 16, 16).
+
+Epsilon Report.
+ zero error epsilon = 0.000122.
+ RGBA error epsilon = 0.0324, 0.016, 0.0324, 0.000122.
+ Depth buffer error epsilon = 0.000137.
+ Stencil plane error epsilon = 0.00404.
+ Accumulation error epsilon = 0.000137, 0.000137, 0.000137, 0.000137.
+
+Default State test passed.
+Must Pass test passed.
+Divide By Zero test passed.
+Viewport Clamp test passed.
+Matrix Stack test passed.
+Matrix Stack Mixing test passed.
+Vertex Order test passed.
+Transformations test passed.
+Transformation Normal test passed.
+Viewport Transformation test passed.
+Buffer Clear test passed.
+Buffer Corners test passed.
+Buffer Color test passed.
+Color Ramp test passed.
+Mask test passed.
+Buffer Invariance test passed.
+Accumulation Buffer test passed.
+Select test passed.
+Feedback test passed.
+Scissor test passed.
+Alpha Plane Function test passed.
+Stencil Plane Clear test passed.
+Stencil Plane Corners test passed.
+Stencil Plane Operation test passed.
+Stencil Plane Function test passed.
+Depth Buffer Clear test passed.
+Depth Buffer Function test passed.
+Blend test passed.
+Dither test passed.
+LogicOp Function test does not exist for an RGB visual.
+DrawPixels test passed.
+CopyPixels test passed.
+Bitmap Rasterization test passed.
+Point Rasterization test passed.
+Anti-aliased Point test passed.
+Line Rasterization test passed.
+Line Stipple test passed.
+Anti-aliased Line test passed.
+Horizontal and Vertical Line test passed.
+Triangle Rasterization test passed.
+Triangle Tile test passed.
+Triangle Stipple test passed.
+Anti-aliased Triangles test passed.
+Quad Rasterization test passed.
+Polygon Face test passed.
+Polygon Cull test passed.
+Polygon Stipple test passed.
+Polygon Edge test passed.
+Ambient Material test passed.
+Ambient Scene test passed.
+Attenuation Position test passed.
+Diffuse Light test passed.
+Diffuse Material test passed.
+Diffuse Material Normal test passed.
+Diffuse Material Positioning test passed.
+Emissive Material test passed.
+Specular Exponent test passed.
+Specular Exponent Normal test passed.
+Specular Local Eye Half Angle test passed.
+Specular Light test passed.
+Specular Material test passed.
+Specular Normal test passed.
+Spot Positioning test passed.
+Spot Exponent and Positioning test passed.
+Spot Exponent and Direction test passed.
+Fog Exponential test passed.
+Fog Linear test passed.
+Texture Decal test passed.
+Texture Border test passed.
+Mipmaps Selection test passed.
+Mipmaps Interpolation test passed.
+Display Lists test passed.
+Evaluator test passed.
+Evaluator Color test passed.
+Texture Edge Clamp test passed.
+Packed Pixels test passed.
+Texture LOD test passed.
+Rescale Normal test passed.
+Color Table test passed.
+Convolution test passed.
+Convolution Border test passed.
+Histogram test passed.
+MinMax test passed.
+MultiTexture test passed.
+
+Conform passed.
+
+----------------------------------------------------------------------
+% conform -v 2 -p 3
+
+OpenGL Conformance Test
+Version 1.2
+
+Setup Report.
+ Verbose level = 2.
+ Random number seed = 1.
+ Path level = 3.
+
+Visual Report.
+ Display ID = 35. Indirect Rendering.
+ Double Buffered.
+ RGBA (5, 6, 5, 0).
+ Stencil (8).
+ Depth (16).
+ Accumulation (16, 16, 16, 16).
+
+Epsilon Report.
+ zero error epsilon = 0.000122.
+ RGBA error epsilon = 0.0324, 0.016, 0.0324, 0.000122.
+ Depth buffer error epsilon = 0.000137.
+ Stencil plane error epsilon = 0.00404.
+ Accumulation error epsilon = 0.000137, 0.000137, 0.000137, 0.000137.
+
+Default State test passed.
+Must Pass test passed.
+Divide By Zero test passed.
+Viewport Clamp test passed.
+Matrix Stack test passed.
+Matrix Stack Mixing test passed.
+Vertex Order test passed.
+Transformations test passed.
+Transformation Normal test passed.
+Viewport Transformation test passed.
+Buffer Clear test passed.
+Buffer Corners test passed.
+Buffer Color test passed.
+Color Ramp test passed.
+Mask test passed.
+Buffer Invariance test passed.
+Accumulation Buffer test passed.
+Select test passed.
+Feedback test passed.
+Scissor test passed.
+Alpha Plane Function test passed.
+Stencil Plane Clear test passed.
+Stencil Plane Corners test passed.
+Stencil Plane Operation test passed.
+Stencil Plane Function test passed.
+Depth Buffer Clear test passed.
+Depth Buffer Function test passed.
+Blend test passed.
+Dither test passed.
+LogicOp Function test does not exist for an RGB visual.
+DrawPixels test passed.
+CopyPixels test passed.
+Bitmap Rasterization test passed.
+Point Rasterization test passed.
+Anti-aliased Point test passed.
+Line Rasterization test passed.
+Line Stipple test passed.
+Anti-aliased Line test passed.
+Horizontal and Vertical Line test passed.
+Triangle Rasterization test passed.
+Triangle Tile test passed.
+Triangle Stipple test passed.
+Anti-aliased Triangles test passed.
+Quad Rasterization test passed.
+Polygon Face test passed.
+Polygon Cull test passed.
+Polygon Stipple test passed.
+Polygon Edge test passed.
+Ambient Material test passed.
+Ambient Scene test passed.
+Attenuation Position test passed.
+Diffuse Light test passed.
+Diffuse Material test passed.
+Diffuse Material Normal test passed.
+Diffuse Material Positioning test passed.
+Emissive Material test passed.
+Specular Exponent test passed.
+Specular Exponent Normal test passed.
+Specular Local Eye Half Angle test passed.
+Specular Light test passed.
+Specular Material test passed.
+Specular Normal test passed.
+Spot Positioning test passed.
+Spot Exponent and Positioning test passed.
+Spot Exponent and Direction test passed.
+Fog Exponential test passed.
+Fog Linear test passed.
+Texture Decal test passed.
+Texture Border test passed.
+Mipmaps Selection test passed.
+Mipmaps Interpolation test passed.
+Display Lists test passed.
+Evaluator test passed.
+Evaluator Color test passed.
+Texture Edge Clamp test passed.
+Packed Pixels test passed.
+Texture LOD test passed.
+Rescale Normal test passed.
+Color Table test passed.
+Convolution test passed.
+Convolution Border test passed.
+Histogram test passed.
+MinMax test passed.
+MultiTexture test passed.
+
+Conform passed.
+
+----------------------------------------------------------------------
+% conform -v 2 -p 4
+
+OpenGL Conformance Test
+Version 1.2
+
+Setup Report.
+ Verbose level = 2.
+ Random number seed = 1.
+ Path level = 4.
+
+Visual Report.
+ Display ID = 35. Indirect Rendering.
+ Double Buffered.
+ RGBA (5, 6, 5, 0).
+ Stencil (8).
+ Depth (16).
+ Accumulation (16, 16, 16, 16).
+
+Epsilon Report.
+ zero error epsilon = 0.000122.
+ RGBA error epsilon = 0.0324, 0.016, 0.0324, 0.000122.
+ Depth buffer error epsilon = 0.000137.
+ Stencil plane error epsilon = 0.00404.
+ Accumulation error epsilon = 0.000137, 0.000137, 0.000137, 0.000137.
+
+Default State test passed.
+Must Pass test passed.
+Divide By Zero test passed.
+Viewport Clamp test passed.
+Matrix Stack test passed.
+Matrix Stack Mixing test passed.
+Vertex Order test passed.
+Transformations test passed.
+Transformation Normal test passed.
+Viewport Transformation test passed.
+Buffer Clear test passed.
+Buffer Corners test passed.
+Buffer Color test passed.
+Color Ramp test passed.
+Mask test passed.
+Buffer Invariance test passed.
+Accumulation Buffer test passed.
+Select test passed.
+Feedback test passed.
+Scissor test passed.
+Alpha Plane Function test passed.
+Stencil Plane Clear test passed.
+Stencil Plane Corners test passed.
+Stencil Plane Operation test passed.
+Stencil Plane Function test passed.
+Depth Buffer Clear test passed.
+Depth Buffer Function test passed.
+Blend test passed.
+Dither test passed.
+LogicOp Function test does not exist for an RGB visual.
+DrawPixels test passed.
+CopyPixels test passed.
+Bitmap Rasterization test passed.
+Point Rasterization test passed.
+Anti-aliased Point test passed.
+Line Rasterization test passed.
+Line Stipple test passed.
+Anti-aliased Line test passed.
+Horizontal and Vertical Line test passed.
+Triangle Rasterization test passed.
+Triangle Tile test passed.
+Triangle Stipple test passed.
+Anti-aliased Triangles test passed.
+Quad Rasterization test passed.
+Polygon Face test passed.
+Polygon Cull test passed.
+Polygon Stipple test passed.
+Polygon Edge test passed.
+Ambient Material test passed.
+Ambient Scene test passed.
+Attenuation Position test passed.
+Diffuse Light test passed.
+Diffuse Material test passed.
+Diffuse Material Normal test passed.
+Diffuse Material Positioning test passed.
+Emissive Material test passed.
+Specular Exponent test passed.
+Specular Exponent Normal test passed.
+Specular Local Eye Half Angle test passed.
+Specular Light test passed.
+Specular Material test passed.
+Specular Normal test passed.
+Spot Positioning test passed.
+Spot Exponent and Positioning test passed.
+Spot Exponent and Direction test passed.
+Fog Exponential test passed.
+Fog Linear test passed.
+Texture Decal test passed.
+Texture Border test passed.
+Mipmaps Selection test passed.
+Mipmaps Interpolation test passed.
+Display Lists test passed.
+Evaluator test passed.
+Evaluator Color test passed.
+Texture Edge Clamp test passed.
+Packed Pixels test passed.
+Texture LOD test passed.
+Rescale Normal test passed.
+Color Table test passed.
+Convolution test passed.
+Convolution Border test passed.
+Histogram test passed.
+MinMax test passed.
+MultiTexture test passed.
+
+Conform passed.
+
+
+
+GLX CONFORMANCE TEST
+====================
+
+% conformx -v 2
+
+OpenGL X Conformance Test
+Version 1.1.1
+
+Setup Report.
+ Verbose level = 2.
+ Random number seed = 1.
+ Path inactive.
+
+Visual Report.
+ Display ID = 34. Direct Rendering.
+ Double Buffered.
+ RGBA (8, 8, 8, 0).
+ Stencil (8).
+ Depth (16).
+ Accumulation (16, 16, 16, 16).
+
+Epsilon Report.
+ zero error epsilon = 0.000122.
+ RGBA error epsilon = 0.00404, 0.00404, 0.00404, 0.000122.
+ Depth buffer error epsilon = 0.000137.
+ Stencil plane error epsilon = 0.00404.
+ Accumulation error epsilon = 0.000137, 0.000137, 0.000137, 0.000137.
+
+Default State test passed.
+glReadPixels() test passed.
+Font test passed.
+
+Conformx passed.
+
+
+
+
+NOTE: conformx passes for all machine path levels (-p option).
+
+
+
+
diff --git a/docs/contents.html b/docs/contents.html
new file mode 100644
index 00000000000..f5d6b46842d
--- /dev/null
+++ b/docs/contents.html
@@ -0,0 +1,76 @@
+
+
+
+
+
+Download / Install
+
+
+Resources
+
+
+User Topics
+
+
+
+Developer Topics
+
+
+
+Links
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/docs/custom.html b/docs/custom.html
new file mode 100644
index 00000000000..a5cfdeb813b
--- /dev/null
+++ b/docs/custom.html
@@ -0,0 +1,25 @@
+
+
+Custom Development
+
+[Begin shameless plug]
+If you have a need for specific or custom Mesa development work,
+
+Tungsten Graphics, Inc. may be able to help you.
+[End shameless plug]
+
+Anonymous, public, read-only access to the code in CVS is +available. Here are the basic instructions for Unix systems: +
+ +cvs -d:pserver:anonymous@cvs.mesa3d.sourceforge.net:/cvsroot/mesa3d
+ login
+ CVS password:
prompt.
+ cvs -z3 -d:pserver:anonymous@cvs.mesa3d.sourceforge.net:/cvsroot/mesa3d
+ co Mesa
+To update your Mesa CVS source to the latest CVS source: + +
cd Mesa
+ cvs -z3 -d:pserver:anonymous@cvs.mesa3d.sourceforge.net:/cvsroot/mesa3d
+ update
+You can browse the Mesa source code in CVS +here. + +
+ + + \ No newline at end of file diff --git a/docs/cvs_branches.html b/docs/cvs_branches.html new file mode 100644 index 00000000000..ecb524e20e2 --- /dev/null +++ b/docs/cvs_branches.html @@ -0,0 +1,59 @@ + + +
+The Mesa3d sources are split up into two branches. A branch that is to
+remain as stable as possible, and an unstable branch where development
+work for new versions will be done. The current stable branch is
+tagged mesa_3_4_branch
while the unstable branch is just
+the default. The goal is to adopt and even/odd stable/unstable
+versioning scheme similar to the Linux kernel. Hence releases of Mesa
+3.2.X should be more stable than Mesa 3.3.X.
All versions of
+Mesa after 3.0 will also be tagged with a branch id. Mesa 3.1 has the
+tag mesa_3_1
, Mesa 3.2 will be mesa_3_2
,
+Mesa 3.3 mesa_3_3
, etc..
+To checkout a specific branch of mesa just pass -r
and
+the branch tag after your cvs command. For example cvs checkout
+-r mesa_3_4_branch Mesa
will checkout the 3.4 branch and
+cvs update -r mesa_3_4_branch
will convert your current
+branch to the 3.4 dev branch.
+Consult http://www.durak.org/cvswebsites/doc/cvs_5.php3#SEC54
+for more on branching in cvs.
+
+To see a list of all the CVS branchs run cvs log README
(or any
+other file) and look for the section labeled symbolic names
.
+You'll see something like this:
+
symbolic names: + mesa_4_0: 1.3 + mesa_4_0_branch: 1.3.0.6 + mesa_3_5: 1.3 + mesa_3_4_2: 1.3 + mesa_3_4_1: 1.3 + mesa_3_4: 1.3 + mesa_3_4_branch: 1.3.0.4 + mesa_3_3: 1.3 + mesa_3_2_1: 1.1.1.1 + mesa_3_3_texture_env_combine2: 1.3.0.2 + mesa_3_2: 1.1.1.1 + mesa_3_2_beta_1: 1.1.1.1 + mesa_3_1: 1.1.1.1 + mesa_3_2_dev: 1.1.1.1.0.2 + mesa_3_1_beta_3: 1.1.1.1 + start: 1.1.1.1 + mesa: 1.1.1 ++ + + \ No newline at end of file diff --git a/docs/debugging.html b/docs/debugging.html new file mode 100644 index 00000000000..cdefa7d210d --- /dev/null +++ b/docs/debugging.html @@ -0,0 +1,36 @@ + + +
+ Normally Mesa (and OpenGL) records but does not notify the user of
+ errors. It is up to the application to call
+ glGetError
to check for errors. Mesa supports an
+ environment variable, MESA_DEBUG, to help with debugging. If
+ MESA_DEBUG is defined, a message will be printed to stdout whenever
+ an error occurs.
+
+ More extensive error checking is done when Mesa is compiled with the + DEBUG symbol defined. You'll have to edit the Make-config file and + add -DDEBUG to the CFLAGS line for your system configuration. You may + also want to replace any optimization flags with the -g flag so you can + use your debugger. After you've edited Make-config type 'make clean' + before recompiling. +
++ In your debugger you can set a breakpoint in _mesa_error() to trap Mesa + errors. +
++ There is a display list printing/debugging facility. See the end of + src/dlist.c for details. +
+ + + diff --git a/docs/demos.html b/docs/demos.html new file mode 100644 index 00000000000..6e189458c21 --- /dev/null +++ b/docs/demos.html @@ -0,0 +1,16 @@ + + ++To add a new GL extension to Mesa you have to do the following. +
+ If glext.h doesn't define the extension, edit include/GL/gl.h and add: + - new enum tokens + - new API function entry points + - #define GL_EXT_the_extension_name 1 + + If adding a new API function (call it glNewFunctionEXT): + - insert glNewFunctionEXT()into src/apiext.h + - edit src/types.h and add NewFunction to the gl_api_table struct + - implement gl_NewFunction() in the appropriate src file + - hook gl_NewFunction() into pointers.c + - add display list support in dlist.c for save_NewFunction() + - add glNewFunctionEXT to gl_GetProcAddress() in extensions.c or + in the device driver's GetProcAddress() function if appropriate ++
+If adding new GL state be sure to update get.c and enable.c +
++In general, look for an extension similar to the new one that's already +implemented in Mesa and follow it by example. +
+ + + ++Mesa's code style has changed over the years. Here's the latest. +
+ ++Comment your code! It's extremely important that open-source code be +well documented. Also, strive to write clean, easily understandable code. +
+ ++3-space indentation +
+ ++If you use tabs, set them to 8 columns +
+ ++Brace example: +
++ if (condition) { + foo; + } + else { + bar; + } ++ +
+Here's the GNU indent command which will best approximate my preferred style: +
++ indent -br -i3 -npcs infile.c -o outfile.c ++ + +
+Local variable name example: localVarName (no underscores) +
+ ++Constants and macros are ALL_UPPERCASE, with _ between words +
+ ++Global vars not allowed. +
+ ++Function name examples: +
++ glFooBar() - a public GL entry point (in dispatch.c) + _mesa_FooBar() - the internal immediate mode function + save_FooBar() - retained mode (display list) function in dlist.c + foo_bar() - a static (private) function + _mesa_foo_bar() - an internal non-static Mesa function ++ + +
+XXX to do +
+ + + ++These are the instructions for making a new Mesa release. +
+ ++Prerequisites (later versions may work): +
++Be sure to do a "cvs update -d ." in the Mesa directory to +get all the latest files. +
+ ++Update the version strings in src/get.c and src/X/fakeglx.c to return +the new Mesa version number. +
+ ++Create/edit the docs/RELNOTES-X-Y file to document what's new in the release. +Edit the docs/VERSIONS file too. +Update the docs/IAFA-PACKAGE file. +
+ ++Edit Make-config and change the MESA_MAJOR and/or MESA_MINOR versions. +
+ ++Edit the GNU configure stuff to change versions numbers as needed: +Update the version string (second argument) in the line +"AM_INIT_AUTOMAKE(Mesa, 3.3)" in the configure.in file. +
+ ++Remove the leading `dnl' from the line "dnl AM_MAINTAINER_MODE". +
+ ++Verify the version numbers near the top of configure.in +
+ ++Run "fixam -f" to disable automatic dependency tracking. +
+ ++Run the bootstrap script to generate the configure script. +
+ ++Edit Makefile.X11 and verify DIRECTORY is set correctly. The Mesa +sources must be in that directory (or there must be a symbolic link). +
+ ++Edit Makefile.X11 and verify that LIB_NAME and DEMO_NAME are correct. +If it's a beta release, be sure the bump up the beta release number. +
+ ++cp Makefile.X11 to Makefile so that the old-style Mesa makefiles +still work. ./configure will overwrite it if that's what the user runs. +
+ ++Make a symbolic link from $(DIRECTORY) to Mesa. For example, +ln -s Mesa Mesa-3.3 This is needed in order to make a correct +tar file in the next step. +
+ ++Make the distribution files. From inside the Mesa directory: +
+ make -f Makefile.X11 lib_tar + make -f Makefile.X11 demo_tar + make -f Makefile.X11 lib_zip + make -f Makefile.X11 demo_zip ++ +
+Copy the distribution files to a temporary directory, unpack them, +compile everything, and run some demos to be sure everything works. +
+ ++Upload the *.tar.gz and *.zip files to ftp.mesa3d.org +
+ ++Update the web site. CJ Beyer (cj@styx.phy.vanderbilt.edu) can +help with this and uploading to the ftp site. +
+ ++Make the announcement to the SourceForge.net sites: mesa3d-dev@lists.sf.net, +mesa3d-users@lists.sf.net and mesa3d-announce@lists.sf.net +
+ + ++In order to run the bootstrap script you'll need: +
+
+autoconf 2.50 +automake 1.4-p5 +libtool 1.4 ++ + + + diff --git a/docs/download.html b/docs/download.html new file mode 100644 index 00000000000..79b34e4990f --- /dev/null +++ b/docs/download.html @@ -0,0 +1,106 @@ + + +
+Mesa can be downloaded from the + +SourceForge download area. +
+ ++Since version 2.3, Mesa is distributed in two pieces: main library code +and demos. If you're upgrading from a previous version of Mesa or you're not +interested in the demos you can just download the core Mesa archive file. +
+ ++Mesa is available in at least three archive formats: +
+ ++1. GNU zip/tar + + Download MesaLib-X.Y.tar.gz and optionally MesaDemos-X.Y.tar.gz + Unpack with: + gzcat MesaLib-X.Y.tar.gz | tar xf - + gzcat MesaDemos-X.Y.tar.gz | tar xf - + or + gunzip MesaLib-X.Y.tar.gz ; tar xf MesaLib-X.Y.tar + gunzip MesaDemos-X.Y.tar.gz ; tar xf MesaLib-X.Y.tar + or + tar zxf MesaLib-X.Y.tar.gz + tar zxf MesaDemos-X.Y.tar.gz + + If you don't have gzcat try zcat instead. + +2. Unix compressed/tar + + Download MesaLib-X.Y.tar.Z and optionally MesaDemos-X.Y.tar.Z + Unpack with: + zcat MesaLib-X.Y.tar.Z | tar xf - + zcat MesaDemos-X.Y.tar.Z | tar xf - + +3. ZIP format + + Download MesaLib-X.Y.zip and optionally MesaDemos-X.Y.zip + Unpack with: + unzip MesaLib-X.Y.zip + unzip MesaDemos-X.Y.zip ++ +
+After unpacking you'll have these directories (and more): +
++Makefile.X11 - "old" top-level Makefile for X11-based systems +Make-config - system configurations used by the Makefile.X11 +configure - the GNU autoconf script +bin/ - shell scripts for making shared libraries, etc +include/ - GL header (include) files +lib/ - client libraries, created during installation +src/ - source code for the main libGL library +si-glu/ - SGI Sample Implementation of libGLU +src-glu/ - old source code for libGLU (obsolete) +docs/ - documentation +util/ - handly utility functions +widgets-mesa/ - Mesa widgets for Xt/Motif (obsolete) +widgets-sgi/ - SGI OpenGL widgets for Xt/Motif + +and if you downloaded and unpacked the demos: + +src-glut/ - source code for GLUT toolkit +demos/ - GLUT demos +xdemos/ - X11 and SVGA demo programs +samples/ - sample OpenGL programs from SGI +book/ - example programs from the OpenGL Programming Guide, + converted to GLUT by Mark Kilgard, from GLUT distribution. +images/ - image files + ++ +
+Proceed to compilation and installation +instructions. +
+ ++Mesa 2.5 and later includes Mark Kilgard's GLUT library (GL Utility Toolkit). +GLUT is built automatically on systems which support it. +
++The GLUT tests, demos, examples, etc are not included, just the main library. +To obtain the latest complete release of GLUT please visit the +GLUT homepage +
+ + + + diff --git a/docs/envvars.html b/docs/envvars.html new file mode 100644 index 00000000000..38b212fc020 --- /dev/null +++ b/docs/envvars.html @@ -0,0 +1,25 @@ + + ++Mesa supports the following environment variables: +
++A number of extensions have been developed especially for Mesa. +The specifications follow. +
+ + ++Mesa is an open-source implementation of the OpenGL specification. +OpenGL is a high-level programming library for interactive 3D graphics. +See the OpenGL website for more +information. +
++Mesa 5.0.x supports the OpenGL 1.4 specification. +
+ + ++Yes. Specifically, Mesa serves as the OpenGL core for the XFree86/DRI +OpenGL drivers. See the DRI website for +more information. +
++There have been other hardware drivers for Mesa over the years (such as +the 3Dfx Glide/Voodoo driver, an old S3 driver, etc) but the DRI drivers +are the modern ones. +
+ ++Commercial, hardware-accelerated OpenGL implementations are available for +many operating systems today. +Still, Mesa serves at least these purposes: +
++You don't! The Mesa source code lives inside the XFree86/DRI source tree +and gets compiled into the individual DRI driver modules. +If you try to install Mesa over an XFree86/DRI installation, you'll lose +hardware rendering (because Mesa's libGL.so is different than the XFree86 +libGL.so). +
++The DRI developers will incorporate the latest release of Mesa into the +DRI drivers when the time is right. +
+ ++Yes, SGI's +OpenGL Sample Implemenation (SI) is available. +The SI was written during the time that OpenGL was originally designed. +Unfortunately, development of the SI has stagnated. +Mesa is much more up to date with modern features and extensions. +
++miniGL is a subset of OpenGL +for PalmOS devices. + +TinyGL is another +subset of OpenGL. +
++There may be others but Mesa is the most popular and feature-complete. +
+ +configure; make
Doesn't Workcd Mesa-x.y.z + cp Makefile.X11 Makefile + make ++You'll see a list of system configurations from which to choose. +For example: +
make linux-x86 ++ + +
+On Linux-based systems you'll want to follow the +Linux ABI +standard. +Basically you'll want the following: +
++After installing XFree86 and the DRI drivers, some of these files +may be symlinks into the /usr/X11R6/ tree. +
++The old-style Makefile system doesn't install the Mesa libraries; it's +up to you to copy them (and the headers) to the right place. +
++The GLUT header and library should go in the same directories. +
++If your DRI-based driver isn't working, go to the +DRI website for trouble-shooting information. +
+ + ++Make sure the ratio of the far to near clipping planes isn't too great. +Look + +here for details. +
+
+Mesa uses a 16-bit depth buffer by default which is smaller and faster
+to clear than a 32-bit buffer but not as accurate.
+If you need a deeper you can modify the parameters to
+ glXChooseVisual
in your code.
+
+Be sure you're requesting a depth buffered-visual. If you set the MESA_DEBUG +environment variable it will warn you about trying to enable depth testing +when you don't have a depth buffer. +
+Specifically, make sure glutInitDisplayMode
is being called
+with GLUT_DEPTH
or glXChooseVisual
is being
+called with a non-zero value for GLX_DEPTH_SIZE.
+
This discussion applies to stencil buffers, accumulation buffers and +alpha channels too. +
+ + ++Be sure you have an active/current OpenGL rendering context before +calling glGetString. +
+ + ++If you're trying to draw a filled region by using GL_POINTS or GL_LINES +and seeing holes or gaps it's because of a float-to-int rounding problem. +But this is not a bug. +See Appendix H of the OpenGL Programming Guide - "OpenGL Correctness Tips". +Basically, applying a translation of (0.375, 0.375, 0.0) to your coordinates +will fix the problem. +
+ ++First, join the Mesa3d-dev mailing list. That's where Mesa development +is discussed. +
++The +OpenGL Specification is the bible for OpenGL implemention work. +You should read it. +
+Most of the Mesa development work involves implementing new OpenGL +extensions, writing hardware drivers (for the DRI), and code optimization. +
+ ++Unfortunately, writing a device driver isn't easy. +It requires detailed understanding of OpenGL, the Mesa code, and your +target hardware/operating system. +3D graphics are not simple. +
++The best way to get started is to use an existing driver as your starting +point. +For a software driver, the X11 and OSMesa drivers are good examples. +For a hardware driver, the Radeon and R200 DRI drivers are good examples. +
+The DRI website has more information about writing hardware drivers. +The process isn't well document because the Mesa driver interface changes +over time, and we seldome have spare time for writing documentation. +That being said, many people have managed to figure out the process. +
++Joining the appropriate mailing lists and asking questions (and searching +the archives) is a good way to get information. +
+ + + + diff --git a/docs/games.html b/docs/games.html new file mode 100644 index 00000000000..5ed799866c1 --- /dev/null +++ b/docs/games.html @@ -0,0 +1,62 @@ + + ++SGI open-sourced their OpenGL Sample Implementation (SI) in January, 2000. +This includes the GLU library. +
+ ++The SI GLU library implements GLU version 1.3 whereas the original +Mesa GLU library only implemented version 1.2. +We recommend using the SI GLU library instead of Mesa's GLU library +since it's more up-to-date, complete and reliable. +We're no longer developing the original Mesa GLU library. +
+ ++The new SI GLU library code is included in the Mesa package. +You don't have to download it separately. +
+ + ++Olivier Michel has made Linux RPMs of GLU for i386 and PowerPC. +You can download them from the +download area under Miscellaneous. +
+ ++Visit the +OpenGL Sample Implementation home page for more information about the SI. +
+ + + diff --git a/docs/helpwanted.html b/docs/helpwanted.html new file mode 100644 index 00000000000..b9434d0c034 --- /dev/null +++ b/docs/helpwanted.html @@ -0,0 +1,62 @@ + + ++We can always use more help with the Mesa project. Here are some +specific areas. If you think you can help out, post to the mesa3d-dev +mailing list. +
+ ++If you want to help with Mesa, first join the Mesa developer's +mailing list. Then post a message explaining what you might like +to help with. The Mesa web page has a list of a few work items +which you may consider. +
+ + +Anyone is welcome to contribute code to the Mesa project, provided you +agree to the copyright terms of the relevant code. See the COPYRIGHT +file. + + ++Unfortunately, all the easy work in Mesa was done years ago. Nowadays, the +work is rather complicated and not suited to beginners. +
+ ++If you're contribution code to the Mesa library itself: +
+
-Be warned, some of these files may be very out of date. -
--Doxygen is used to automatically -produce cross-referenced documentation from the Mesa sources. -This is not included in the normal Mesa distribution. -Download Mesa from CVS if interested. -
+ - - +