Filter Forge renders images based on input images and XML documents called "filters". A filter (not to be confused with a mathematical filter) is essentially a tree of successive generations and/or transformations of color and position. Types of generations include single colors, polygons, gradients, Perlin noise, variations of Worley noise, and patterns commonly found in masonry. Types of transformations include rotation, scaling, refraction, noise distortion, kaleidoscope patterns, blurs, edge detection, blending, a variety of color space manipulations, and switches. As of version 4.0xx, the program also implements floating point processing, particle arrays, recursive loops, bézier curves, and built-in Lua scripting. Filter Forge also includes rendering options such as anti-aliasing, bump maps and normal maps, environment mapping, ambient occlusion, seamless tiling, and a text-based batch renderer. Users can randomize or control specific parameters of each filter through sliders, color pickers, and checkboxes. Sets of parameter values can be saved as presets.
While it is possible to edit filters with any text editor, Filter Forge includes a visual node-based filter editor. In the editor window, components are placed on a workspace and connected to one another like blocks in a flowchart. Similar editors exist in other computer graphics applications such as Genetica,[2] DarkTree,[3] and Substance Designer.[4]
Filter Forge hosts a web-based library of thousands of user-submitted filters that can be previewed and downloaded online or using the program's built-in browser. It maintains this model by offering a time-limited demo and rewards to authors of highly used library filters. Renders of library filters are available to anyone for free, but the program is needed to modify the filters and their parameters.[5]