Nvidia's Dave Kirk Explains The Point of Cg
An anonymous roward writes "This interview at ZDNet UK has Dave Kirk talking about how Nvidia's Cg programming language will bring movie-making and game-writing together. 'This is a big step towards convergence -- not films and movies and games being the same, but the way people create them being the same. Artists can use the same skills on both. Cg is almost guaranteed to be efficient in hardware, and any Renderman program can be translated to Cg, by hand or by a tool that someone's developing. Once that happens, all the moviemaking can take place in Cg.'"
On the desktop/video game side, it doesn't seem like it has a great chance to survive. OpenGL2.0 is a much more general language. With Doom3 having an OpenGL2.0 rendering pipeline, it makes Cg a little less ubiqutous as well. There will be tons of games that will be built on top of the Doom3 engine just like there was on top of the Quake engines.
Cg also needs the other IHVs, such as ATI, Matrox and 3DLabs, to write back ends for the Cg compiler. That's probably not gonna happen.
ATI is behind in nVidia in driver development and it doesn't look like they have the manpower to devote to a Cg back end. Plus there are rumours that they are following nVidia and moving to a United Driver Architecture. (Hopefully this means good Linux drivers from ATI). I don't see ATI having the manpower to undertake both projects.
3DLabs is pretty devoted to OpenGL2.0. They need this to survive as a company. Their cards are used quite often on *nix workstations. They can't afford to have OpenGL die.
And Matrox...who really cares about Matrox. They haven't done sh1t in a while. Sure they had the dual head cards, but now you can get dual head cards from other IHVs. And they still haven't put out a card with a programable pipeline.
So, all I can see for Cg at the is that it will replace NVParse. It is kinda nice to write one shader and then translate it to D3D and OpenGL. Cg is a good short term fix, but not a good long term vision. OpenGL1.0 was forward thinking and it turned out to be a good, stable API for 10 years, unlike some other APIs, *cough*D3D*cough*. Hopefully, OpenGL2.0 will have the same staying power.