dotnet add package MerjTek.MonoGame.PostProcessing.DirectX --version 1.0.1
NuGet\Install-Package MerjTek.MonoGame.PostProcessing.DirectX -Version 1.0.1
<PackageReference Include="MerjTek.MonoGame.PostProcessing.DirectX" Version="1.0.1" />
paket add MerjTek.MonoGame.PostProcessing.DirectX --version 1.0.1
#r "nuget: MerjTek.MonoGame.PostProcessing.DirectX, 1.0.1"
// Install MerjTek.MonoGame.PostProcessing.DirectX as a Cake Addin #addin nuget:?package=MerjTek.MonoGame.PostProcessing.DirectX&version=1.0.1 // Install MerjTek.MonoGame.PostProcessing.DirectX as a Cake Tool #tool nuget:?package=MerjTek.MonoGame.PostProcessing.DirectX&version=1.0.1
MerjTek.MonoGame.PostProcessing is a screen post processing library that works on Windows with DirectX and OpenGL.
... // Add a reference to the namespace using MerjTek.MonoGame.PostProcessing; ... ... // In Initialize or LoadContent // Create a post processing manager _postProcessingManager = new PostProcessingManager(device); // Create a HashSet for different post processors // You can create more than 1 if desired _postProcesses = new HashSet<PostProcessBase>(); ... ... // In Draw _postProcessingManager.CaptureScreen(); // Add drawing code here... _postProcessingManager.UncaptureAndExecute(_postProcesses); ...
You must use the HiDef profile. The shaders won't work with the Reach profile
_graphics = new GraphicsDeviceManager(this); _graphics.GraphicsProfile = GraphicsProfile.HiDef;
- The Solution uses Visual Studio 2022
- The nuget for DirectX after building contains a dependency on Monogame.Framework.DesktopGL. I have to use the .nupkg editing tool to correct the dependency to Monogame.Framework.DirectX.
Future Post Processor Ideas (Not in any order)
- Fog (3D)
- Depth of Field (3D)
- Poisson Disc Blur
- Motion Blur
- Lens Flare
- Color Correction and Clamping
- Tone Mapping
- Ambient Occlusion
- Crepuscular (God) Rays
- Heat Haze
- MLAA (Morphological Anti-Aliasing)
- SMAA (Subpixel Morphological Anti-Aliasing)
- Gamma Correction
- Color Grading (multiple shaders?)
- Feel free to suggest others
The MerjTek.MonoGame.PostProcessing project is under the MIT License.
|Product||Versions Compatible and additional computed target framework versions.|
|.NET||net6.0 is compatible. net6.0-android was computed. net6.0-ios was computed. net6.0-maccatalyst was computed. net6.0-macos was computed. net6.0-tvos was computed. net6.0-windows was computed. net7.0 was computed. net7.0-android was computed. net7.0-ios was computed. net7.0-maccatalyst was computed. net7.0-macos was computed. net7.0-tvos was computed. net7.0-windows was computed.|
- MonoGame.Framework.WindowsDX (>= 18.104.22.1683)
This package is not used by any NuGet packages.
This package is not used by any popular GitHub repositories.
1.0.0 - First Release