Die mtlView.c -Bibliothek enthält eine Sammlung von vordefinierten Postprocessing-Shadern. Die Postprocessing-Shader lassen sich im Shader Viewer untersuchen und bearbeiten. Sie können auch per bmap_process zum Bitmap-Verfremden benutzt werden. Um einen Postprocessing-Shader zu verwenden, definieren Sie eine View-Stage und weisen Sie dieser das Shader-Material zu. Es stehen die folgenden Postprocessing-Shader zur Verfügung:
Material / Effect
|
Shader | Adjustable Parameters | Remark |
---|---|---|---|
mtl_hdr A8.12 | HDR Effekt | Strength, Threshold, facExposure, timeExposure |
View-Größe wird automatisch an Engine-Fenster angepasst. A8.22 facExposure = 0 schaltet Belichtungsanpassung ab (schneller). |
mtl_blur | Blur filter | facBlur | |
mtl_bloomblur | Bloom blur | facBlur | |
mtl_gaussian | Gaussian blur | ||
mtl_dilate | Dilatation filter | ||
mtl_displace | Displacement filter | displacement | |
mtl_erode | Erosion filter | ||
mtl_kuwahara | Kuwahara filter | nPixels | |
mtl_median | Median filter | ||
mtl_sharpen | Sharpen | facSharpen | |
mtl_sharpen2 | Sharpen more | ||
mtl_bleach | Bleach | opacity | |
mtl_desaturate | Desaturate | desat | |
mtl_sepia | Sepia tone | desat, tone | |
mtl_monochrome | Monochrome | ||
mtl_negative | Negative | ||
mtl_colorshift | Colorshift | xShift, yShift, zShift | |
mtl_colorspin | Colorspin | ||
mtl_emboss | Emboss effect | ||
mtl_laplace | Laplace filter | ||
mtl_sobel | Sobel filter | ||
mtl_posterize | Posterize effect | nColors, gamma | |
mtl_lens | Lens effect | xPos, yPos | |
mtl_bias | Bias effect | bias, gradient | |
st_stencilblur.fx | Poisson Stencil Blur | Rufen Sie zum Aktivieren stencil_blur(1); auf. |
Um einen Postprocessing-Shader zu editieren und das Ergebnis in Echtzeit zu beobachten, kopieren Sie den pp_....fx-Shadercode aus dem code-Ordner in den Ordner projects\shadertest und bearbeiten Sie ihn mit SED. Ist derselbe Shader im Shader-Viewer ausgewählt, lassen sich die Ergebnisse sobald der Shadercoce gespeichert ist sofort beobachten. Um einen neuen Postprocessing-Shader hinzuzufügen, kopieren Sie mtlView.c in den Ordner projects\shadertest und fügen, ganz so wie bei den bereits definierten Shadern ein neues Material sowie einen neuen .fx-Effekt hinzu.
Die einstellbaren Parameter können mit skill1...skill4 des Materials manipuliert werden. Sie haben den Wertebereich floatv(0)...floatv(100).
In der Bibliothek mtlView.c stehen die folgenden Funktionen zur Verfügung:
#include <mtlView.c> ... function main() { pp_set(camera,mtl_blur); ... }