This thread is a catch-all discussion for anything related to the Oblivion Graphics Extender (OBGE).
http://www.gamesas.com/bgsforums/index.php?showtopic=1072753
http://www.gamesas.com/bgsforums/index.php?showtopic=1074452)
What is it?
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.
You can get OBGE http://timeslip.chorrol.com/obge.html. The original was found to sometimes cause a crash on transition, and an attempt to fix this was made, in the form of a debugged version, found http://www.tesnexus.com/downloads/file.php?id=25912.
What uses it?
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=27972
http://www.tesnexus.com/downloads/file.php?id=18385
Oblivion Visual Effects Project (OVEP)
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 (The Reboot)
What is it?
Sharing the same name as the plugin that first let modders change the game's graphical effects, OGE is a continuation of the effort started by OVEP to improve Oblivion's graphics. It is centred around Scanti's work on exposing more information about Oblivion's graphical processes, and the use of this information to create post-processing effects.
Scanti has recently begun work on rewriting OBGE to incorporate the new information exposed, and fixing bugs in the original. This rewrite is entitled OBGEv2, and that is what this project is based on, and what is available for download below. The original OBGE should not be used alongside OBGEv2, which is backwards-compatible with OBGE mods.
While it is still in its EARLY stages, the dedicated modders that make up this project are working hard to bring a new age to Oblivion. 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.
Please respect the hard working people that take their time to bring this project together. This project is in a Beta Phase, and will probably remain in that state as Scanti continues to add new things to his plugin. Expect bugs when using newly created shaders, or when using/tweaking the shaders on your own.
*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
OBSE Plugin and Shader Pack:
http://www.tesnexus.com/downloads/file.php?id=30054
http://github.com/scanti/Oblivion-Graphics-Extender-v2
http://www.microsoft.com/downloads/details.aspx?familyid=0CEF8180-E94A-4F56-B157-5AB8109CB4F5&displaylang=en
Shaders:
Most of the project's shaders are now included in Scanti's OBGEv2 package linked to above. These include:
CelShader+EdgeAA Shader
Includes Cel Shading and Edge Anti-Aliasing effects.
Color Effects Shader v2
Includes Luminosity-Dependent Film Grain, Sepia, Saturation/Contrast/Brightness Alteration, Non-Linear Contrast Alteration, Colour Inversion and Blur Highlighting effects.
Crysis Color Mood Shader
Depth of Field Shader v4
Includes Depth of Field and Distance Blur effects.
Sharpening Shader
Screen Space Ambient Occlusion (SSAO) Shader v2
Godrays Shader v3
Also available for download separately are the following updated and/or new shaders:
http://www.4shared.com/file/224902826/1439a4b4/ssao_perf.html
http://www.4shared.com/file/225791759/4343cf84/godraystimev34.html
Screenshots/Videos
See the Nexus page for Scanti's OBGEv2 version 2 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.
Installation
Download Scanti's OBGEv2 version 2 package and any other separate shaders from the links above. Install the package as directed in the package's Readme.
A summary of the install procedure is:
1. Decompress the package using 7-zip or any compatible alternative.
2. Copy the data directory in the package to your Oblivion directory. Answer yes to any merge or overwrite prompts.
3. Open the shaderlist.txt file in your Data/Shaders folder, and add to it the names of the shader files you have installed and wish to see the effects of. Make sure to spell them exactly, and include the .fx extension. There is a specific order required for the file names added, as listed below.
The effects will be loaded when you start up Oblivion. Any shaders in your shaderlist.txt file are passive shaders and OBGE can't alter them in any way. If you want to be able to change any parameters of an effect while oblivion is running then you will need to write an esp/esm plug-in to load the shader in. A framework to allow parameter change of OGE shaders using a plugin is planned for future versions.
*Attention*
DO NOT list non-OGE shaders (that is, any shaders other than the ones listed directly above) in your shaderlist.txt. Doing so may break the mod using that shader's effects.
Proper shader load order
This should be the order of your shader list with the current release of shaders.
-SSAO
-DepthOfField
-Godrays
-CelShader+EdgeAA
-Any other shaders installed
How To Report Bugs Helpfully
Read the OP, 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 codebox 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 OBGEv2 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.
F.A.Q.
Q: Is this a RELz? Should I download this?
A: The project has recently experienced its first 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.
Most shaders are supplied with no documentation of any sort besides what is on this thread. 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. You are advised to use the latest version available. You can get OBSE http://obse.silverlock.org/.
Q: Does OGE require any specific hardware to run?
A: The shaders are compatible with both ATI and NVIDIA graphics cards, although the Godrays, Depth Of Field and Color Effects shaders 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 in his work on the OBSE plugin. There is a github respositary so you can fairly easily create a fork and add your own changes. It would also be beneficial if you know anything about low-level DirectX and the OBSE plugin system. The respositary also allows you to create your own wiki pages for the project, which anyone who can is more than welcome to do.
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. :cake: :icecream:
Q: I found a bug...
A: Good for you. If you find a bug, please reported 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 (
A: This results from OBGEv2's inability to compile the shader effects you are trying to load. Make sure that you spell the names of the shaders in your shaderlist.txt EXACTLY as they should be, with the .fx extension, and you have the DirectX update linked to above installed. 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 is not working with OBGEv2. How do I fix this?
A: To fix this, open up the mod's shader file, and replace all instances of 'half' in it with 'float', then save the file. The shader will now work.
Q: The ordering of the objects on the screen is messed up! 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. 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 stop any effect that uses the depth buffer to stop working properly.
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.
Q: My Godrays is just a searchlight in clear weather.
A: Godrays are best displayed in cloudy weather types, from 6 to 8 in the mornings and evenings. However, if you get the searchlight effect, you have to edit the shader's FOV setting to match your ingame FOV. Example would be if your playing Oblivion on a 95 FOV, you have to edit your Godrays to a 95 FOV. To edit the shader, change the value of "#define fov", near the beginning of the file, to the value of your FOV.
Q: Why do objects in the distant have weird black stuff on them when fog weather is active?
Q: Using the SSAO shader does weird things to stuff underwater. What gives?
A: This is an unintended side effect of the SSAO effect. It occurs because the SSAO shader applies its effect regardless of the presence of fog, which would otherwise hide it. This can only be fixed when information about fog distances becomes available to the shader, until which time the bug is remain.
Q: SSAO demolishes my FPS; any ideas?
A: First, try the SSAO Performance shader, which has a slightly lower quality effect, but a great reduction in performance hit over the full SSAO shader. The easiest way to improve your frame rate while using the full SSAO shader is to reduce the sample size, and correspondingly increase the sample area. BDBB recommended values of:
ssao_sample_size = 1
ssao_sampling_area = 9.2
Q: Can the SSAO shader be optimised any more?
A: It is not possible to optimise the shader any further without access to information about the surface normals from the graphics renderer. As it is, the shader has to work these out from scratch, and this is what reduces performance the most.
Q: How do I get the EdgeAA effect?
A: The EdgeAA effect is part of the Edge Detection shader, to enable the effect change the following variables as shown:
flgEdgeMask = 0;
flgEdgeAA = 1;
Q: Where is the src folder with the source code?
A: Scanti has set up a GitHub repositary. That means you will always have access to the latest version of his code and people can contribute their own code to the project. The site is linked to above in the 'Downloads' section.