Oblivion Graphics Extender, Thread 10

Post » Tue Dec 29, 2009 1:25 pm

Oblivion Graphics Extender

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 ()". How do I fix this?
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.
User avatar
Claudia Cook
 
Posts: 3450
Joined: Mon Oct 30, 2006 10:22 am

Post » Tue Dec 29, 2009 10:07 am

This post is empty.
User avatar
CYCO JO-NATE
 
Posts: 3431
Joined: Fri Sep 21, 2007 12:41 pm

Post » Tue Dec 29, 2009 8:06 am

Thanks again for starting a new thread wrinklyninja, much appreciated :foodndrink:
User avatar
Killer McCracken
 
Posts: 3456
Joined: Wed Feb 14, 2007 9:57 pm

Post » Tue Dec 29, 2009 2:41 am

Just a quick update. Testing is going OK. (It's just finding the time to do it in. Today is the first day (well actually night as I work the graveyard shift) off work I've had in 2 weeks). I've found 1 small logical bug where 2 plug-ins (esp/esm) share the same shader file (because the duplication flag was set to no duplication) will cause a problem if one of the plug-ins is disabled. It's a quick fix. I'll just disable duplication only if the same plug-in tries to load a duplicate shader. If a different plug-in loads a duplicate shader the engine will load in the duplicate.

Please note because of the way textures work a plug-in writer is still responsible for writing a "remove plug-in" script as, although the shaders will be automatically removed, I can't remove the textures automatically.

The release version will have the HUD commands but they aren't supported at the moment as I haven't written the serialization routines. Plus the directx sprite routines mess around with the render states (even when you tell them not to). So I have to work out what gets changed and put it back to how it was or hook Oblivion's state manager into the sprite routines state management.

Once I've release the first beta version I'll track any bugs (I've fixed the RAWZ bug and the empty shaderlist.txt bug) and start on my to do list.
User avatar
Tamara Primo
 
Posts: 3483
Joined: Fri Jul 28, 2006 7:15 am

Post » Tue Dec 29, 2009 2:08 pm

To be honest, most of what you posted scanti, was greek to me. :bigsmile:
But still, I probably speak for the whole oblivion community when I say that your work is highly appreciated, thank you scanti :foodndrink:
User avatar
Honey Suckle
 
Posts: 3425
Joined: Wed Sep 27, 2006 4:22 pm

Post » Tue Dec 29, 2009 4:29 am

To be honest, most of what you posted scanti, was greek to me. :bigsmile:
But still, I probably speak for the whole oblivion community when I say that your work is highly appreciated, thank you scanti :foodndrink:

I would say French based on my own cultural sayings but http://www.crossmyt.com/hc/linghebr/awfgrmlg.html(I had the choice to take German or Computer lessons when I was 14, I decided on German because I like languages and already knew about computers, so the second week of my German lessons, I ditched the books and told teacher that I lost them. They brought the books back to me, it was like a worst nightmare that never ends!!! I then tried to stall things as long as I could and finally switch to computer lessons.).

We ate thread 9 already(OP missing a link to it). I must update godrays for the sake of the new thread. And

Well, I don't know if it'll be as easy as last time, but I ran across another shader for cloud shadows, if it can be implemented. The sharpening shader worked very well.

http://www.jb101.co.uk/2009/10/18/very-cheap-fake-cloud-shadows/

I want to thank Snow_EP for showing me how easy this shadowing thing is(and Peter Bird). I might have chicken out and wouldn't do a thing about it. Now this project is closer to reality because cloud alpha texture will be available soon for MGE shaders and I have other projects that can rely on the same methods. For example this hack-proof can be a reality now:
http://s51.photobucket.com/albums/f386/vtastek/morrowind/Morrowind2009/sc04/Morrowind-MGE-Crysis.jpg
Add cloud shadows over the sea, :), I will put something to alter shadow colors for underwater shadows and it may look better than Crysis. :whisper:

Is there anything else, Snow?

PS. Don't worry about Oblivion. Small steps... In time... :P Scanti is back. :)
Edit: Link fixed.
User avatar
Daramis McGee
 
Posts: 3378
Joined: Mon Sep 03, 2007 10:47 am

Post » Tue Dec 29, 2009 10:38 am

http://i51.photobucket.com/albums/f386/vtastek/morrowind/%20Morrowind2009/sc04/th_Morrowind-MGE-Crysis.jpg

