OGE "Oblivion Graphics Extender"

Post » Fri May 27, 2011 2:31 pm

Just to say that this is a Brilliant Mod, But I'm currently restricted to using this for My Screenshots only. Is it normal to reduce the Framerate from plus 60 down to 20 when the SSAO_Test is loaded?
User avatar
Roanne Bardsley
 
Posts: 3414
Joined: Wed Nov 08, 2006 9:57 am

Post » Fri May 27, 2011 1:49 pm

Scanti:
Please Pack the "Source Code" into 1 file, so most of us have one easy download and one archive stored on disc.

I know we all request a lot of things, but maybe you "Scanti" can give us your vision on the current OBGEv2 project. What do you think we can expect all to be possible in the future.



@ Sjors_Boomscors: I think you can download it all at once, it's in a compressed archive if you click the 'Download Source' button near the top of the page.


@Sjors Boomscors

What wrinklyninja said. :)

I don't have any set plans for the project. I have ideas but with projects of this nature I don't know how plausible they are until I try them.

Reporting in: GTX260 XPSP3 1680X1050 Bloom

OBGEV2 - Spectacular, I'm happy as a clam. Noticeably faster, loads all shaders listed on shaderlist.txt automatically. Additionally, I was one of the biggest victims of the OBGE transition crashes and hence had to use OBGE debugged. Been playing for 6+ hours and zero crashes. Also additionally I had graphical errors with ABO's http://www.tesnexus.com/downloads/file.php?id=21424 and OBGE debugged, with V2, no errors. Great work!

SSAO_TEST - Here's where I have problems. The shader effect does not reach full screen. I get a trapizoid effect across the screen leaving a bottom space unaffected, annoying enough as to be unplayable, both with OBGEV2 and the previous. On the plus side with V2 SSAO runs fast, barely causing FPS loss, where with the previous the FPS hit was unplayable. Also, RandomNoiseB.dds, makes my screen look as though I have gause over my eyes, if I remove it, runs fine looks good.
I've looked through the settings in the shader but could find no adjustment for full screen, nor have I noticed any one else with the problem. Any idea what could be up?

Great job guys, big kudos!


I was playing around with the texture format of the frame buffers and I accidentally left them as 16 bit floating point textures instead of 8 bit integer textures. This shouldn't make any difference except it will take up more of your graphics card memory but maybe it is. It could explain the speed up (modern graphics cards could be optimised for floating point textures as everybody is using them) and it could explain the weirdness with the ssao shader.


Scanti, does the new version use different code for the HUD hook (which is primarily believed to be the reason for the crashes in Timeslip's) ? I believe Pluggy could do with the same.


Yes it does use a different method. It basically fools the game engine into thinking it's rendering a full screen shader. The handy thing doing it this way is that the game engine passes all the information you need automatically. To implement it you need to look at the SpoofShader class. This is the trojan horse that pretends to be a shader.

@Psymon

The plug-in should create a OBSEv2.log file. This will help you track down why the Depth of field shader isn't working. You've either spelt the file name wrong or it's not compiling properly.
User avatar
Britta Gronkowski
 
Posts: 3475
Joined: Mon Apr 09, 2007 3:14 pm

Post » Fri May 27, 2011 7:25 pm

How compatible would this be with upgrading Screen Effects? I think that uses the old OBGE and is reported to have several issues (or so it seems) How easy would it be for anyone to make a newer version that takes advantage of Scanti's awesome work? :) Any takers?
User avatar
Rebecca Clare Smith
 
Posts: 3508
Joined: Fri Aug 04, 2006 4:13 pm

Post » Fri May 27, 2011 12:55 pm

Sorry if it sounded like I was complaining or demanding a fix right away.

I, of course, understand that it is alpha and even stated that I was continuing to use the last stable version.

But instead of posting "mod don't work" - I was giving information about what doesn't work. It is not as though Scanti or anyone posted to say that they understood what I was saying (message received) - but I did get a couple of replies inferring operator error.

Will check obgev2 log

============

edit - OK found it and loaded game here is what the log states:
Ingnoring message.RESZ not supported.Failed to create buffer texture (INTZ).Depth buffer texture (DF24) (1920,1200) 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 = 1920, Height = 1200Setting screen surface.Setting depth texture.Loading the shaders.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)Shader compilation errors occuredDepthOfField.fxI:\Games\Oblivion\data\shaders\DepthOfField.fx(1,1): error X3000: syntax error: unexpected token '<'I:\Games\Oblivion\data\shaders\DepthOfField.fx(771,2): error X1504: invalid preprocessor command 'pgProtocolHandler'Loading shader (data\shaders\Godrays.fx)Setting effects screen texture.Loading shader (data\shaders\CelShader.fx)Setting effects screen texture.Added to list OK.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.
So it is not loading the depth of field.

