17ec681f3SmrgProject History 27ec681f3Smrg=============== 37ec681f3Smrg 47ec681f3SmrgThe Mesa project was originally started by Brian Paul. Here's a short 57ec681f3Smrghistory of the project. 67ec681f3Smrg 77ec681f3SmrgAugust, 1993: I begin working on Mesa in my spare time. The project has 87ec681f3Smrgno name at that point. I was simply interested in writing a simple 3D 97ec681f3Smrggraphics library that used the then-new OpenGL API. I was partially 107ec681f3Smrginspired by the *VOGL* library which emulated a subset of IRIS GL. I had 117ec681f3Smrgbeen programming with IRIS GL since 1991. 127ec681f3Smrg 137ec681f3SmrgNovember 1994: I contact SGI to ask permission to distribute my 147ec681f3SmrgOpenGL-like graphics library on the internet. SGI was generally 157ec681f3Smrgreceptive to the idea and after negotiations with SGI's legal 167ec681f3Smrgdepartment, I get permission to release it. 177ec681f3Smrg 187ec681f3SmrgFebruary 1995: Mesa 1.0 is released on the internet. I expected that a 197ec681f3Smrgfew people would be interested in it, but not thousands. I was soon 207ec681f3Smrgreceiving patches, new features and thank-you notes on a daily basis. 217ec681f3SmrgThat encouraged me to continue working on Mesa. The name Mesa just 227ec681f3Smrgpopped into my head one day. SGI had asked me not to use the terms 237ec681f3Smrg*"Open"* or *"GL"* in the project name and I didn't want to make up a 247ec681f3Smrgnew acronym. Later, I heard of the Mesa programming language and the 257ec681f3SmrgMesa spreadsheet for NeXTStep. 267ec681f3Smrg 277ec681f3SmrgIn the early days, OpenGL wasn't available on too many systems. It even 287ec681f3Smrgtook a while for SGI to support it across their product line. Mesa 297ec681f3Smrgfilled a big hole during that time. For a lot of people, Mesa was their 307ec681f3Smrgfirst introduction to OpenGL. I think SGI recognized that Mesa actually 317ec681f3Smrghelped to promote the OpenGL API, so they didn't feel threatened by the 327ec681f3Smrgproject. 337ec681f3Smrg 347ec681f3Smrg1995-1996: I continue working on Mesa both during my spare time and 357ec681f3Smrgduring my work hours at the Space Science and Engineering Center at the 367ec681f3SmrgUniversity of Wisconsin in Madison. My supervisor, Bill Hibbard, lets me 377ec681f3Smrgdo this because Mesa is now being using for the 387ec681f3Smrg`Vis5D <https://www.ssec.wisc.edu/%7Ebillh/vis.html>`__ project. 397ec681f3Smrg 407ec681f3SmrgOctober 1996: Mesa 2.0 is released. It implements the OpenGL 1.1 417ec681f3Smrgspecification. 427ec681f3Smrg 437ec681f3SmrgMarch 1997: Mesa 2.2 is released. It supports the new 3dfx Voodoo 447ec681f3Smrggraphics card via the Glide library. It's the first really popular 457ec681f3Smrghardware OpenGL implementation for Linux. 467ec681f3Smrg 477ec681f3SmrgSeptember 1998: Mesa 3.0 is released. It's the first publicly-available 487ec681f3Smrgimplementation of the OpenGL 1.2 API. 497ec681f3Smrg 507ec681f3SmrgMarch 1999: I attend my first OpenGL ARB meeting. I contribute to the 517ec681f3Smrgdevelopment of several official OpenGL extensions over the years. 527ec681f3Smrg 537ec681f3SmrgSeptember 1999: I'm hired by Precision Insight, Inc. Mesa is a key 547ec681f3Smrgcomponent of 3D hardware acceleration in the new DRI project for 557ec681f3SmrgXFree86. Drivers for 3dfx, 3dLabs, Intel, Matrox and ATI hardware soon 567ec681f3Smrgfollow. 577ec681f3Smrg 587ec681f3SmrgOctober 2001: Mesa 4.0 is released. It implements the OpenGL 1.3 597ec681f3Smrgspecification. 607ec681f3Smrg 617ec681f3SmrgNovember 2001: I cofounded Tungsten Graphics, Inc. with Keith Whitwell, 627ec681f3SmrgJens Owen, David Dawes and Frank LaMonica. Tungsten Graphics was 637ec681f3Smrgacquired by VMware in December 2008. 647ec681f3Smrg 657ec681f3SmrgNovember 2002: Mesa 5.0 is released. It implements the OpenGL 1.4 667ec681f3Smrgspecification. 677ec681f3Smrg 687ec681f3SmrgJanuary 2003: Mesa 6.0 is released. It implements the OpenGL 1.5 697ec681f3Smrgspecification as well as the GL_ARB_vertex_program and 707ec681f3SmrgGL_ARB_fragment_program extensions. 717ec681f3Smrg 727ec681f3SmrgJune 2007: Mesa 7.0 is released, implementing the OpenGL 2.1 737ec681f3Smrgspecification and OpenGL Shading Language. 747ec681f3Smrg 757ec681f3Smrg2008: Keith Whitwell and other Tungsten Graphics employees develop 767ec681f3Smrg`Gallium <https://en.wikipedia.org/wiki/Gallium3D>`__ - a new GPU 777ec681f3Smrgabstraction layer. The latest Mesa drivers are based on Gallium and 787ec681f3Smrgother APIs such as OpenVG are implemented on top of Gallium. 797ec681f3Smrg 807ec681f3SmrgFebruary 2012: Mesa 8.0 is released, implementing the OpenGL 3.0 817ec681f3Smrgspecification and version 1.30 of the OpenGL Shading Language. 827ec681f3Smrg 837ec681f3SmrgJuly 2016: Mesa 12.0 is released, including OpenGL 4.3 support and 847ec681f3Smrginitial support for Vulkan for Intel GPUs. Plus, there's another Gallium 857ec681f3Smrgsoftware driver ("swr") based on LLVM and developed by Intel. 867ec681f3Smrg 877ec681f3SmrgOngoing: Mesa is the OpenGL implementation for devices designed by 887ec681f3SmrgIntel, AMD, NVIDIA, Qualcomm, Broadcom, Vivante, plus the VMware and 897ec681f3SmrgVirGL virtual GPUs. There's also several software-based renderers: 907ec681f3Smrgswrast (the legacy Mesa rasterizer), softpipe (a Gallium reference 917ec681f3Smrgdriver), llvmpipe (LLVM/JIT-based high-speed rasterizer) and swr 927ec681f3Smrg(another LLVM-based driver). 937ec681f3Smrg 947ec681f3SmrgWork continues on the drivers and core Mesa to implement newer versions 957ec681f3Smrgof the OpenGL, OpenGL ES and Vulkan specifications. 96