Shader Converter

[icon] Pixel Shader Converter

During early development of consumer 3D graphics adapters, before the emergence of higher level shader languages, many extensions to the popular APIs were introduced, which were a cause of incompatibilities.

After the invention of shaders, vertex shaders provided a fallback for legacy hardware (mostly in Direct3D, rarely in OpenGL), but pixer shaders were lacking this fallback functionality, leaving the developer in the wild with fixed-function pipeline.

This little program invents a way to remedy this problem to a certain level. It allows you to write a pixel shader in Direct3D 8's language in version 1.0 through 1.3. Then it converts your shader into TSS instructions for Direct3D or TexEnv setups for OpenGL.

Texture Stage States, a.k.a. TSS, are a Direct3D interface to pixel pipeline of pre-shader hardware. Respectively, texture environment cascade, a.k.a. TexEnv, is a similar API in OpenGL. Pixel Shader Converter provides a uniform way of programming pixel pipeline and allows you to run your pixel shaders on both Direct3D and OpenGL, even if the hardware does not support pixel shaders.

If you wish to compile this program, you will also need the WinAPI Wrapper Library.

Download Download Pixel Shader Converter (1.3MB)