That link doesn't seem to work.
User avatar
Chloe Yarnall
 
Posts: 3461
Joined: Sun Oct 08, 2006 3:26 am

Post » Tue Dec 29, 2009 11:16 am

Any value in updating DirectX to the http://www.microsoft.com/downloads/details.aspx?familyid=0CEF8180-E94A-4F56-B157-5AB8109CB4F5&displaylang=en distribution?

Perhaps the OP should be updated to point there instead?
User avatar
Daniel Brown
 
Posts: 3463
Joined: Fri May 04, 2007 11:21 am

Post » Tue Dec 29, 2009 10:03 am

Good idea. :)

I'm not sure if there's any benefit for OBGE stuff in updating, but I've run accross applications that refused to work before installing it, so I'll change the link, seeing as it's always good to keep things updated.

@ Scanti: Great news there. I can't say I understood a whole lot of the post, but what I did get sounded like good stuff to me.

@ vtastek: I knew I'd forgotten something, adding link now.
User avatar
bimsy
 
Posts: 3541
Joined: Wed Oct 11, 2006 3:04 pm

Post » Tue Dec 29, 2009 2:17 am

I downloaded the main dll and all of the secondary shaders in the list and put them in the correct order in my shaderlist.txt. In-game, however, things just look--well--rather terrible. The biggest example is that everything has a thick black outline on it. Not exactly sure what shader is causing it, but it shouldn't really be happening anyways. And the colors just look very flushed out. Everything is also very blurry. Perhaps it's my video card, but I just wanted to throw in my two cents here. I'm sure it's something that I'm doing wrong.
User avatar
chirsty aggas
 
Posts: 3396
Joined: Wed Oct 04, 2006 9:23 am

Post » Tue Dec 29, 2009 8:17 am

I downloaded the main dll and all of the secondary shaders in the list and put them in the correct order in my shaderlist.txt. In-game, however, things just look--well--rather terrible. The biggest example is that everything has a thick black outline on it. Not exactly sure what shader is causing it, but it shouldn't really be happening anyways. And the colors just look very flushed out. Everything is also very blurry. Perhaps it's my video card, but I just wanted to throw in my two cents here. I'm sure it's something that I'm doing wrong.
In other words, you're reporting that the shaders work fine. The thick border is added by the CelShader, the blurriness can be attributed to Depth of Field and the flushed-out color to the color effects shader.
User avatar
Mistress trades Melissa
 
Posts: 3464
Joined: Mon Jun 19, 2006 9:28 pm

Post » Tue Dec 29, 2009 6:42 am

I have been trying SOOOO very hard to figure out what was done to make this screen shot look like this
http://img684.imageshack.us/img684/678/skyview03.jpg

and i assume the god rays shader has been tweaked but other than that could some one please help me out a little. I would really appreciate it =]
User avatar
W E I R D
 
Posts: 3496
Joined: Tue Mar 20, 2007 10:08 am

Post » Tue Dec 29, 2009 1:11 am

Also I was wondering if it would be possible (once the eyepos is gotten of course)

to make the volumetric lighting from the sun be able to be seen even when you arent looking at the sun (like in crysis)

and also like in crysis make the suns light actually affect brightness. Like... somehow disable or reduce oblivions ambient lighting and have the sun directly affect the lighting brightness. Like if you were under trees it would be darker then out in the open. Would be amazing haha
User avatar
Sarah Bishop
 
Posts: 3387
Joined: Wed Oct 04, 2006 9:59 pm

Post » Tue Dec 29, 2009 3:42 am

I have been trying SOOOO very hard to figure out what was done to make this screen shot look like this
http://img684.imageshack.us/img684/678/skyview03.jpg

and i assume the god rays shader has been tweaked but other than that could some one please help me out a little. I would really appreciate it =]


Looks like one of AmpolX's screenshots to me. I'd guess he's using Godrays v2 there (so you'll have to tweak v3), and his settings for the ENB thingy. I'd PM him if you want more info.

To answer your latest post, yes, that should be possible for Godrays. As for being dark under trees, that's to do with HDR. I'm pretty sure that if you messed with Oblivion's HDR settings you'd be able to get a better effect for that. Defaults are kinda rubbish really. I've never edited mine though, so I can't give you any hints.
User avatar
lauren cleaves
 