With the exact same depth of field shader file using the last stable OGE it does work.

I guess it is my mistake to have assumed that the instructions for OBGE "To load shaders, simply use the LoadShader "" command in the console menu." Did not mean that you could load one at a time while in game?
User avatar
Haley Cooper
 
Posts: 3490
Joined: Wed Jun 14, 2006 11:30 am

Post » Fri May 27, 2011 4:21 pm

Will check obgev2 log

============

edit - OK found it and loaded game here is what the log states:
Ingnoring message.RESZ not supported.Failed to create buffer texture (INTZ).Depth buffer texture (DF24) (1920,1200) 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 = 1920, Height = 1200Setting screen surface.Setting depth texture.Loading the shaders.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)Shader compilation errors occuredDepthOfField.fxI:\Games\Oblivion\data\shaders\DepthOfField.fx(1,1): error X3000: syntax error: unexpected token '<'I:\Games\Oblivion\data\shaders\DepthOfField.fx(771,2): error X1504: invalid preprocessor command 'pgProtocolHandler'Loading shader (data\shaders\Godrays.fx)Setting effects screen texture.Loading shader (data\shaders\CelShader.fx)Setting effects screen texture.Added to list OK.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.
So it is not loading the depth of field.

With the exact same depth of field shader file using the last stable OGE it does work.

I guess it is my mistake to have assumed that the instructions for OBGE "To load shaders, simply use the LoadShader "" command in the console menu." Did not mean that you could load one at a time while in game?


It looks like your download of the DepthOfField.fx file is corrupted. It looks like the http header has been included in the download. Try downloading it again and if you use a download manager then don't use it to download the file. The first line of the shader file should be:

