This thread is a catch-all discussion for anything related to the Oblivion Graphics Extender (OBGE/OBGEv2/OBGEv3).
Previous Threads: 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, http://www.gamesas.com/index.php?/topic/1205214-wiprel-oblivion-graphics-extender/
http://obge.paradice-insight.us/wiki/History_%26_Introduction
Timeslip's Oblivion Graphics Extender
The Oblivion Graphics Extender is an OBSE plugin created by Timeslip that adds extra functionality to Oblivion's scripting language, focussed on the implementation and manipulation of graphics effects. It adds support for fullscreen shaders and extra HUD elements, provides information about graphics memory and screen resolution and allows you to clear some of oblivions textures from graphics memory.
Without Timeslip's original version Scanti probably wouldn't of known where to start in writing this project, so kudos to him. You can find Timeslip's Oblivion Graphics Extender here.
A number of mods take advantage of OBGE for their effects. These include:
http://www.tesnexus.com/downloads/file.php?id=16323
http://www.tesnexus.com/downloads/file.php?id=21424
http://www.tesnexus.com/downloads/file.php?id=30973
The Oblivion Visual Effects Project
This was a project started by IlmrynAkios that was dedicated to making Oblivion look better using various filters and low-level DirectX tricks, utilising OBGE for its effects. It spurred the discussion on the improvement of various areas of Oblivion's graphics, leading to a few released mods and some affiliated mods, proposed as part of the project but developed separately, being released. These are:
http://www.tesnexus.com/downloads/file.php?id=14339
http://www.tesnexus.com/downloads/file.php?id=15245
http://www.tesnexus.com/downloads/file.php?id=15566
The project is currently on haitus as various difficulties in its progression occurred, and IlmrynAkios found that his time available for work on it was becoming very limited.
Oblivion Graphics Extender v2
A continuation of both Timeslip's work on expanding the functionality to Oblivion's scripting language regarding the implementation and manipulation of graphics effects and OVEP's work in making Oblivion looking better using a variety of graphical effects, OBGEv2 is both the name of Scanti's rewrite of the OBGE OBSE plugin and the accompanying project that is focussed on the creation of various post-processing effects to improve Oblivion's graphics.
Scanti's rewrite of OBGE is centered around the exposure of more information about Oblivion's graphical processes and the fixing of bugs present in the original. The original OBGE should not be used alongside OBGEv2, which should be backwards-compatible with OBGE mods.
Oblivion Graphics Extender v3
Continuing with Scanti's work, Ethatron greatly enhanced OBGEv2's capabilities, forming OBGEv3. Among his achievments are the translation of all Oblivion's vanilla shaders and allowing them to be replaced, removing many of the limitations that OBGEv2 had.
The modders that make up this project work hard to bring you the effects they create, so please respect them for taking the time to do so. If you would like to contribute, please feel free to participate in the sharing of knowledge and ideas to help us strive to complete our goal. If you are able to find useful resources that can benefit the project, please feel free to share them as well. This project is in a Beta Phase and will probably be in that state forever as add new things are added to it. Expect bugs when using newly created shaders, or when using/tweaking the shaders on your own.
Due to the Work In Progress nature of OBGEv3, few mods have been made to use it, but these include:
http://www.tesnexus.com/downloads/file.php?id=18385
http://www.tesnexus.com/downloads/file.php?id=27972
In addition, all OBGE and OBGEv2 mods may be used with OBGEv3 instead of OBGE/OBGEv2.
*Attention*
If you are having any problems, please read the OP and the FAQ very carefully before posting. If your question is not answered, then report the bug as detailed in the 'How To Report Bugs Helpfully' section below.
Downloads & Links
Pre-requisites:
http://obse.silverlock.org/ - v0020 or greater is required.
http://www.microsoft.com/downloads/details.aspx?displaylang=en&FamilyID=2da43d38-db71-4c1b-bc6a-9b6652cd92a3
http://obge.paradice-insight.us/wiki/Main_Page
http://www.tesnexus.com/downloads/file.php?id=30054
http://www.tesnexus.com/downloads/file.php?id=37825
http://www.gamesas.com/index.php?/topic/1206450-obge-liquid-water/page__gopid__18025909#entry18025909
http://github.com/scanti/Oblivion-Graphics-Extender-v2
http://codaset.com/ethatron/oblivion-graphics-extender/
http://codaset.com/ethatron/oblivion-shader-db/
The OBGE project currently has the following available for download, all from the TES Nexus pages linked above:
OBGEv3 Core: This is the basic package you need to use anything that requires OBGEv3.
OBGEv3 Developers: This is a package for shader developers that includes an application that lets you develop shaders while Oblivion is running, among other things.
OBGEv3 Standalone Effects: This package contains all of OBGEv3's standalone effect shaders, which are listed below.
OBGEv3 Physically Correct Sky: This package contains a replacement sky for Oblivion, which is based on Earth's sky, reducing curvature, etc. This is very much a WIP package.
OBGEv3 Parallax Occlusion Mapping: This package contains parallax occlusion mapping support for Oblivion. This is very much a WIP package.
OBGE Liquid Water: A replacement water system, greatly enhancing the graphical quality of Oblivion's water.
Screenshots/Videos
See the Nexus page for screenshots and videos of the effects currently available. The effects seen in some of these screenshots/videos may have been obtained by tweaking the variables in the shaders involved.
OBGEv3 Standalone Effects
Below is a list of all the standalone effect shaders available from the OBGEv3 project on TES Nexus. The list does not include any standalone effects that may have been added since this readme was updated, or any standalone effects that are only available for download from the project's forum thread. Version numbers are taken from the version numbers within each shader file, and are not indicative of relative quality.
Lighting Effects
Godrays (v4.2) - Godrays.fx
By vtastek. Adds shafts of light emanating from the sun. The effect is only seen at certain times of the day. This is a SM3 shader.
Screen Space Indirect Illumination (SSII) - SSII.fx
By tomerk. Provides a form of Global Illumination that adds indirect lighting to the scene, simulating the reflection of light off coloured objects. This is a SM3 shader.
Volumetric Screen Space Indirect Illumination - Volumetric_SSII.fx
By tomerk and Ethatron. Provides a form of Global Illumination that adds indirect lighting to the scene, simulating the reflection of light off coloured objects. This is a SM3 shader.
Volumetric Screen Space Global Illumination - Volumetric_SSGI.fx
By tomerk and Ethatron. Provides a form of Global Illumination that adds indirect lighting to the scene, simulating the reflection of light off coloured objects. A merge of Volumetric SSAO & Volumetric SSII. This is a SM3 shader.
Ambient Occlusion (AO) Effects
These shaders use stylised lighting to add depth and contrast to the scene, mainly by shadowing recesses. Two types of AO shader are available: Horizon-Based AO (HBAO) and Screen Space AO (SSAO). These are all SM3 shaders.
Screen Space Ambient Occlusion - ssao_test.fx
By HawkleyFox. Provides a medium quality AO effect, but has a large performance hit.
Performance Screen Space Ambient Occlusion - ssao_perf.fx
By HawkleyFox. Provides a medium-low quality AO effect, with a medium performance hit.
Ring Screen Space Ambient Occlusion - Ring_SSAO.fx
By tomerk and Ethatron. Provides a light, medium quality AO effect with a low performance hit.
Horizon-Based Ambient Occlusion - HBAO.fx
By tomerk and Ethatron. Provides the highest quality AO effect, but has a very large performance hit.
Volumetric Screen Space Ambient Occlusion - Volumetric_SSAO.fx
By tomerk and Ethatron. Provides a high quality, accurate AO effect with a low performance hit.
Depth of Field Effects
These shaders optionally give a Depth of Field effect, progressively blurring objects with increasing distance from the focus point (what the crosshairs point at), or a Distance Blur effect, progressively blurring objects with increasing distance from the player.
Crysis Depth Of Field (v1) - CrysisDoF.fx
Conversion by WrinklyNinja. An adaptation for Oblivion of the Depth Of Field effect found in Crysis: Warhead. This is a SM3 shader.
Depth of Field (v7) - DepthOfField.fx
By WrinklyNinja. Inspired by an ATI paper on DoF, with depth-based directional blurring.
Hexagonal Bokeh Depth of Field - Bokeh_Hexagon_DoF.fx
By tomerk. A bokeh effect with a hexagonal blur shape and no distance blurring option. Vey high quality, but the largest performance hit. This is a SM3 shader.
Circular Bokeh Depth of Field - Bokeh_Circle_DoF.fx
By tomerk. A bokeh effect with a hexagonal blur shape and no distance blurring option. Vey high quality, but the largest performance hit. This is a SM3 shader.
Pseudo-Bokeh Depth of Field - Pseudo_Bokeh_DoF.fx
Conversion by tomerk. Originally a shader for MGE by Knu, ported and tweaked for OBGEv2. This is a SM3 shader.
Colour Effects
Bleach Bypass - HLSLbleachbypass.fx
By vtastek. Creates an effect with decreased saturation with increased contrast.
Color Grading - HLSLColorGrading03.fx
By vtastek. Applies a subtle desaturation of average colour balance to the scene. This is a SM3 shader.
Color Effects (v5) - ColorEffects.fx
By WrinklyNinja. Adds a variety of photoshop-like colour effects, including luminosity-dependent film grain, sepia, saturation/contrast/brightness alteration, gamma contrast/brightness alteration, colour inversion and blur highlighting. This is a SM3 shader.
Crysis Color Mood (v0.2) - ColorMood.fx
By shadeMe. Tints the screen to alter the mood of the game, as seen in Crysis.
ENB Color Effect (v2) - ENBColorEffect.fx
Conversion by WrinklyNinja. Originally a shader supplied with ENB Series for Oblivion, and adapted and optimised for OBGEv2, this alters the colour balance of the scene.
Filter Effects
Normal Filter Anti-Aliasing - NormalFilterAA.fx
By Dracusis. Adds an AA effect to reduce 'jaggies' on the edges of objects. This is a SM3 shader.
Morphological Line-Antialiasing - MLAA.fx
By kapaer. Adds an AA effect to reduce 'jaggies' on the edges of objects. This is a SM3 shader.
Directional Localized-Antialiasing - DLAA.fx
By Ethatron. Adds an AA effect to reduce 'jaggies' on the edges of objects. This is a two-pass SM3 shader.
Morphological Directional Localized-Antialiasing - MDLAA.fx
By Ethatron. A fusion of MLAA and DLAA, awesome. Optimized for speed. MLAA for foilage and hard breaks in depth, DLAA for smoothing out steep jaggies. This is a SM3 shader.
FX-Antialiasing - FXAA.fx
By Ethatron. Adds an AA effect to reduce 'jaggies' on the edges of objects. This is a one-pass SM3 shader. Based on version 2, max. quality.
Other Effects
CelShader+EdgeAA (v0.3) - CelShader+EdgeAA.fx
By shadeMe. Adds a cartoon-like black edge to objects, as seen in Borderlands, or smooths the edges of objects. This is a SM3 shader.
Sharpen - obsharpen.fx
By vtastek. Sharpens the screen.
Vignetting - HLSLvignette.fx
By vtastek. Applies a vignetting lens effect, desaturating and darkening the corners of the screen.
http://obge.paradice-insight.us/wiki/Settings_recommended_by_users
Settings by various users for various shaders can be seen on the OBGE Wiki by clicking the subtitle above. While the settings are arranged by the shader they apply to, users often propose settings across several shaders that are intended to be used together to give the desired effect.
http://obge.paradice-insight.us/wiki/User%27s_Manual#How_To_Report_Bugs_Helpfully
Read the OP and the readme fully, especially the FAQs. If your problem is not answered there, do the following:
Supply the following:
- Your Operating System.
- Your graphics card.
- Your OBGEv2.txt. This log is in your Oblivion directory.
- Your OBSE.txt. This log is in your Oblivion directory.
- Your shaderlist.txt.
The above documents should be posted exactly how they appear in the file, in spoiler tags.
In addition, if what you are experiencing is a graphical bug of some kind, you should supply screenshots. It has been noted that Oblivion's screenshot function may not work with OBGEv3 installed, so in that case use FRAPS or some other 3rd party screenshot tool. You can convert the image from .bmp to .jpg in Wrye Bash. Upload the screenshot and post a link to it, so we can see what your problem actually looks like.
If your bug is with a shader effect, and you have altered any variables within the shader, also post the lines on which you changed anything, exactly how they are in the shader, in codebox tags.
We can't really help all that well without the above information, as especially with graphical errors, it can hard to describe them in writing in a way that we will be able to understand what's going on.
http://obge.paradice-insight.us/wiki/User%27s_FAQs
Q: Is this a RELz? Should I download this?
A: This is a Beta (and hopefully stable) release. It will always be a work in progress and could contain bugs from time to time. If the thought of this scares you then this probably isn't the mod for you.
All shaders are supplied with no documentation of any sort besides what is on the Bethesda Oblivion forum thread or in the shader file itself. Hence there is an element of DIY involved in using the products of this project, especially when it comes to tweaking the settings of the shaders. Within each shader effects file there may or may not be a section at the beginning of the file detailing any variables that you can change, and what they do. You are advised to check there before posting if you wish to tweak any shaders.
Q: Does this require OBSE? If so, any specific version?
A: Yes, it does require OBSE, and you must use at least v0020, however you are advised to use the latest version available.
Q: Does OBGEv2 require any specific hardware to run?
A: The shaders are compatible with both ATI and NVIDIA graphics cards, although some shaders (marked with "SM3" above) require a Shader Model 3 compliant graphics card to run. Any NVIDIA graphics card that is GeForce 6 Series (released 2004) or newer supports Shader Model 3.0. Any ATI graphics card that is Radeon X1000 Series (released 2005) or newer supports Shader Model 3.0.
Q: How do I get involved with this project?
A: There are a few ways that you can get involved:
If you can write shader code, then you can get stuck in making your own effects right away. The shaders can be written in either HLSL or ASM.
If you can write in C/C++, then perhaps you would be able to help Scanti, shadeMe and Ethatron in their work on the OBSE plugin. The project has a source respository so you can fairly easily create a fork and add your own changes, and a wiki that you can contribute to.
It would also be beneficial if you know anything about low-level DirectX and the OBSE plugin system.
If you can't do either of these things, you can still contribute support, articles and papers on graphical effects that could be implemented in Oblivion, and whatever else you can bring to the project. Especially cake or ice cream.
Q: I found a bug...
A: Good for you. If you find a bug, please report it as detailed in the 'How To Report Bugs Helpfully' section above. We can help you more when you explain the problem better.
Q: I cannot see an effect I have installed, and my OBGEv2 log has the line "Failed to load" after the line "Loading shader ()". How do I fix this?
A: This results from OBGEv3's inability to compile the shader effects you are trying to load. Make sure that you have the DirectX update linked to above installed, and if using a shaderlist, that you have spelled the names of the shaders in your shaderlist.txt exactly as they should be, with the .fx extension. In the case of some effects, you must also have a graphics card that is Shader Model 3 compliant.
Q: ScreenEffects/Realistic Health/OVEP Motion Blur/OVEP Forward Motion Blur or setting bUseLegacyCompiler to 1 causes OBGEv3 to crash. How do I fix this?
A: If your shader uses the half variable type then OBGEv3 will try to use the legacy compiler. If you are missing the d3dx9_31.dll file then OBGEv3 will crash. You will need to copy over the d3dx9_31.dll from the Extras folder into your Oblivion game folder to fix the problem.
Q: The ordering of the objects on the screen is messed up or the game menu has no buttons! Why is this happening?
Q: Once I got the effects to work, my AA disappeared? WHY?!?
A: The method used to expose the information used to read the depth buffer is incompatible with Anti-Aliasing. This is reported to be the case on both ATI and NVIDIA graphics cards, although owners of ATI graphics cards can force AA through ATI Tray Tools without problems. The only solution is to edit the OBGE.ini file in your My Documents\My Games\Oblivion folder and change this line:
[DepthBuffer]
bUseDepthBuffer=1
to:
[DepthBuffer]
bUseDepthBuffer=0
This will however cause any effect that uses the depth buffer to stop working properly. This currently includes all the SSAO and Depth of Field shaders and the Godrays, NormalFilterAA and CelShader+EdgeAA shaders.
Q: A shader is listed saying it has multiple effects. What does that mean?
A: If a shader has multiple effects, it means that it rolls many effects into one file, and gives you the ability to choose which of these effects, or combinations of these effects, are applied to your game. This has the advantage that you can cut down on the number of shader files you have to keep track of. You will generally be able to make these selections by changing variables in the shader.
Q: How do I change/tweak shader settings/variables?
A: Open up the shader .fx file in a text editor such as Notepad. The variables are found at the beginning of the file, and may be labelled as tweakable and/or commented with information regarding them.
Alternatively, you can alter most shaders' variables in-game using the Support Plugin, though these changes are not recorded in the shader file.
Q: Where is the src folder with the source code?
A: The source is not included in the package. Instead, it is available on a source code repository. That means you will always have access to the latest version of the code and people can contribute their own code to the project.