Posts: 3307
Joined: Tue Aug 15, 2006 8:35 am

Post » Tue Dec 29, 2009 1:15 am

I've got an issue with the SSAO shader not shading the entire screen, leaving some blank areas at the sides: http://dl.dropbox.com/u/611240/ScreenShot1.jpg

Is this because I changed the shader's sampling size and area to 1 and 9.2 respectively?

suppose I'd best post the other bits too

OBGEv2.log
Ingnoring message.RESZ not supported.Depth buffer texture (INTZ) (1680,1050) created OK.Depth buffer attached OK.Releasing the original depth surface.Received load game message.Loading a game.Creating vertex buffers.Creating screen texture.Width = 1680, Height = 1050Setting screen surface.Setting depth texture.Loading the shaders.Loading shader (data\shaders\Dummy.fx)Setting effects screen texture.Loading shader (data\shaders\ssao_test.fx)Found filename : ssao\RandomNoiseB.ddsLoading texture (data\textures\ssao\RandomNoiseB.dds)Setting effects screen texture.Loading shader (data\shaders\DepthOfField.fx)Setting effects screen texture.Loading shader (data\shaders\timelygodraysv3.fx)Setting effects screen texture.Added to list OK.Loading shader (data\shaders\AmbientDungeons.fx)Setting effects screen texture.Received ExitGame message.Calling Release DeviceReleasing thisframe surface.Releasing lastpass surface.Releasing lastframe surface.Releasing thisframe texture.Releasing lastpass texture.Releasing lastframe texture.Releasing shader vertex buffer.


