home *** CD-ROM | disk | FTP | other *** search
/ Magazyn Amiga 5 / MA_Cover_5.iso / ppc / mesa / future < prev    next >
Encoding:
Text File  |  1998-01-31  |  1.8 KB  |  62 lines

  1.  
  2.  
  3. Future plans for Mesa.  Device driver maintainers take notice.
  4. Comments on this stuff are welcome.
  5.  
  6.  
  7.  
  8. 1. Change device driver interface's function which take separate arrays of
  9.    red, green, blue and alpha values to take array [n][4] of color components
  10.    instead.  For example:
  11.  
  12.    Currently:
  13.  
  14.    void (*WriteColorSpan)( GLcontext *ctx,
  15.                            GLuint n, GLint x, GLint y,
  16.                const GLubyte red[], const GLubyte green[],
  17.                const GLubyte blue[], const GLubyte alpha[],
  18.                const GLubyte mask[] );
  19.  
  20.    Future:
  21.  
  22.    void (*WriteColorSpan)( GLcontext *ctx,
  23.                            GLuint n, GLint x, GLint y,
  24.                const GLubyte rgba[][4],
  25.                const GLubyte mask[] );
  26.  
  27.    Reason:
  28.    We can directly send GL_UNSIGNED_BYTE, GL_RGBA glDrawPixels data to
  29.    the later function.  Also, the device driver functions may be able to poke
  30.    the 4-byte color directly to a 32-bpp frame buffer if the buffer's byte
  31.    ordering matches the RGBA order.  Otherwise, simple byte flipping within
  32.    the word may be needed.  We can possibly replace four 1-byte loads with
  33.    one 1-word store.  Maybe get better cache usage too.
  34.  
  35.    This will require changing all the device drivers, BTW.
  36.  
  37.  
  38. 2. The glaux/gltk Mesa demos will be retired in a future release.  The glaux
  39.    and gltk libraries are hacks.  GLUT should be used instead.  GLUT includes
  40.    many demos including GLUT versions of many of the glaux/gltk demos.  Also,
  41.    the OpenGL Programming Guide book now uses GLUT.
  42.  
  43.  
  44. 3. Put Mesa device driver files into separate directories, such as:
  45.     src/xmesa/
  46.     src/glx/
  47.     src/osmesa/
  48.     src/windows/
  49.     src/3dfx/
  50.     src/svga/
  51.     etc...
  52.  
  53.  
  54. 4. Move README's X11-specific info into a README.X11 file.
  55.  
  56.  
  57. 5. Optimize glDrawPixels, esp GL_UNSIGNED_BYTE GL_RGBA and
  58.    GL_COLOR_INDEX formats.
  59.  
  60.  
  61. 6. Pentium FP optimization (set FPU to lower precision where possible).
  62.