Mesa Wish List

This page is the list of projects and enhancements that people would like to see in the next development release of Mesa. An item being on this list does not guarantee its inclusion, nor does it necessarily mean that anyone is working on it.

Please add driver-specific items to a per-driver wish list wiki entry.

  • Continued enhancements to libGL and loader / driver interface.
    • Enhancements for PartiallyAliasedFunctions (see also bug #4681). Done.
    • Misc. clean ups in the loader / driver interfaces (see bug #5714).
    • Move vsync interfaces out into the loader, at least the parts that wait for events. This will e.g. allow AIGLX to suspend clients instead of blocking the X server.
    • Fix MSC interfaces to reference the drawable, so the corresponding head can be determined in multihead environments.
    • Support for pbuffers within the loader / driver interface. Even if a DRI driver does not support any pbuffer capable fbconfigs, this will allow us to advertise GLX 1.4. That is a good thing. * Entries in __DRIdrawableRec for GetDrawableAttributes and ChangeDrawableAttribute. * Modify libGL to handle pbuffers correctly for direct rendering contexts. It currently treats all pbuffer commands as indirect rendering.
    • Run-time dispatch function generation. See the thread Dispatch generation for x86-64. * Support for "secure" dispatch generation. * Dispatch generation for x86-64 (see bug #3379).
    • Provide generic optimization for indirect rendering of CompiledVertexArray.
  • Shading Language / Programmable Pipeline Enhancements
    • Migrate the "assembly" programming interface to use the Yacc based front-end developed by IanRomanick for the PSU vertex program compiler project. The advantage of this front-end is that it supports a lot more of the assembly programming extensions than the existing front-end.
    • Migrate the "assembly" programming interface to use the back-end used by the GLSL compiler. This implies that the existing drivers that support the assembly interfaces will also need to migrate to that interface. The good news is that those drivers will, with fallbacks, automatically get support for GLSL.
    • Implement a GLSL back-end for x86-64.
    • Implement a GLSL back-end for PowerPC.
  • Add missing functionality from GL 2.0. I believe that all the functionality is supported. It seems that we're just missing the updated interfaces (e.g., the GLSL interfaces changed from the ARB extension to core GL 2.0) to this functionality.
    • GLSL (already supported?)
    • MRT (supported)
    • Non-power-of-two textures (supported)
    • Point sprites (supported)
    • Two-sided stencil (supported with old interface)
  • Add missing functionality from GL 2.1.
    • GLSL changes.
    • Non-square matrices (e.g., glUniformMatrix2x3).
    • Pixel-buffer objects (already supported?).
    • sRGB textures.