OBSE.log
OBSE: initialize (version = 18.5 010201A0)oblivion root = F:\Oblivion\plugin directory = F:\Oblivion\Data\OBSE\Plugins\checking plugin F:\Oblivion\Data\OBSE\Plugins\\Elys_USV.dllplugin F:\Oblivion\Data\OBSE\Plugins\\Elys_USV.dll (00000001 Elys_USV 0000005D) loaded correctlychecking plugin F:\Oblivion\Data\OBSE\Plugins\\FastExit2.dllplugin F:\Oblivion\Data\OBSE\Plugins\\FastExit2.dll (00000001 FastExit 00000002) loaded correctlychecking plugin F:\Oblivion\Data\OBSE\Plugins\\obge.dllSetOpcodeBase 00002100RegisterCommand GetAvailableGraphicsMemory (2100)RegisterCommand GetScreenWidth (2101)RegisterCommand GetScreenHeight (2102)RegisterCommand LoadShader (2103)RegisterCommand ApplyFullscreenShader (2104)RegisterCommand RemoveFullscreenShader (2105)RegisterCommand SetShaderInt (2106)RegisterCommand SetShaderFloat (2107)RegisterCommand SetShaderVector (2108)RegisterCommand SetShaderTexture (2109)RegisterCommand ForceGraphicsReset (210A)RegisterCommand LoadTexture (210B)RegisterCommand FreeTexture (210C)RegisterCommand CreateHUDElement (210D)RegisterCommand SetHUDElementTexture (210E)RegisterCommand SetHUDElementColour (210F)RegisterCommand SetHUDElementPosition (2110)RegisterCommand SetHUDElementScale (2111)RegisterCommand SetHUDElementRotation (2112)RegisterCommand PurgeManagedTextures (2113)plugin F:\Oblivion\Data\OBSE\Plugins\\obge.dll (00000001 obge 00000001) loaded correctlychecking plugin F:\Oblivion\Data\OBSE\Plugins\\OBGEv2.dllSetOpcodeBase 00002100RegisterCommand GetAvailableGraphicsMemory (2100)RegisterCommand GetScreenWidth (2101)RegisterCommand GetScreenHeight (2102)RegisterCommand LoadShader (2103)RegisterCommand ApplyFullscreenShader (2104)RegisterCommand RemoveFullscreenShader (2105)RegisterCommand SetShaderInt (2106)RegisterCommand SetShaderFloat (2107)RegisterCommand SetShaderVector (2108)RegisterCommand SetShaderTexture (2109)RegisterCommand ForceGraphicsReset (210A)RegisterCommand LoadTexture (210B)RegisterCommand FreeTexture (210C)RegisterCommand CreateHUDElement (210D)RegisterCommand SetHUDElementTexture (210E)RegisterCommand SetHUDElementColour (210F)RegisterCommand SetHUDElementPosition (2110)RegisterCommand SetHUDElementScale (2111)RegisterCommand SetHUDElementRotation (2112)RegisterCommand PurgeManagedTextures (2113)SetOpcodeBase 0000259ERegisterCommand ShowShaderDebugInfo (259E)RegisterCommand ShowTestShader (259F)plugin F:\Oblivion\Data\OBSE\Plugins\\OBGEv2.dll (00000001 OBGEv2 00000001) loaded correctlychecking plugin F:\Oblivion\Data\OBSE\Plugins\\OBSE_Elys_Pluggy.dllSetOpcodeBase 00002330RegisterCommand GetEsp (2330)RegisterCommand CreateArray (2331)RegisterCommand DestroyArray (2332)RegisterCommand ArraySize (2333)RegisterCommand ArrayCount (2334)RegisterCommand SetInArray (2335)RegisterCommand SetFloatInArray (2336)RegisterCommand GetInArray (2337)RegisterCommand GetTypeInArray (2338)RegisterCommand RemInArray (2339)RegisterCommand FindInArray (233A)RegisterCommand FindFloatInArray (233B)RegisterCommand SetRefInArray (233C)RegisterCommand FindRefInArray (233D)RegisterCommand CopyArray (233E)RegisterCommand ArrayEsp (233F)RegisterCommand ArrayProtect (2340)RegisterCommand FirstInArray (2341)RegisterCommand DestroyAllArrays (2342)RegisterCommand PackArray (2343)RegisterCommand CreateString (2344)RegisterCommand DestroyString (2345)RegisterCommand SetString (2346)RegisterCommand StringEsp (2347)RegisterCommand StringProtect (2348)RegisterCommand StringLen (2349)RegisterCommand DestroyAllStrings (234A)RegisterCommand StringSetName (234B)RegisterCommand StringGetName (234C)RegisterCommand StringMsg (234D)RegisterCommand StringCat (234E)RegisterCommand UserFileExists (234F)SetOpcodeBase 00002378RegisterCommand RenFile (2378)RegisterCommand DelFile (2379)RegisterCommand StringToTxtFile (237A)RegisterCommand CopyString (237B)RegisterCommand IntToString (237C)RegisterCommand FloatToString (237D)RegisterCommand RefToString (237E)RegisterCommand IniReadInt (237F)RegisterCommand IniReadFloat (2380)RegisterCommand IniReadRef (2381)RegisterCommand IniWriteInt (2382)RegisterCommand IniWriteFloat (2383)RegisterCommand IniWriteRef (2384)RegisterCommand IniKeyExists (2385)RegisterCommand IniDelKey (2386)RegisterCommand EspToString (2387)RegisterCommand IniReadString (2388)RegisterCommand IniWriteString (2389)RegisterCommand ModRefEsp (238A)RegisterCommand GetRefEsp (238B)RegisterCommand StringToRef (238C)RegisterCommand StringCmp (238D)RegisterCommand FileToString (238E)RegisterCommand StringPos (238F)RegisterCommand StringToInt (2390)RegisterCommand StringToFloat (2391)RegisterCommand ArrayCmp (2392)RegisterCommand StringMsgBox (2393)RegisterCommand StringIns (2394)RegisterCommand StringRep (2395)RegisterCommand IntToHex (2396)RegisterCommand LC (2397)SetOpcodeBase 000023B0RegisterCommand FromTSFC (23B0)RegisterCommand ToTSFC (23B1)RegisterCommand StrLC (23B2)RegisterCommand CreateEspBook (23B3)RegisterCommand FmtString (23B4)RegisterCommand FixName (23B5)RegisterCommand ResetName (23B6)RegisterCommand HasFixedName (23B7)RegisterCommand csc (23B8)RegisterCommand StringSetNameEx (23B9)RegisterCommand StringGetNameEx (23BA)RegisterCommand FixNameEx (23BB)RegisterCommand IniGetNthSection (23BC)RegisterCommand IniSectionsCount (23BD)RegisterCommand RunBatString (23BE)RegisterCommand Halt (23BF)RegisterCommand RefToLong (23C0)RegisterCommand LongToRef (23C1)RegisterCommand FindFirstFile (23C2)RegisterCommand FindNextFile (23C3)RegisterCommand GetFileSize (23C4)RegisterCommand NewHudS (23C5)RegisterCommand DelHudS (23C6)RegisterCommand ScreenInfo (23C7)RegisterCommand HudS_X (23C8)RegisterCommand HudS_SclX (23C9)RegisterCommand HudS_Show (23CA)RegisterCommand HudS_Opac (23CB)RegisterCommand HudS_Align (23CC)RegisterCommand AutoSclHudS (23CD)RegisterCommand HudS_Y (23CE)RegisterCommand HudSEsp (23CF)RegisterCommand HudSProtect (23D0)RegisterCommand HudsInfo (23D1)RegisterCommand DelAllHudSs (23D2)RegisterCommand HudS_L (23D3)RegisterCommand rcsc (23D4)RegisterCommand HudS_SclY (23D5)RegisterCommand NewHudT (23D6)RegisterCommand DelHudT (23D7)RegisterCommand HudT_X (23D8)RegisterCommand HudT_SclX (23D9)RegisterCommand HudT_Show (23DA)RegisterCommand HudT_Opac (23DB)RegisterCommand HudT_Align (23DC)RegisterCommand AutoSclHudT (23DD)RegisterCommand HudT_Y (23DE)RegisterCommand HudTEsp (23DF)RegisterCommand HudTProtect (23E0)RegisterCommand HudTInfo (23E1)RegisterCommand DelAllHudTs (23E2)RegisterCommand HudT_L (23E3)RegisterCommand HudT_SclY (23E4)RegisterCommand PauseBox (23E5)RegisterCommand KillMenu (23E6)RegisterCommand SetHudT (23E7)RegisterCommand HudT_Text (23E8)RegisterCommand HudS_Tex (23E9)RegisterCommand SanString (23EA)RegisterCommand IsHUDEnabled (23EB)RegisterCommand IsPluggyDataReset (23EC)RegisterCommand FromOBSEString (23ED)RegisterCommand ToOBSEString (23EE)RegisterCommand HudT_Font (23EF)SetOpcodeBase 000023FFRegisterCommand PlgySpcl (23FF)plugin F:\Oblivion\Data\OBSE\Plugins\\OBSE_Elys_Pluggy.dll (00000001 OBSE_Elys_Pluggy 00000084) loaded correctlychecking plugin F:\Oblivion\Data\OBSE\Plugins\\OBSE_Elys_Uncapper.dllplugin F:\Oblivion\Data\OBSE\Plugins\\OBSE_Elys_Uncapper.dll (00000001 OBSE_Elys_Uncapper 0000005E) loaded correctlychecking plugin F:\Oblivion\Data\OBSE\Plugins\\sr_Oblivion_Stutter_Remover.dllplugin F:\Oblivion\Data\OBSE\Plugins\\sr_Oblivion_Stutter_Remover.dll (00000001 sr_Oblivion_Stutter_Remover 00004100) loaded correctlypatchedDoLoadGameHook: C:\Users\Adam\Documents\My Games\Oblivion\Saves\Acien\quicksave.essloading from C:\Users\Adam\Documents\My Games\Oblivion\Saves\Acien\quicksave.obseLoading stringsLoading array variables


