The Result component defines the final appearance of the filter based upon the value of its Filter Type parameter and the components connected to its inputs. Here are the key facts about the Result component:
The Filter Type parameter of the Result component defines the filter type – Simple, Legacy Surface or PBR Surface.
The Result component has a separate set of inputs and a separate set of available render channels for each Filter Type – see the corresponding articles linked above.
When checked, enables buttons for creating four optional slave components – see the 'Slave Components' section below.
The slave components of the Result component output exact integer coordinates of a pixel that is currently being rendered, and the pixel dimensions (width and height) of the image that is currently being rendered. This allows you to create effects and textures that depend on pixel coordinates.
The basic idea behind slave components in general is that their output can change depending on what their master component is rendering at the moment. In the case of Result, their output changes based on the coordinates of the pixel or the dimensions of the image that is currently being rendered. For example, when the master component Result renders a pixel with coordinates 10, 20, it 'tells' its slave components Pixel X and Pixel Y to output an HDR color with the RGB values of 10,10,10 and 20, 20, 20 respectively. These coordinates change every time a new pixel goes into rendering.
Slave components of Result can be connected to any input of the Result component. Note: slave components of Result connected to the subtree of the Height input of the Result component when the Filter Type parameter is set to 'Surface' do not affect ambient occlusion.
Generally, there must be no bitmap-based components between the slave and the slave-accepting input because bitmap-based components (such as Blur or Motion Blur) kill the data sent to slaves by their master, and thus cannot be used in slave-to-master connections. However, in case of Result, they partially work, due to some particular implementation details of Filter Forge's rendering architecture. They will affect the output of a bitmap-based component, however any further components on the path between the output of that bitmap-based component and Result's input will not be affected by slaves because the bitmap-based component kills their data. It is not recommended to build filters that rely on this side effect, because it may disappear after future changes in the rendering architecture.
For all Filter Types, the following additional processing is performed. First, the rendered result is combined with the original image. After that, the RGB colors of all samples are clipped into the range of 0...1 when the Clip HDR Before Averaging option is turned on in the Anti-Aliasing menu.