Clone of mesa.
Nevar pievienot vairāk kā 25 tēmas Tēmai ir jāsākas ar burtu vai ciparu, tā var saturēt domu zīmes ('-') un var būt līdz 35 simboliem gara.

RELNOTES-3.3 6.1KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219
  1. Mesa 3.3 release notes
  2. PLEASE READ!!!!
  3. Header file / GLenum changes
  4. ----------------------------
  5. The gl.h and glu.h headers now use #defines to define all GL_* tokens
  6. instead of C-language enums. This change improves Mesa/OpenGL
  7. interoperability.
  8. New API dispatch code
  9. ---------------------
  10. The core Mesa gl* functions are now implemented with a new dispatch
  11. (jump table) which will allow simultaneous direct/indirect rendering.
  12. The code is found in the glapi*.[ch] files.
  13. Of interest: the actual "glFooBar" functions are generated with
  14. templatized code defined in glapitemp.h and included by glapi.c
  15. The glapitemp.h template should be reusable for all sorts of OpenGL
  16. projects.
  17. New thread support
  18. ------------------
  19. Thread support in Mesa has been rewritten. The glthread.[ch] files
  20. replace mthreads.[ch]. Thread safety is always enabled (on platforms
  21. which support threads, that is). There is virtually no performance
  22. penalty for typical single-thread applications. See the glapi.c
  23. file for details.
  24. Make configuration changes
  25. --------------------------
  26. If you use the old-style (non GNU automake) method to build Mesa note
  27. that several of the configuration names have changed:
  28. Old name New name
  29. ------------- ----------------
  30. linux-elf linux
  31. linux linux-static
  32. linux-386-elf linux-386
  33. linux-386 linux-386-static
  34. etc.
  35. New extensions
  36. --------------
  37. GL_ARB_transpose_matrix
  38. Adds glLoadTransposeMatrixARB() and glMultTransposeMatrixARB()
  39. functions.
  40. GL_ARB_texture_cube_map
  41. For cube-based reflection mapping.
  42. GL_EXT_texture_add_env
  43. Adds GL_ADD texture environment mode.
  44. See http://www.berkelium.com/OpenGL/EXT/texture_env_add.txt
  45. GL_EXT_texture_lod_bias
  46. Allows mipmapped texture blurring and sharpening.
  47. GLX_EXT_visual_rating extension
  48. This extension has no effect in stand-alone Mesa (used for DRI).
  49. GL_HP_occlusion_test
  50. Used for bounding box occlusion testing (see demos/occlude.c).
  51. GL_SGIX_pixel_texture / GL_SGIS_pixel_texture
  52. Lets glDraw/CopyPixels draw a texture coordinate image.
  53. GL_SGI_color_matrix
  54. Adds a color matrix and another set of scale and bias parameters
  55. to the glDraw/CopyPixels paths.
  56. GL_SGI_color_table
  57. Adds additional color tables to the glDraw/Read/CopyPixels paths.
  58. GL_EXT_histogram
  59. Compute histograms for glDraw/Read/CopyPixels.
  60. GL_EXT_blend_func_separate
  61. This is the same as GL_INGR_blend_func_separate.
  62. Documentation for all these functions can be found at
  63. http://oss.sgi.com/projects/ogl-sample/registry/
  64. GLX_SGI_make_current_read functionality
  65. ---------------------------------------
  66. The functionality of this extension is needed for GLX 1.3 (and required
  67. for the Linux/OpenGL standards base).
  68. Implementing this function required a **DEVICE DRIVER CHANGE**.
  69. The old SetBuffer() function has been replaced by SetReadBuffer() and
  70. SetDrawBuffer(). All device drivers will have to be updated because
  71. of this change.
  72. The new function, glXMakeContextCurrent(), in GLX 1.3 now works in Mesa.
  73. The xdemos/wincopy.c program demonstrates it.
  74. Image-related code changes
  75. --------------------------
  76. The imaging path code used by glDrawPixels, glTexImage[123]D,
  77. glTexSubImage[123], etc has been rewritten. It's now faster,
  78. uses less memory and has several bug fixes. This work was
  79. actually started in Mesa 3.1 with the glTexImage paths but has now
  80. been carried over to glDrawPixels as well.
  81. Device driver interface changes
  82. -------------------------------
  83. Added new functions for hardware stencil buffer support:
  84. WriteStencilSpan
  85. ReadStencilSpan
  86. WriteStencilPixels
  87. ReadStencilPixels
  88. Removed old depth buffer functions:
  89. AllocDepthBuffer
  90. DepthTestSpan
  91. DepthTestPixels
  92. ReadDepthSpanFloat
  93. ReadDepthSpanInt
  94. Added new depth buffer functions:
  95. WriteDepthSpan
  96. ReadDepthSpan
  97. WriteDepthPixels
  98. ReadDepthPixels
  99. These functions always read/write 32-bit GLuints. This will allow
  100. drivers to have anywhere from 0 to 32-bit Z buffers without
  101. recompiling for 16 vs 32 bits as was previously needed.
  102. New texture image functions
  103. The entire interface for texture image specification has been updated.
  104. With the new functions, it's optional for Mesa to keep an internal copy
  105. of all textures. Texture download should be a lot faster when the extra
  106. copy isn't made.
  107. Misc changes
  108. TexEnv now takes a target argument
  109. Removed UseGlobalTexturePalette (use Enable function instead)
  110. Also added
  111. ReadPixels
  112. CopyPixels
  113. The SetBufffer function has been replaced by SetDrawBuffer and
  114. SetReadBuffer functions. This lets core Mesa independently
  115. specify which buffer is to be used for reading and which for
  116. drawing.
  117. The Clear function's mask parameter has changed. Instead of
  118. mask being the flags specified by the user to glClear, the
  119. mask is now a bitmask of the DD_*_BIT flags in dd.h. Now
  120. multiple color buffers can be specified for clearing (ala
  121. glDrawBuffers). The driver's Clear function must also
  122. check the glColorMask glIndexMask, and glStencilMask settings
  123. and do the right thing. See the X/Mesa, OS/Mesa, or FX/Mesa
  124. drivers for examples.
  125. The depth buffer changes shouldn't be hard to make for existing
  126. drivers. In fact, it should simply the code. Be careful with
  127. the depthBits value passed to gl_create_context(). 1 is a bad
  128. value! It should normally be 0, 16, 24, or 32.
  129. gl_create_framebuffer() takes new arguments which explicitly tell
  130. core Mesa which ancillary buffers (depth, stencil, accum, alpha)
  131. should be implemented in software. Mesa hardware drivers should
  132. carefully set these flags depending on which buffers are in the
  133. graphics card.
  134. Internal constants
  135. ------------------
  136. Point and line size range and granularity limits are now stored
  137. in the gl_constants struct, which is the Const member of GLcontext.
  138. The limits are initialized from values in config.h but may be
  139. overridden by device drivers to reflect the limits of that driver's
  140. hardware.
  141. Also added constants for NumAuxBuffers and SubPixelBits.
  142. ----------------------------------------------------------------------
  143. $Id: RELNOTES-3.3,v 1.6 2000/05/26 14:45:25 brianp Exp $