NVIDIA Open Sources Cg Compiler TechnologyJul 23, 2002, 20:30 (18 Talkback[s])
NVIDIA Corporation has announced that it is open sourcing the NVIDIA Cg Compiler technology under a nonrestrictive, free license. Available in August for download from the developer.nvidia.com and www.cgshaders.org Web sites, this code will contain the parser that reads the language and creates intermediate code for compilation, as well as a generic back-end. Together, these components provide everything required to create optimized Cg compilers for other platforms and architectures. In addition to the NVIDIA Cg Compiler, NVIDIA has provided full source code for example shaders in the NVIDIA Cg Toolkit.
"We've experienced enormous interest in Cg since its introduction," said Dan Vivoli, vice president of marketing at NVIDIA. "We're open sourcing this compiler code to further accelerate the transition to an era of advanced real-time effects through Cg."
"Petty licensing disputes have marred many attempts at industry wide cooperation," said John Carmack, co-founder, owner and lead programmer of id Software, Inc. "NVIDIA's decision to open source some of their development work with a very liberal license is a positive step that I hope other vendors will follow."
Emerging as the "C" for graphics, the Cg Language Specification provides developers a complete programming environment that is easy to use and allows for the fast creation of special effects and real-time cinematic quality experiences on multiple platforms. By providing a new level of abstraction, Cg removes the need for developers to program directly to the graphics hardware assembly language, and thereby more easily target OpenGL, DirectX 8.0 and DirectX 9.0.
The industry-standard Cg Language was developed in close collaboration with Microsoft Corporation and is compatible with Microsoft's recently announced High Level Shading Language for DirectX 9.0. Last month, NVIDIA announced the NVIDIA Cg Toolkit, comprised of the NVIDIA Cg Compiler 1.0, optimized for DirectX and OpenGL; the NVIDIA Cg Browser, a prototyping/visualization environment with a large library of Cg shaders; a CgFX file format; the Cg Standard Library; and a collection of pre-written Cg shaders which can be used for a variety of applications, ranging from game development to digital content creation and computer-aided design. The NVIDIA Cg Toolkit and other user documentation can be downloaded at http://developer.nvidia.com/cg.