/* Depth Of Field Effect by WrinklyNinja. Release Version 4.

The LoadShader command is really for scripters. You can use it to load in a shader not in your ShaderList.txt file. The correct command for the depth of field shader would be:

LoadShader "DepthOfField.fx"
User avatar
Nick Pryce
 
Posts: 3386
Joined: Sat Jul 14, 2007 8:36 pm

Post » Fri May 27, 2011 8:43 am

Thank you - that DoF version I had seemed to contain html code - maybe an outdated version?

Oh so I do have the function of the load shaders command. What is the minimal amount of shaders I need listed on the Shaders.txt file?

I ask because while they are improving there is still times that I'd like to turn them on/off.

Like if I could just have godrays then use the console to activate the others that would be great - also does that command then deactivate them if used while they are active and not on the list?

Now I think I already know the answer to this next question - will the OBGEv2 theoretically work with mods that used the old OBGE - I'm thinking no, but thought I should ask.

once again thank you very much for continued work on this and assistance.

==========

edit

it worked, however, no ... one cannot reenter the shader command again to deactivate - what seems to happen is that it just loads the shader multiple times. Once loaded there is no deactivating it. And with no global command to turn the shaders on/off like with OGE v3 this seems to have less control. Loaded the DoF shader 4 times - it got really blury.

I'm curious if the person (wrinkly or whomever) who is working on the depth of field shader - if they wear glasses.
I've got great vision and have never needed them and wearing other peoples gives me a headache.
I'm wondering if there is a way to only have it activate on objects that are 20 feet away or more.

=============

edit 2
anyone else notice that camera tightness gets loose when SSAO is loaded - I have Wrye Bash camera tightness set to x5 and it became more sluggish than vanilla.

Again I totally get this is alpha - just trying to give feedback.

Since I last played around with this a month ago and implementing the fixes recommended ssao and godrays are greatly toned down. More toning down is what I'd recommend.

my 2 cents.

again thank you.
User avatar
Cameron Wood
 
Posts: 3384
Joined: Wed Oct 31, 2007 3:01 pm

Post » Fri May 27, 2011 7:09 pm

I have a question about the Depth of Field feature... actually, it's more about the blur shader. It doesn't seem... well... blurry to me. It looks like the image has been taken line by line and every other line has been shifted a bit to make it LOOK blurry, but it just gives me a headache and creates a ghost image. Is this some limitation on how these things work? I'm not at all familiar with how Oblivion handles shaders, so I have no idea, but is a "real" blur effect possible?
User avatar
Noely Ulloa
 
Posts: 3596
Joined: Tue Jul 04, 2006 1:33 am

Post » Fri May 27, 2011 11:08 am

I too have a severe headache right now after only 10 minutes of it loaded.

Why I asked about the eyesight of mod maker.

Maybe they are used to it.
User avatar
Stephy Beck
 
Posts: 3492
Joined: Mon Apr 16, 2007 12:33 pm

Post » Fri May 27, 2011 2:06 pm

@ Psymon: You can't yet turn off shaders.

Yes, I wear glasses. That has absolutely no influence on my shader writing though. Glasses simply exist to bring my vision clarity up to the same level that you see. I wear my glasses when I use the computer, therefore that can't be an issue.

Yes there is a way to get the blur to start further away, if you read the shader file, it's got parameters for both Distance Blur and modifying the blur depth.

@ ishmaeltheforsaken: That is exactly what a blur is, with weighting added and a higher sample count. Make sure you're using the latest version, it improved the blur a lot.


What could be influencing the shader is a lack of anisotropic filtering in my games - ATI hasn't bothered to release proper Win 7 drivers for my laptop's graphics card (HD 4650). If anyone knows how I could solve this, please do tell.
User avatar
CRuzIta LUVz grlz
 
Posts: 3388
Joined: Fri Aug 24, 2007 11:44 am

Post » Fri May 27, 2011 5:07 pm

thank you experimenting with these settings.

What do these two do?
float FullFocusRange = 0.1;
//If a point's depth is within +/- this value of the depth of the focus point, then it is not blurred.

float NoFocusRange = 0.4;
//If a point's depth is outwith +/- this value of the depth of the focus point, then it has the maximum level of blur applied to it.

what is the scale - what if I set these to over a whole integer?

so will increasing this int DepthPower increase the distance that depth happens?

I loved finding the weapon blur setting - thanks!

So far gonna try these settings:
//TWEAKABLE VARIABLES.bool DoDistanceBlur = false; //If true, reduces DoF to a distance blurring effect, ie. things far away are blurred more than things close up.bool DoWeaponBlur = false; //If false, anything really close to you, like your weapon, will not be blurred no matter where your focus is.float DoFAmount = 5;//The maximum level of blur. A higher value will give you more blur.float FullFocusRange = 0.1; //If a point's depth is within +/- this value of the depth of the focus point, then it is not blurred.float NoFocusRange = 0.4; //If a point's depth is outwith +/- this value of the depth of the focus point, then it has the maximum level of blur applied to it.int DepthPower = 30; /*Controls the linearity of depth. Higher values will stretch it out more, so you can get the range spread further into the distance that you see in game.Suggested Values:Normal DoF: 19Distance Blur: 5001 */
thanks again.

=========

edit - with those settings - so much kinder on the eyes - ahhh.
Noticed though that when ssao is loaded too it really minimizes the effect - maybe masks the effect of the depth. May turn a few back up - thanks for showing me this.

Does ssao include the edge detect shader? does it make the edge detect shader redundant?

Sorry for being a bother - hard to relate with needing glasses and anything that messes with my eyes like that is irritating. I liked the movie avatar but the 3-D version gave me a headache a day long.
User avatar
Irmacuba
 
Posts: 3531
Joined: Sat Mar 31, 2007 2:54 am

Post » Fri May 27, 2011 2:01 pm

@ Psymon: You can't yet turn off shaders.

Yes, I wear glasses. That has absolutely no influence on my shader writing though. Glasses simply exist to bring my vision clarity up to the same level that you see. I wear my glasses when I use the computer, therefore that can't be an issue.

Yes there is a way to get the blur to start further away, if you read the shader file, it's got parameters for both Distance Blur and modifying the blur depth.

@ ishmaeltheforsaken: That is exactly what a blur is, with weighting added and a higher sample count. Make sure you're using the latest version, it improved the blur a lot.


