Professional Documents
Culture Documents
Onfosid
Onfosid
.-. . .---.. .
( ) _|_ | \ /
`-.. . ._.-. .-. | |--- /
( )\ \ / (.-' (.-' | | / \
`-' `' `' `--' `--'`-'' ' '
Shader Suite
by CeeJay.dk
'--------------------------------------------------'
- Version 1.5.1
It runs on all Windows versions from Windows 2000 and up. Both 32bit and 64bit.
It works perfectly with all cards that can run DirectX9 games and support shader
model 3. (that's all cards since the Ati Radeon X1xxx and Nvidia Geforce 6xxx
series)
Some of the effects will even work on cards so old that they can only run shader
model 2. (Ati Radeon 9xxx to X8xx series and the GeForce FX 5xxx series)
- there is a compability setting that enables support for these really old cards in
/SweetFX/SweetFX_compatibility_settings.txt
Effects included:
* SMAA Anti-aliasing : Anti-aliases the image using the SMAA technique - see
http://www.iryoku.com/smaa/
* FXAA Anti-aliasing : Anti-aliases the image using the FXAA technique - currently
only work under DirectX9. Use the d3d9.dll found in \SweetFX\dlls\FXAA DX9 dll\ for
this.
* Explosion : Scatters the pixels similarly to the Explosion filter in Irfanview
* Cartoon : Creates an outline-effect that makes the image look more cartoonish.
* Advanced CRT : Mimics the look of an old arcade CRT display.
* LumaSharpen : Sharpens the image, making details easier to see
* Bloom : Makes strong lights bleed their light into their surroundings
* HDR : Mimics an HDR tonemapped look
* Levels : Sets a new black and white point. A fast and easy way to increase
contrast but it causes clipping. The Curves effect does this in a more subtle way
without causing clipping.
* Technicolor : Makes the image look like it was processed using a three-strip
Technicolor process - see http://en.wikipedia.org/wiki/Technicolor
* Cineon DPX : Makes the image look like it was converted from film to Cineon DPX.
Can be used to create a "sunny" look.
* Monochrome : Removes colors from the image so it appears as if shot on black and
white film.
* Lift Gamma Gain : Adjust brightness and color of shadows, midtones and highlights
(and typically does it better then the Tonemap effect)
* Tonemap : Adjust gamma, exposure, saturation, bleach and defog. (may cause
clipping)
* Vibrance : Intelligently saturates (or desaturates if you use negative values)
the pixels depending on their original saturation.
* Curves : Contrast adjustments using S-curves - without causing clipping.
* Sepia : Sepia tones the image - see
http://en.wikipedia.org/wiki/Sepia_tone#Sepia_toning
* Vignette : Darkens the edges of the image to make it look more like it was shot
with a camera lens. - see http://en.wikipedia.org/wiki/Vignetting )
* Dither : Applies dithering to simulate more colors than your monitor can display.
This lessens banding artifacts - see
http://en.wikipedia.org/wiki/Dithering#Digital_photography_and_image_processing )
* Border : Makes the screenedge black as a workaround for the bright edge that
forcing some AA modes sometimes causes.
* Splitscreen : Enables the before-and-after splitscreen comparison mode.
* Custom : A template to allow other to more easily program their own shader. Just
edit /SweetFX/Shaders/custom.h (some programming knowledge required)
You can find new releases of SweetFX in it's thread on the Guru3d forums :
http://forums.guru3d.com/showthread.php?t=381912
/*-----------------------------------------------------------.
/ Installation /
'-----------------------------------------------------------*/
1) Extract or copy all the files into the directory of a game exe (keeping the file
structure intact).
Some games require special attention - You can find a list of those and
instructions on how to get them working with SweetFX
in SweetFX/Game_Compability.txt
If you encounter a game not in the list that requires more effort to work with
SweetFX, post about it in the official thread
on Guru3d : http://forums.guru3d.com/showthread.php?t=381912
/*-----------------------------------------------------------.
/ Usage /
'-----------------------------------------------------------*/
It will automatically run when you start the DirectX 9, 10 or 11 game that you
added SweetFX to.
If you want to run different game with SweetFX then you need to install to that
games directory too.
If you can't figure out the right combination just from looking at your keyboard
and experimenting,
then read the documentation for your keyboard or just reconfigure the keys in
injector.ini
/*-----------------------------------------------------------.
/ Tweaking settings /
'-----------------------------------------------------------*/
You can choose which effects to enable, and set their parameters
in the SweetFX_settings.txt file - this can even be done *while* the game is
running.
And naturally you don't have to start the game before you edit your settings.
It can be done before the game runs as well.
If you find editing a text file tedious and would rather want a GUI then I know of
two third-party GUIs for SweetFX:
SweetFX Configurator (by Terrasque) : http://sweetfx.thelazy.net/
and FlightFX ( by Laser ) : http://riseofflight.com/forum/viewtopic.php?t=34103
/*-----------------------------------------------------------.
/ Presets /
'-----------------------------------------------------------*/
SweetFX has a preset feature. Presets are just settings files made for a specific
game, series of games or a special purpose.
Many (most) of these are made by the users of SweetFX.
You can find a lot of them in the SweetFX Settings Database (made by Terrasque who
also made the SweetFX configurator GUI)
http://sfx.thelazy.net/games/
They are a good start if you need help finding the settings that are just right for
you.
Fx. to use the awesome Torchlight2_TFL.txt preset by TFL that is intended to make
Torchlight 2 look,
darker, dirtier, grittier and all-around more "evil" simply change the #include
line to :
#include "SweetFX/Presets/Torchlight2_TFL.txt"
Note that although presets are often intended for a single specific game, they can
be used in any game you wish.
To make your own preset simply copy the SweetFX_settings.txt file, rename it
whatever you'd like, and point the #include line to its location
For example :
1) Make a copy
2) Rename it mycustom_preset.txt
3) Move it to the Presets folder (you don't HAVE to do this - this is just to keep
the files organized)
4) Change the #include line to :
#include "SweetFX/Presets/mycustom_preset.txt"
If you make a really good preset please share it with other users in the SweetFX
release thread at :
http://forums.guru3d.com/showthread.php?t=381912
Similar to the other presets try also to include some details about your preset
/*-----------------------------------------------------------.
/ Making your own shaders /
'-----------------------------------------------------------*/
I've included a few notes on how you can create your own shaders for SweetFX.
You can find the in the SweetFX subfolder.
Starting with SweetFX 1.5 I have made this even easier by making a blank template
effect called custom.h, that you can edit to create your own effect.
This way you don't have to worry about how to integrate your effect with SweetFX -
it already is.
/*-----------------------------------------------------------.
/ Problems? /
'-----------------------------------------------------------*/
When the mod starts it creates a log.log file next to it's own location.
Open the log with a text editor and see what the problem is.
If you have installed SweetFX correctly and have run the game with the log.log file
in the same folder
as the game .exe and the d3d9.dll and dxgi.dll files, then it should be overwritten
with debug information that might help you understand why it crashed.
If it hasn't then it contains a helpful guide writen by me - which means your game
likely crashed because SweetFX couldn't write to the log.log file.
If you moved the .dll's that came with SweetFX to another folder then check in
that folder for the correct log.log,
that the injector creates when it runs.
2) Find out if it's a problem with insufficient user permissions in the game
folder you installed SweetFX to.
To do that try running the game with administrator rights by right-clicking
it's exe and choosing "Run as administrator"
If that worked then you have found the problem.
To solve it, you can either keep running it as administrator everything, which
can be a little annoying in the long run.
You can also right click on the folder that contains this file and then choose
"Properties"
From there click "Security", then "Edit", then on your username, and then set
"Full Control" to "Allow"
This should also allow Modify, Execute, List, Read and Write - if it doesn't
then also set thoose to "Allow"
Now "OK" your way out of the dialogs.
Your user account now has full control for that folder and you don't have to
Run as administrator.
Alternatively you can create a new shortcut to the game and right click that
and choose "Properties"
Under "Shortcut" click Advanced and check "Run as administrator" and "OK" your
way out.
This shortcut will now always run as administrator and the administrator
account always has the necessary rights.
4) If the above doesn't work and you can't solve the problem yourself or google
your way to a solution then try to get support
online in either the SweetFX thread on Guru3d or your preferred forum.
Note that I prefer not to get support questions as PM's but I'd rather have
you post in the thread so others can help you too.
I'm not always in the thread but there is usually always other users.
If not then you can always use the included SMAA anti-aliasing.
Q: How do I make MSI Afterburner / EVGA Precision / Rivatuner OSD work with this
mod?
A: To make MSI Afterburner work with this mod and others like it you need to :
You can also change the setting for the Global profile,
but MSI does not recommend this because it might prevent some Direct3D applications
from starting.
The same (very similar) steps also work with EVGA Precision and Rivatuner OSD,
as all 3 tools are based on Rivatuner OSD.
[PROXY]
EnableProxyLibrary=true
InitProxyFunctions=true
ProxyLibrary=sweetfx_d3d9.dll
Q: How do I use SweetFX with games that use DirectX 7 or older or even Glide?
A: Again you need to find a wrapper that will translate the API that the game uses
to one that SweetFX supports.
I've seen fans run old Glide games with SweetFX so it's possible, but so far I
don't know any who have made DirectX 7 games work with SweetFX.
/*-----------------------------------------------------------.
/ Uninstallation /
'-----------------------------------------------------------*/
/*-----------------------------------------------------------.
/ Changelog /
'-----------------------------------------------------------*/
Version 1.5.1
LumaSharpen in 1.5 still had some experimental code activated when it should not
have. Fixed that.
Changed some code and settings to workaround a bug in SweetFX Configurator. The
configurator should now work fine with SweetFX 1.5.1
The Custom shader now have some more interesting example code that inverts the
luma of the image, and it now has an example setting.
Version 1.5
New compatiblity mode allows some effects to run on really old cards that does
not support Shader Model 3, but only 2.
New Levels shader to allow people to easily set a new black and white point.
New Explosion shader. Scatters the pixels similar to Irfanviews Explosion filter
New Custom shader - a blank template already integrated into SweetFX, to make it
even easier for people to write their own shaders
Created a new ordered dithering algoritm with much better quality than the old
one, while still being just as fast.
- It also affects the compressibility of the screenshots and videos less.
Improved the Cartoon shader. It should have better quality and be slightly faster
now.
Fixed problems with presets for older versions. SweetFX 1.5 should now be
compatible with presets from all previous versions ( 1.0 to 1.5 )
Included a log.log with the installation to hopefully prevent some of the issues
with create file permissions on Windows Vista and up.
This log also contains information to resolve the problem that arises if the
injector can't write to this log.
Version 1.4
Adds the Border shader as a workaround for the bright screenedge forcing
certain AA modes can cause
Adds the Cartoon shader that can make the image look more cartoonish
Adds the Advanced CRT shader that can mimic the look of an old arcade CRT
display
Adds the Monochrome shader that removes the colors
Adds the FXAA shader as an alternative to SMAA for the few people that still
prefer it. (only in DX9 for now though)
Improved the Curves shader so it can now apply contrast to Chroma as well as
Luma (as before) or both
Improved the performance of formula 5 in the Curves shader (the simplified
Catmull-rom spline)
Improved the Dither shader with the option to use Random Dithering.
Improved the Dither shader so now uses a subpixel dithering pattern. (Both when
using Random or Ordered Dithering)
Lowered the default SMAA threshold to 0.10 so fewer aliased lines escape
processing.
Fixed a bug where dark areas could on occasion appear when HDR and Lumasharpen
where both activated at the same time.
The alpha channel is now cleared before outputting the image to prevent it
messing with screenshots converted to png.
The SweetFX settings file now include a description field to help keep of which
version the settings are for.
Improved the Vignette shader to allow you to create oval shaped vignettes.
Curves_formula 2 is now the default Curves formula.
Includes some notes on how you can make custom shaders
Version 1.3
Adds the Lift Gamma Gain shader which lets users adjust brightness and color of
shadows, midtones and highlights.
Adds the Curves shader which uses S-curves to adjust the contrast of the image
Adds the Splitscreen shader which makes it easier to do comparison screenshots
and videos.
Reversed the DPX blend setting so smaller numbers now mean less effect and not
more (it's more logical this way)
Better default DPX settings
More conservative default Vibrance settings (down from 0.20 to 0.15)
All settings in the settings file now have ranges. (preparations for an
upcoming GUI)
Version 1.2
Fixes a rounding problem on AMD hardware with the dither shader.
Includes usermade presets - look in the SweetFX/Presets/ folder.
Updated and expanded documentation.
Minor speed improvements to most of the shaders. Hopefully it adds up.
Based on user feeedback default settings now use more conservative sharpening
Also default settings now enable conservative Vibrance settings
Slightly better default Sepia settings
Vignette now more uniformly darkens all the color channels of the screen edges
Adds the DPX shader - settings still need a lot of work though.
Version 1.1.1
Version 1.1
Version 1.0
/*-----------------------------------------------------------.
/ Credits /
'-----------------------------------------------------------*/
Uses the Bloom, HDR, Tonemap, Technicolor, Sepia and Vignette shaders from
FXAATool by Violator, [some dude], fpedace, BeetleatWar1977 and [DKT70]
- https://www.assembla.com/wiki/show/fxaa-pp-inject/
- All of these shaders have been modified by me (CeeJay.dk) .. some of them
extensively.
Cartoon by CeeJay.dk, but based on the Auto Toon cg shader found in the Dolphin
emulator.
- http://dolphin-emu.org/
Custom by You.
/*-----------------------------------------------------------.
/ Contact /
'-----------------------------------------------------------*/
Post comments, suggestions, support questions, screenshots, videos and presets to
the official SweetFX thread at:
http://forums.guru3d.com/showthread.php?t=381912
Or email your comments and thoughts (but please no support questions - keep those
to the Guru3D thread) to :
�CeeJay.dk� (at) �gmail.com