Operating System: Windows 7 (x64)
Graphics Card: NVIDIA GTS250 1GB
User avatar
e.Double
 
Posts: 3318
Joined: Tue Jul 24, 2007 11:17 pm

Post » Tue Dec 29, 2009 5:47 am

I don't know if you already knew this, but I found out, that if you delete the "textures\ssao\RandomNoiseB.dds", you REALLY boost your framerate.

Here are some pics to show the difference in performance:

http://img210.imageshack.us/img210/6939/before1x.jpg - http://img27.imageshack.us/img27/962/after1p.jpg
http://img717.imageshack.us/img717/2555/before2.jpg - http://img46.imageshack.us/img46/155/after2y.jpg

I just thought I'd let you know. I have no idea how this can be, but it's cool I think. :)

EDIT:

Wow.. by changing the "ssao_sample_size" to 2 (default 4), and the "ssao_sampling_area" to 3.4 (default 1.7), the framerate gets EVEN more increased!

http://img11.imageshack.us/img11/5364/ssao1.jpg, http://img98.imageshack.us/img98/6857/ssao2.jpg.

Looks fantastic B)
User avatar
Benjamin Holz
 
Posts: 3408
Joined: Fri Oct 19, 2007 9:34 pm

Post » Tue Dec 29, 2009 4:18 am

