Vordefinierte Postprocessing-Shader

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:

stencil_blur (dist)

Aktiviert bzw. deaktiviert das Poisson-Blurring für Stencil-Schatten.

Parameters

dist - Blur-Distanz (0.1 .. 4), 1 für normales Blurring oder 0 zum Deaktivieren von geblurrten Stencil-Schatten.
 

pp_set (VIEW*, MATERIAL*)

Weist einem gegebenen View eine Postprocessing-Stufe zu. Unterstützt z.Zt. nur eine Postprocessing Stufe.

Parameters

VIEW* - View-Pointer.
MATERIAL* - Material-Pointer mit dem Postprocessing-Effekt.

Beispiel (lite-C):

#include <mtlView.c>
... 
function main()
{
   pp_set(camera,mtl_blur);
   ...
} 

Siehe auch:

entity.material, view.material, Objekt-Shader

► Aktuelle Version Online