boast full 3D graphics, even for games which are largely 2D in nature, such as Civilization III. However, purely 2D graphics have experienced a Renaissance with indie games. A well established personal computer platform is Microsoft Windows. Since it came pre-installed on almost ninety percent of PCs sold, it now has the largest user base. The two most popular 3D graphics APIs for Microsoft Windows are Direct3D and OpenGL. The benefits and weaknesses of each API are hotly debated among Windows game programmers. Currently, the most popular Computing platform is Google Android. Since it comes pre-installed on almost eighty percent of Smartphones sold, Android has the second largest user base, and increasing. Android uses OpenGL ES & Vulkan (API). DirectX is a collection of game APIs. Direct3D is DirectX's 3D API. Direct3D is freely available from Microsoft, as are the rest of the DirectX APIs. Microsoft developed DirectX for game programmers and continues to add features to the API. The DirectX specification is not controlled by an open arbitration committee and Microsoft is free to add, remove or change features. Direct3D is not portable; it is designed specifically for Microsoft Windows and no other platform (though a form of Direct3D is used on Microsoft's Xbox, Windows Phone 7.5 smartphones and mobile devices which run the Pocket PC operating system). OpenGL is a portable API specification. Code written with OpenGL is easily ported between platforms with a compatible implementation. For example, Quake II, which uses OpenGL, was ported from Windows to Linux by a fan of the game. OpenGL is a standard maintained by the OpenGL Architecture Review Board (ARB). The ARB meets periodically to update the standard by adding emerging support for features of the latest 3D hardware. Since it is standards based and has been around the longest, OpenGL is used by and taught in colleges and universities around the world. In addition, the development tools provided by the manufacturers of some video game consoles (such as the Nintendo GameCube, the Nintendo DS, and the PSP) use graphic APIs that resemble OpenGL. OpenGL often lags behind on feature updates due to the lack of a permanent development team and the requirement that implementations begin development after the standard has been published. Programmers who choose to use it can access some hardware's latest 3D features, but only through non-standardized extensions. The situation may change in the future as the OpenGL