@ xaxxiron777: That's because you're essentially breaking the shader. You won't get the same effect, the random noise texture is needed.
User avatar
Keeley Stevens
 
Posts: 3398
Joined: Wed Sep 06, 2006 6:04 pm

Post » Tue Dec 29, 2009 8:46 am

Hmm I think it looks the same :/
User avatar
herrade
 
Posts: 3469
Joined: Thu Apr 05, 2007 1:09 pm

Post » Tue Dec 29, 2009 6:11 am

I don't know if you already knew this, but I found out, that if you delete the "textures\ssao\RandomNoiseB.dds", you REALLY boost your framerate.

Hmm, I think I'll test this. My guess is objects will not shade at various distances or something like that... But if the change isn't easily noticed, I could live with it.
User avatar
Stephani Silva
 
Posts: 3372
Joined: Wed Jan 17, 2007 10:11 pm

Post » Tue Dec 29, 2009 8:31 am

which variable do i change in the godray shader to make the rays start sooner. because im getting a sunset with little to no rays.
User avatar
Dean Brown
 
Posts: 3472
Joined: Fri Aug 31, 2007 10:17 pm

Post » Tue Dec 29, 2009 2:44 am

Looking at the shader, there aren't any variables you can change the values of, but you can alter the values further down in the function if you want. I wouldn't advise doing so unless you know what you're doing, or vtastek responds.

@ vtastek: Perhaps a good idea for v4 would be inclusion of a few variables to control this timing?
User avatar
Alexxxxxx
 
Posts: 3417
Joined: Mon Jul 31, 2006 10:55 am

Post » Tue Dec 29, 2009 12:49 am

I have been working on learning shaders be reverse engineering other shaders to my own benefit. But I don't think I yet know enough to toy with it. Thanks for telling me haha =P


EDIT:
found this

"Geometry shaders can add and remove vertices from a mesh. Geometry shaders can be used to generate geometry procedurally or to add volumetric detail to existing meshes that would be too costly to process on the CPU. If geometry shaders are being used, the output is then sent to the rasterizer."


Anybody getting the ideas I am?
User avatar
Add Meeh
 
Posts: 3326
Joined: Sat Jan 06, 2007 8:09 am

Post » Tue Dec 29, 2009 6:26 am

Looking at the shader, there aren't any variables you can change the values of, but you can alter the values further down in the function if you want. I wouldn't advise doing so unless you know what you're doing, or vtastek responds.

@ vtastek: Perhaps a good idea for v4 would be inclusion of a few variables to control this timing?

A very good idea, for the sake of precision, starting a little earlier won't hurt anyway. ;)

I have been working on learning shaders be reverse engineering other shaders to my own benefit. But I don't think I yet know enough to toy with it. Thanks for telling me haha =P


EDIT:
found this

"Geometry shaders can add and remove vertices from a mesh. Geometry shaders can be used to generate geometry procedurally or to add volumetric detail to existing meshes that would be too costly to process on the CPU. If geometry shaders are being used, the output is then sent to the rasterizer."


Anybody getting the ideas I am?

I think Geometry shaders are DX 10. Oblivion is DX9. Maybe in future, where there are plenty of examples...
User avatar
ZzZz
 
Posts: 3396
Joined: Sat Jul 08, 2006 9:56 pm

Post » Tue Dec 29, 2009 2:53 pm

Didn't MGE allow Morrowind's engine to use DX9 functions? Why can't we do something similar, and let Oblivion use DX10 stuff? For the record, if I seem ignorant of immense potential/impossible work involved with that, it's because I am... in no way to I mean to include myself in the collective "we."
User avatar
Nichola Haynes
 
Posts: 3457
Joined: Tue Aug 01, 2006 4:54 pm

Post » Tue Dec 29, 2009 1:08 pm

Hmm he has a good point there.

But Im as ignorant in it as he is lol..

Oh and as to the ssao shaders fps being increased by deleting the randomnoise texture file. the only thing the texture does is put a film grain over the screen. And it doesnt even move. So there is no noticeable change to the ssao effect but it greatly increases the fps.
User avatar
Marina Leigh
 
Posts: 3339
Joined: Wed Jun 21, 2006 7:59 pm

Next

Return to IV - Oblivion