Sh

From ShWiki

(Difference between revisions)
Revision as of 21:59, 9 November 2005
Francois (Talk | contribs)
Link to the 0.8.0rc0 release notes
← Previous diff
Revision as of 17:35, 16 February 2006
Francois (Talk | contribs)
Releases - Add 0.8.0rc1 release notes
Next diff →
Line 14: Line 14:
* [[0.8.0rc0 Release Notes|0.8.0rc0]] November 9th, 2005 * [[0.8.0rc0 Release Notes|0.8.0rc0]] November 9th, 2005
 +* [[0.8.0rc1 Release Notes|0.8.0rc1]] February 16th, 2006
==More information== ==More information==

Revision as of 17:35, 16 February 2006

Contents

One-sentence description

Sh lets you write programs that run on modern graphics cards using plain C++, with many novel features.

Slightly longer description

Sh looks like a portable C++ library for computer graphics, and can be used that way. However, it supports a special "retained" mode, which collects a sequence of Sh operations into a program (at run time), optimizes it and generates code for modern GPUs. This lets you write programs for graphics cards in C++ itself, rather than a separate language such as Cg or the OpenGL Shading Language. Using Sh is very natural and offers many advantages, and it presents many new features not found in other shading languages.

Where did Sh originate?

Sh started out as a research project at the University of Waterloo Computer Graphics Lab. The idea for Sh was conceived by Professor Michael McCool, who subsequently implemented several Sh prototypes with his graduate students, in particular Zheng Qin. By the year 2003 a working prototype of Sh was developed targeting the Sm GPU simulator. At this point it was decided to cleanly rewrite the language using the knowledge gained from prototyping, and to target real programmable floating-point GPUs (which were not available when the Sh project began). It is this rewrite that makes up the current implementation of Sh. Sh continues to be developed from within the University of Waterloo CGL, commercially through Serious Hack Inc. and over the Internet through contributions from volunteers thanks to the Open Source nature of the library.

Releases

More information

See the Frequently Asked Questions for more information about Sh.

There is also more information about the reasons why Sh works the way it does.