
Visually create, tweak and export dynamic shader effects directly to your Dark GDK games
DarkShader allows you to select a shader from a collection that are provided with the application, or one of your own, and to modify any variables it contains without having to open the shader's source code. The shader variables can be modified using sliders, color pickers, or text entry depending on the variable's type. Changes can then be exported along with any model and textures you have selected to be used in Dark GDK.

Object Library
Divided into model, shader, and texture libraries which allow you to quickly browse the items contained in the data folder that comes with DarkShader that you wish to use in your creations. You can also browse your computer for your own models, shaders, or textures you want to use. These are added to an object bar on the left of the interface that allows you easy access to the items you are currently working with.
Full Screen Shaders
Along with shaders to modify the look of models, DarkShader allows you to create shaders that affect the entire scene. Such effects might be to blur, sharpen, or add add bloom to the scene. You can also dramatically change how the application looks by, for example, removing everything except the edges between color changes.
Shaders that come with Dark Shader
| Blend | Blends two textures |
| Bloom | Brightens the whole scene |
| Blur | Blurs the whole scene |
| Cartoon | Cartoon full screen effect |
| Colour highlights | Fullscreen shader that lights only chosen colours |
| Colour Glass | Semi-transparent glass effect |
| Constant Lighting | Lighting effect |
| Depth | Colours object based on distance from camera |
| Depth of Field | Fullscreen depth of field effect |
| Detail Mapping | Adds a special detail map to a model |
| Distort | Distorts two texures on a model |
| Edge Detection | Pencil effect for the whole screen |
| Expand | Models vertices are expanded |
| Greyscale | Greys the whole scene |
| Halo | Gives a model a surrounding halo effect |
| Heat Haze | Great for simulating refracted air near a fire |
| Hemispherical Lighting | Applies light in a special way |
| Hue Sat Lighting | Affects the hue and saturation levels of the scene |
| Negative | inverts the scene |
| Normal Mapping | Makes models look more detailed via normal maps |
| Per Pixel Lighting | Creates per pixel specular lighting |
| Rainbow | Creates an effect like a heat detector camera |
| Reflection Mapping | Reflects the environment onto the model |
| Relief | Creates the illusion of depth in a surface |
| Scrolling Textures | Textures scroll over the models surface |
| Water Colours | Special water colour effect on the whole scene |
Source Editing
If you are familiar with HLSL (High Level Shader Language), or want to have a go, you can view and edit the source code to any effect in DarkShader using a syntax highlighted editor. This allows you to edit and compile the shader and to check for any errors that may exist in the code. Changes can be seen in the preview window when you compile the shader, if the shader you are editing is the one currently selected in the open project. Any errors will be highlighted in the editor and explained with a line of text in the preview window so that you can easily correct it.
Preview Window
Provides a real-time preview of the shader you are creating on the current model using the textures you have selected. This allows you to quickly see the effect of your changes and to see what the resulting shader will look like in Dark GDK. It also displays the effect of full screen shaders so you can see what the result of the combined model shader and full screen shader effects look like.
Customizable Interface
You can move and resize the preview window to get a position and size that suits you and the scene you are creating. It can be detached from the main interface and positioned independently or it can be made a separate tab to fill most of the space for maximum viewing size.
Lights
Some shaders make use of lights in their effect and require you to define the position, color, and range of such lights. DarkShader provides a window where you can specify these details for up to eight lights and an ambient light color. DarkShader includes some shaders that use lights to demonstrate how this works.
Project Files
You can save your current work in a project file that includes the model, shaders, and textures you have selected, along with any lights currently active and all the items from the object bar to easily share your creations with other users of DarkShader. Any custom media can also be bundled into the project file so that you do not have to worry about missing files.