What could be influencing the shader is a lack of anisotropic filtering in my games - ATI hasn't bothered to release proper Win 7 drivers for my laptop's graphics card (HD 4650). If anyone knows how I could solve this, please do tell.

Have you looked at https://a248.e.akamai.net/f/674/9206/0/www2.ati.com/drivers/9-12_vista32_win7_32_dd_ccc_wdm_enu.exe? (Win7 32-bit)
User avatar
Alexx Peace
 
Posts: 3432
Joined: Thu Jul 20, 2006 5:55 pm

Post » Fri May 27, 2011 2:46 pm

Link doesn't work. I'm using 7 64-bit, and the only drivers available are the ones for the 7 beta, at version 9.9, as I have a Mobility card, whereas the desktop Radeon driver is at 9.12 and isn't in beta.

I'll download the old beta drivers anyway, I suppose that's the best there is...
User avatar
Andrew
 
Posts: 3521
Joined: Tue May 08, 2007 1:44 am

Post » Fri May 27, 2011 12:28 pm

SSAO has a habit of doing that. Use http://www.gamesas.com/bgsforums/index.php?showtopic=1060479&st=160&p=15476196&#entry15476196 fix. http://www.gamesas.com/bgsforums/index.php?showtopic=1060479&st=160&p=15476342&#entry15476342


Tried this thanks, but it didn't really help. I think it's my Pc if i'm honest :(
User avatar
Kat Stewart
 
Posts: 3355
Joined: Sun Feb 04, 2007 12:30 am

Post » Fri May 27, 2011 8:48 pm

