Working With Custom Shaders
Updated: 26 Jun 2026
Updated: 26 Jun 2026
This section explains how to use custom shaders to create your own effects. New for version 2026.2 is the ability to create you own Particle Affectors, Cloner Effectors and Deformers.
Custom Shader Effectors require the implementation of your own code to determine the behaviour of the Effector, and requires some knowledge of these systems to implement. Use of custom shaders is at your own risk. 10Bit does not provide support for custom shader code. If you experience an issue with a project/block you will need to demonstrate your issue without your custom shader in the nodegraph, to be able to receive support from the 10bit team. Support is only available for issues specifically related to the functionality of the Custom Shader Node, not for any custom code. External tools are available that can provide good assistance in writing these nodes when provided with the example script.
These nodes let you create your own custom effects using shader code. This is great way of expanding the capabilities of various systems in Notch, and with careful design and implementation can lead to endless possibilities of innovative and efficient looks. Notch shaders are written in HLSL and use the D3DX Effect framework.
Custom Cloner Effectors allow for the manipulation of position, rotation, scale and colours of clones, as well as the killing of clones. For an overview of cloner systems and how to use clone effectors within them, see Cloners.
Custom Particle Affectors allow for the manipulation of velocity, colour, normals, scale (via the normal buffer’s w component) of particles via your own code. For an overview of particle systems and how to use affectors within them, see Particles.
Custom Shader Deformers allow for the manipulation of each individual vertex’s position, motion, normal direction, colour and motion. For an overview of deformers, see Deformers.
Custom Shader Post-FX allow for the manipulation of each individual pixel in a texture. For more info on Post-FX, see Post-FX.
These nodes are all processed once per frame. By writing HLSL code, you can perform operations on that data and use it to update (effect) attributes of clones. You can also define your own variables that can be controlled from the Property Editor or via Modifiers, just like other parameters in Notch.
The simplest method to get working quickly is to have the node generate its example script for you. To do this:

Once you have created a script that you want to re-use in new projects, you can import the .fx file by clicking and dragging it from your file system into the resource browser in Notch. Alternatively, you can click on the import resource button in the Resource Browser. Your shader files can then be assigned to the node inside of the Property Editor.
As soon as you have assigned a shader file to the node, you will see it’s effect as soon as your press play.
To edit the shader file, you need to open it in an external editor. One way to quickly do this:

As you will be writing shader code in this file, it is very helpful to work in a text editor that can interpret shader code syntactically.
As you will be editing your script outside of Notch, you will need to ensure that the resource is reloaded after you make changes to the .fx file. You can do this manually at any time by right clicking on the resource in the Resource Browser and hitting “Reload Resource”. You can also set this to happen automatically whenever the resource is updated by choosing “Reflect Resource Changes” from the same right mouse button menu. With this option, the shader file will be updated in Notch whenever it is saved over in Windows.

Once you have gotten set up with the example script you are ready to start reading and customising it. Depending on the node that you are creating a shader for, the specific workings of the code will change. However, essentially in each example:
To get started with writing code for each of these nodes, refer to the pages for each specific node….