OK, I installed the beta drivers (c'mon ATI, I want some updates), and loaded up my shader. I can sorta see what you mean about the blur looking odd, on cobblestones in particular (eg. IC streets). I think that could be solved by simply increasing the DoFAmount variable, I'll find a good default.
User avatar
Destinyscharm
 
Posts: 3404
Joined: Sun Jul 23, 2006 6:06 pm

Post » Fri May 27, 2011 9:14 pm

OK, I installed the beta drivers (c'mon ATI, I want some updates), and loaded up my shader. I can sorta see what you mean about the blur looking odd, on cobblestones in particular (eg. IC streets). I think that could be solved by simply increasing the DoFAmount variable, I'll find a good default.


Have you tried this?

http://www.hardwareheaven.com/modtool.php

It's a neat little program that lets you install the "normal" up to date catalyst drivers on your laptop. I've used it on my girlfriends laptop without trouble.

Anyway, thank you for your hard work everybody, I'm using what you've released so far and it adds a lot to my game. :cookie:

Oh, another thing. I played around with the ssao shader settings as well and I prefer
ssao_sampling_area = 6.8f instead of 9.2.

regards
Davoren
User avatar
amhain
 
Posts: 3506
Joined: Sun Jan 07, 2007 12:31 pm

Post » Fri May 27, 2011 6:07 pm

I also had to download DepthOfField.fx again, due to it being corrupted (I was getting the same error message in my OBGEv2.log as Psymon). In my current game, I am using the SSAO shader, depth of field and godrays. With Scanti's new OGE plugin, Godrays works really well.

When I loaded my latest Oblivion save game, however, I noticed only the close up objects were blurred, not things which were far away. Any suggestions on how I can fix this?

I have the folliowing load order in shaderlist.txt:

ssao_test.fx
DepthOfField.fx
Godrays.fx
User avatar
Amanda savory
 
Posts: 3332
Joined: Mon Nov 27, 2006 10:37 am

Post » Sat May 28, 2011 12:29 am

Objects further away from whatever you're looking at should be more blurred than closer objects, regardless of whether they're near to you or not. However, the depth isn't exactly linear, and you can control the linearity using the DepthPower variable in the shader file. Try setting it to the distance blur value (5001), and see if that changes anything. In fact, just experiment with that variable.
User avatar
glot
 
Posts: 3297
Joined: Mon Jul 17, 2006 1:41 pm

Post » Fri May 27, 2011 9:53 am

Yes it does use a different method. It basically fools the game engine into thinking it's rendering a full screen shader. The handy thing doing it this way is that the game engine passes all the information you need automatically. To implement it you need to look at the SpoofShader class. This is the trojan horse that pretends to be a shader.
Ah ! Thanks for clarifying - I'll take a look.

I've got a request by the way - The ability to shove OBGE shaders to the top of the render queue, to get them applied before the vanilla game's. You did say you were hooked into the state manager.
User avatar
David Chambers
 
Posts: 3333
Joined: Fri May 18, 2007 4:30 am

Post » Fri May 27, 2011 4:17 pm

Sorry for being a bother - hard to relate with needing glasses and anything that messes with my eyes like that is irritating. I liked the movie avatar but the 3-D version gave me a headache a day long.

Heh, a buddy of mine got sick in the theater because of the 3-D visual effects. Popcorn pieces everywhere. Back on topic now...
User avatar
Donatus Uwasomba
 
Posts: 3361
Joined: Sun May 27, 2007 7:22 pm

Post » Fri May 27, 2011 11:46 pm

Ah ! Thanks for clarifying - I'll take a look.

I've got a request by the way - The ability to shove OBGE shaders to the top of the render queue, to get them applied before the vanilla game's. You did say you were hooked into the state manager.


Changing the order that OBGE's shaders get applied would be possible. In fact it would probably be better because the HDR shader wouldn't interfere with the OBGE shaders. I did think about it but never got round to it because I would have to write a custom routine to insert a shader in the middle of the shader list, instead of at the end of it like Oblivion does. If I remember correctly the shader list is a linked list so it should be fairly simple to write the new routine.

If you mean have I hooked the state manager in so far as you can call it's functions then yes. If you mean can I intercept any calls to it's functions and call my own function instead then no. However I may do at a later stage. i.e. intercept the fog state calls to fix the nVidia fogging bug.
User avatar
Albert Wesker
 
Posts: 3499
Joined: Fri May 11, 2007 11:17 pm

Post » Fri May 27, 2011 9:30 pm

*I get blue light rays during the day time.
Go in the godray.fx file and reduced the "static const float saturate = 0.540f;" from 540 to 040, this will decrease the saturation values to prevent your screen from turning blue.


This. How much will the "blue" be reduced if i, say, set it to 340? :huh:
User avatar
Kelly Osbourne Kelly
 
Posts: 3426
Joined: Sun Nov 05, 2006 6:56 pm

Post » Fri May 27, 2011 4:06 pm

This. How much will the "blue" be reduced if i, say, set it to 340? :huh:

Just try for yourself and find out, the game isn't going to crash or anything.
User avatar
Isabell Hoffmann
 
Posts: 3463
Joined: Wed Apr 18, 2007 11:34 pm

Post » Fri May 27, 2011 4:25 pm

Changing the order that OBGE's shaders get applied would be possible. In fact it would probably be better because the HDR shader wouldn't interfere with the OBGE shaders. I did think about it but never got round to it because I would have to write a custom routine to insert a shader in the middle of the shader list, instead of at the end of it like Oblivion does. If I remember correctly the shader list is a linked list so it should be fairly simple to write the new routine.

If you mean have I hooked the state manager in so far as you can call it's functions then yes. If you mean can I intercept any calls to it's functions and call my own function instead then no. However I may do at a later stage. i.e. intercept the fog state calls to fix the nVidia fogging bug.
That's brilliant !

Some info/progress on the edgeAA shader :- I did some tweaking to the blur parameters to take into account scene depth while sampling. Produced a more noticeable effect [ http://s659.photobucket.com/albums/uu320/shademe/shader%20stuff/ ]. I also managed to find my Crysis Warhead disc yesterday, meaning I can look into the technique used by the game to achieve the same effect.
User avatar
Matthew Warren
 
Posts: 3463
Joined: Fri Oct 19, 2007 11:37 pm

Post » Fri May 27, 2011 9:21 am

Objects further away from whatever you're looking at should be more blurred than closer objects, regardless of whether they're near to you or not. However, the depth isn't exactly linear, and you can control the linearity using the DepthPower variable in the shader file. Try setting it to the distance blur value (5001), and see if that changes anything. In fact, just experiment with that variable.


Changing the value of the constant worked.

I will next be trying the changes to the constant in the godrays shader (I am getting blue light rays during the day, as well).
User avatar
Greg Swan
 
Posts: 3413
Joined: Tue Jun 05, 2007 12:49 am

Post » Fri May 27, 2011 4:31 pm

-snip-
User avatar
Chloe :)
 
Posts: 3386
Joined: Tue Jun 13, 2006 10:00 am

PreviousNext

Return to IV - Oblivion