Oblivion Graphics Extender, Thread 15

Post » Mon Oct 11, 2010 6:34 pm

I hope we can get better fire. Meaning fire from spells and stuff, not the somewhat realistic looking flame on the Skingrad bridge walkway to the castle.

All shaders regarding Oblivion are open. They can be replaced with better shaders. Lighting, water, parallax mapping. There are mods that change Oblivion shaders already, iirc.

Hm, lighting effects. I hope that also includes static light-beam statics that come from holes in caves. That'd be pretty awesome to replace.
User avatar
Lillian Cawfield
 
Posts: 3387
Joined: Thu Nov 30, 2006 6:22 pm

Post » Mon Oct 11, 2010 6:40 pm

The problem is they are all in ASM which makes figuring out what they do an extremely difficult job.

Not only that, you can only play around with the inputs the original shader had. Can't yet add, say, your own textures or get access to other information, like the WorldViewProjection matrix, without doing some very hardcoe hacking. This puts a limit on some of the effects you could do.
User avatar
Alisia Lisha
 
Posts: 3480
Joined: Tue Dec 05, 2006 8:52 pm

Post » Mon Oct 11, 2010 10:10 pm

In a normal mapping shaders, the inputs would be standard. With same inputs you can do,
basic bump-mapping,
parallax mapping,
cone-relief mapping.
With only changing the core algorithm. I can be wrong though.

In a basic water shader, again you will have some standard inputs, you can change it to some extend. You can't add foam for example without some hacking, but it should still give us some room for improvement.

So, can we start to document Oblivion shaders? If we can at least differentiate inputs and outputs, and convert/update them into HLSL, that would be great. We can start from simplest recreation and work our way from there.

One more con though, there are like hundreds of them. Wishful thinking?
User avatar
loste juliana
 
Posts: 3417
Joined: Sun Mar 18, 2007 7:37 pm

Post » Tue Oct 12, 2010 12:15 am

...
Hm, lighting effects. I hope that also includes static light-beam statics that come from holes in caves. That'd be pretty awesome to replace.


Well, those aren't really lighting effects... those are .nifs. As you say, they're static objects.

[EDIT] @vtastek: What's cone-relief mapping?
User avatar
Music Show
 
Posts: 3512
Joined: Sun Sep 09, 2007 10:53 am

Post » Mon Oct 11, 2010 12:01 pm

Well, those aren't really lighting effects... those are .nifs. As you say, they're static objects.

[EDIT] @vtastek: What's cone-relief mapping?

Something that looks better and runs better than parallax mapping. :)
http://www.brunoevangelista.com/shaders.html
User avatar
Isaac Saetern
 
Posts: 3432
Joined: Mon Jun 25, 2007 6:46 pm

Post » Mon Oct 11, 2010 2:04 pm

I have seen a Shader list around ones that gave insight to what each Shader did / affects.

Do you have that list I am referring to or do I need to look it up.
User avatar
lolly13
 
Posts: 3349
Joined: Tue Jul 25, 2006 11:36 am

Post » Mon Oct 11, 2010 5:21 pm

First of all let me thank you for your astonishing work on Obge!

I′ve started using the the ENBColorEffect.fx and the first time i started Oblivion and was spawned in the woods at midday it was almost a photoreal experience. I′m loving it!

But since i′m using Darker Nights and Darker Dungeons as well i′m having problems to spot anything at night. It′s really immersive and probably pretty realisitic, but i would still like to alter the values of the enbshader to be a bit more brighter.

Any hints on how i could tune the shader to aproach my needs?

Thanks in advance!

Greetings,

Sin
User avatar
Nathan Hunter
 
Posts: 3464
Joined: Sun Apr 29, 2007 9:58 am

Post » Mon Oct 11, 2010 5:14 pm

First of all let me thank you for your astonishing work on Obge!

I′ve started using the the ENBColorEffect.fx and the first time i started Oblivion and was spawned in the woods at midday it was almost a photoreal experience. I′m loving it!

But since i′m using Darker Nights and Darker Dungeons as well i′m having problems to spot anything at night. It′s really immersive and probably pretty realisitic, but i would still like to alter the values of the enbshader to be a bit more brighter.

Any hints on how i could tune the shader to aproach my needs?

Thanks in advance!

Greetings,

Sin


If you open up the shader file, there's a bunch of settings in there at the top that can be tweaked. I have no idea what they do really, since I never actually used ENB myself. A couple of the variables still have their original names - F0 and F9 are the keys that you would have pressed in ENB to change them respectively, but I forgot to keep the original names of the others. Maybe I'll add them in the next chance I get to work on shader stuff.
User avatar
Your Mum
 
Posts: 3434
Joined: Sun Jun 25, 2006 6:23 pm

Post » Mon Oct 11, 2010 5:26 pm

Is the bug where transparency is not working for the player being fixed?
User avatar
Ash
 
Posts: 3392
Joined: Tue Jun 13, 2006 8:59 am

Post » Mon Oct 11, 2010 1:07 pm

If you open up the shader file, there's a bunch of settings in there at the top that can be tweaked. I have no idea what they do really, since I never actually used ENB myself. A couple of the variables still have their original names - F0 and F9 are the keys that you would have pressed in ENB to change them respectively, but I forgot to keep the original names of the others. Maybe I'll add them in the next chance I get to work on shader stuff.


Ty for that fast reply. I will try and fiddle some more with the settings.

It′s way better than "standalone" enb series as it only gives the one desired effect i was looking for with little to none noticeable performance loss.
But what exactly is this shader? Is this a real ambient occlusion shader or is that effect just simulated?
User avatar
Channing
 
Posts: 3393
Joined: Thu Nov 30, 2006 4:05 pm

Post » Tue Oct 12, 2010 12:39 am

Is the bug where transparency is not working for the player being fixed?


Well, Scanti would have to have visited for him to know about it, and AFAIK he hasn't, so no, not yet. Once he does know about it though, I can't see him not trying to fix it.

For the last month or so, I'd imagine that everybody working on this has been busy with other stuff. I certainly haven't touched shader stuff since about March, and there has been relatively little activity besides bug reporting, so it looks like everybody else is in the same boat somewhat. Once our other stuff has been sorted out though, you can expect us to actually do some work on this. :P

EDIT: @ vtastek: What are you using to read the shader packages? Timeslip's program won't work for me. :(

Error info when I open a pack in ShaderEdit and try to read a shader:
Spoiler
************** Exception Text **************
System.BadImageFormatException: An attempt was made to load a program with an incorrect format. (Exception from HRESULT: 0x8007000B)
at ShaderEdit.MainForm.Disasm(Byte[] data, Int32 len, Byte Color)
at ShaderEdit.MainForm.cmbShaderSelect_SelectedIndexChanged(Object sender, EventArgs e)
at System.Windows.Forms.ComboBox.OnSelectedIndexChanged(EventArgs e)
at System.Windows.Forms.ComboBox.WndProc(Message& m)
at System.Windows.Forms.Control.ControlNativeWindow.WndProc(Message& m)
at System.Windows.Forms.NativeWindow.Callback(IntPtr hWnd, Int32 msg, IntPtr wparam, IntPtr lparam)


************** Loaded Assemblies **************
mscorlib
Assembly Version: 2.0.0.0
Win32 Version: 2.0.50727.4927 (NetFXspW7.050727-4900)
CodeBase: file:///C:/Windows/Microsoft.NET/Framework64/v2.0.50727/mscorlib.dll
----------------------------------------
ShaderEdit
Assembly Version: 0.3.0.0
Win32 Version: 0.3.0.0
CodeBase: file:///C:/Users/Oliver/Other/Oblivion%20Modding/OGE/ShaderEdit/ShaderEdit.exe
----------------------------------------
System.Windows.Forms
Assembly Version: 2.0.0.0
Win32 Version: 2.0.50727.4927 (NetFXspW7.050727-4900)
CodeBase: file:///C:/Windows/assembly/GAC_MSIL/System.Windows.Forms/2.0.0.0__b77a5c561934e089/System.Windows.Forms.dll
----------------------------------------
System
Assembly Version: 2.0.0.0
Win32 Version: 2.0.50727.4927 (NetFXspW7.050727-4900)
CodeBase: file:///C:/Windows/assembly/GAC_MSIL/System/2.0.0.0__b77a5c561934e089/System.dll
----------------------------------------
System.Drawing
Assembly Version: 2.0.0.0
Win32 Version: 2.0.50727.4927 (NetFXspW7.050727-4900)
CodeBase: file:///C:/Windows/assembly/GAC_MSIL/System.Drawing/2.0.0.0__b03f5f7f11d50a3a/System.Drawing.dll
----------------------------------------
System.Xml
Assembly Version: 2.0.0.0
Win32 Version: 2.0.50727.4927 (NetFXspW7.050727-4900)
CodeBase: file:///C:/Windows/assembly/GAC_MSIL/System.Xml/2.0.0.0__b77a5c561934e089/System.Xml.dll
----------------------------------------

User avatar
Brian LeHury
 
Posts: 3416
Joined: Tue May 22, 2007 6:54 am

Post » Mon Oct 11, 2010 2:01 pm

...

EDIT: @ vtastek: What are you using to read the shader packages? Timeslip's program won't work for me. :(
...

That you're running a 64 bit OS.

You'll either have to recompile the sdp editor yourself and set it for x86 only, use some sort of .net exe flags editor to change the anycpu flag to x86, or use the version of the sdp editor included in fomm which doesn't have that problem.

:)
User avatar
Adrian Morales
 
Posts: 3474
Joined: Fri Aug 10, 2007 3:19 am

Post » Mon Oct 11, 2010 6:12 pm

:)


Looks like I'll have to use FOMM, as the source code isn't available any more/yet, as the only links I can find to that are hosted on his chorrol.com site, which is no longer accessible, and it doesn't appear he's uploaded it to SourceForge yet.

Cheers. :)

EDIT: Wait, I don't have FO3, so I can't use FOMM either. I guess I could piece together what I need to get a shader editor from FOMM's source code though. :shrug: Where there's a will, there's a way.
User avatar
Laura Wilson
 
Posts: 3445
Joined: Thu Oct 05, 2006 3:57 pm

Post » Mon Oct 11, 2010 3:51 pm

EDIT: @ vtastek: What are you using to read the shader packages? Timeslip's program won't work for me. :(

The Fallout 3 Mod Manager SDP Editor was the one I was using to edit Oblivion's shader packages before, since the stand-alone editor for Oblivion wasn't working for me. Perhaps it will work for you?
User avatar
Pumpkin
 
Posts: 3440
Joined: Sun Jun 25, 2006 10:23 am

Post » Tue Oct 12, 2010 3:18 am

I believe I've got the tool's source - Will see if I can find it.
User avatar
Brad Johnson
 
Posts: 3361
Joined: Thu May 24, 2007 7:19 pm

Post » Mon Oct 11, 2010 2:31 pm

I believe I've got the tool's source - Will see if I can find it.


It's OK, I just changed the cpu flag to 32 bit using CorFlags. Now I can finally start to see what Oblivion's doing. Just as soon as I find the time...
User avatar
Valerie Marie
 
Posts: 3451
Joined: Wed Aug 15, 2007 10:29 am

Post » Mon Oct 11, 2010 2:26 pm

Windows Seven 64
8800GTS 640mo
OBGEv2 log:
Spoiler

Ingnoring message.
Pre Hook
RESZ not supported.
Depth buffer texture (INTZ) (1280,1024) created OK.
Depth buffer attached OK. 0
Ingnoring message.
Received load game message.
Loading a game.
Creating vertex buffers.
Creating shader textures.
Width = 1280, Height = 1024
Setting shader surfaces.
Setting depth texture.
Loading the shaders.
Loading shader (data\shaders\-SSAO)
Failed to load.
Loading shader (data\shaders\-Depth Of Field)
Failed to load.
Loading shader (data\shaders\-Godrays)
Failed to load.
Loading shader (data\shaders\-CelShader+EdgeAA)
Failed to load.
Loading shader (data\shaders\-ColorEffects)
Failed to load.
Loading shader (data\shaders\-ColorMood)
Failed to load.
Loading shader (data\shaders\-ENBColorEffect)
Failed to load.
Added to list OK.
Loading the shaders.
Loading shader (data\shaders\-SSAO)
Failed to load.
Loading shader (data\shaders\-Depth Of Field)
Failed to load.
Loading shader (data\shaders\-Godrays)
Failed to load.
Loading shader (data\shaders\-CelShader+EdgeAA)
Failed to load.
Loading shader (data\shaders\-ColorEffects)
Failed to load.
Loading shader (data\shaders\-ColorMood)
Failed to load.
Loading shader (data\shaders\-ENBColorEffect)
Failed to load.
Save file links 0 textures.
Shader Index = 8
Shader num = 0
Filename = ssao_perf.fx
Enabled = 0
RefID = 3000800
Is in use = 1
Loading shader (data\shaders\ssao_perf.fx)
Float rcpres = 0.000781(1)
Float m44proj = 0.000000(1)
Setting effects screen texture.
Inserting the shader into the list.
Shader num = 1
Filename = ssao_test.fx
Enabled = 0
RefID = 3000800
Is in use = 1
Loading shader (data\shaders\ssao_test.fx)
Found filename : ssao\RandomNoiseB.dds
Loading texture (data\textures\ssao\RandomNoiseB.dds)
Float rcpres = 0.000781(1)
Float m44proj = 0.000000(1)
Setting effects screen texture.
Inserting the shader into the list.
Shader num = 2
Filename = DepthOfField.fx
Enabled = 0
RefID = 3000800
Is in use = 1
Loading shader (data\shaders\DepthOfField.fx)
Float DoFAmount = 0.050000(1)
Float FullFocusRange = 0.100000(1)
Float NoFocusRange = 0.600000(1)
Int DepthPower = 0(1)
Float FocusPoint = 0.500000(1)
Float rcpres = 0.000781(1)
Float f4Time = 0.000000(1)
Float m44proj = 0.000000(1)
Setting effects screen texture.
Inserting the shader into the list.
Shader num = 3
Filename = Godrays.fx
Enabled = 0
RefID = 3000800
Is in use = 1
Loading shader (data\shaders\Godrays.fx)
Float morningshaftex = 0.040000(1)
Float eveningshaftex = 0.200000(1)
Float goldendecay = 0.990000(1)
Float noonshaftex = 0.490000(1)
Float noondecay = 0.630000(1)
Float moonshaftex = 0.090000(1)
Float moondecay = 0.880000(1)
Float startsunrise = 4.000000(1)
Float endsunrise = 10.000000(1)
Float startevening = 17.000000(1)
Float endevening = 21.000000(1)
Float Density = 0.900000(1)
Float Weight = 0.440000(1)
Float m44view = 0.000000(1)
Float f3EyeForward = 0.000000(1)
Float f4SunDir = 0.000000(1)
Float rcpres = 0.000781(1)
Float f4Time = 0.000000(1)
Float t = 0.767327(1)
Float gScaleFactor = 1.500000(1)
Float gWeights3x3 = 0.062500(9)
Setting effects screen texture.
Inserting the shader into the list.
Shader num = 4
Filename = CelShader+EdgeAA.fx
Enabled = 0
RefID = 3000800
Is in use = 1
Loading shader (data\shaders\CelShader+EdgeAA.fx)
Float rcpres = 0.000781(2)
Float edgeStrength = 15.000000(1)
Float edgeAABlurAmt = 0.040000(1)
Float blurCoordWG = -2.000000(8)
Float blurMagnitudeWG = 1.000000(8)
Float blurCoord = 1.000000(12)
Float blurMagnitude = 1.000000(12)
Setting effects screen texture.
Inserting the shader into the list.
Shader num = 5
Filename = ColorEffects.fx
Enabled = 0
RefID = 3000800
Is in use = 1
Loading shader (data\shaders\ColorEffects.fx)
Float Saturation = 1.000000(1)
Float Brightness = 1.000000(1)
Float Contrast = 1.000000(1)
Float GContrast = 1.000000(1)
Float GBrightness = 1.000000(1)
Float FGIntensity = 0.000000(1)
Float BHMagnitude = 10.000000(1)
Float BHBrightness = 4.000000(1)
Float f4Time = 0.000000(1)
Float greyscale = 0.299000(1)
Float rcpres = 0.000781(1)
Setting effects screen texture.
Inserting the shader into the list.
Shader num = 6
Filename = ColorMood.fx
Enabled = 0
RefID = 3000800
Is in use = 1
Loading shader (data\shaders\ColorMood.fx)
Float fRatio = 0.800000(1)
Float moodR = 0.400000(1)
Float moodG = 0.270000(1)
Float moodB = 0.330000(1)
Setting effects screen texture.
Inserting the shader into the list.
Shader num = 7
Filename = obsharpen.fx
Enabled = 0
RefID = 3000800
Is in use = 1
Loading shader (data\shaders\obsharpen.fx)
Float sharpval = 8.000000(1)
Setting effects screen texture.
Inserting the shader into the list.
Alt Render target - width = 1280, height = 1024
Shader (ssao_perf.fx) - Script refID = 3000800
Loading shader that already exists. Returning index of existing shader.
Shader (ssao_test.fx) - Script refID = 3000800
Loading shader that already exists. Returning index of existing shader.
Shader (DepthOfField.fx) - Script refID = 3000800
Loading shader that already exists. Returning index of existing shader.
Shader (Godrays.fx) - Script refID = 3000800
Loading shader that already exists. Returning index of existing shader.
Shader (CelShader+EdgeAA.fx) - Script refID = 3000800
Loading shader that already exists. Returning index of existing shader.
Shader (ColorEffects.fx) - Script refID = 3000800
Loading shader that already exists. Returning index of existing shader.
Shader (ColorMood.fx) - Script refID = 3000800
Loading shader that already exists. Returning index of existing shader.
Shader (obsharpen.fx) - Script refID = 3000800
Loading shader that already exists. Returning index of existing shader.
Alt Render target - width = 1280, height = 1024
Alt Render target - width = 1280, height = 1024
Alt Render target - width = 1280, height = 1024
Alt Render target - width = 1280, height = 1024
Received ExitGame message.
Calling Release Device
Releasing thisframe surface.
Releasing thisframe texture.
Releasing lastpass surface.
Releasing lastpass texture.
Releasing lastframe surface.
Releasing lastframe texture.
Releasing shader vertex buffer.

OBSE log
Spoiler

OBSE: initialize (version = 18.6 010201A0)
oblivion root = C:\Bethesda Softworks\Oblivion\
plugin directory = C:\Bethesda Softworks\Oblivion\Data\OBSE\Plugins\
checking plugin C:\Bethesda Softworks\Oblivion\Data\OBSE\Plugins\\Elys_USV.dll
plugin C:\Bethesda Softworks\Oblivion\Data\OBSE\Plugins\\Elys_USV.dll (00000001 Elys_USV 0000005D) loaded correctly
checking plugin C:\Bethesda Softworks\Oblivion\Data\OBSE\Plugins\\FastExit2.dll
plugin C:\Bethesda Softworks\Oblivion\Data\OBSE\Plugins\\FastExit2.dll (00000001 FastExit 00000002) loaded correctly
checking plugin C:\Bethesda Softworks\Oblivion\Data\OBSE\Plugins\\OBGEv2.dll
SetOpcodeBase 00002100
RegisterCommand 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)
RegisterCommand IsShaderEnabled (2114)
plugin C:\Bethesda Softworks\Oblivion\Data\OBSE\Plugins\\OBGEv2.dll (00000001 OBGEv2 00000003) loaded correctly
checking plugin C:\Bethesda Softworks\Oblivion\Data\OBSE\Plugins\\OBSE_Elys_Pluggy.dll
SetOpcodeBase 00002330
RegisterCommand 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 00002378
RegisterCommand 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 000023B0
RegisterCommand 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)
SetOpcodeBase 000023FF
RegisterCommand PlgySpcl (23FF)
plugin C:\Bethesda Softworks\Oblivion\Data\OBSE\Plugins\\OBSE_Elys_Pluggy.dll (00000001 OBSE_Elys_Pluggy 0000007D) loaded correctly
checking plugin C:\Bethesda Softworks\Oblivion\Data\OBSE\Plugins\\sr_Oblivion_Stutter_Remover.dll
plugin C:\Bethesda Softworks\Oblivion\Data\OBSE\Plugins\\sr_Oblivion_Stutter_Remover.dll (00000001 sr_Oblivion_Stutter_Remover 00004100) loaded correctly
patched
DoLoadGameHook: C:\Users\OlG\Documents\My Games\Oblivion\Saves\autosave.ess
loading from C:\Users\OlG\Documents\My Games\Oblivion\Saves\autosave.obse
Loading strings
Loading array variables
plugin didn't finish reading chunk
plugin didn't finish reading chunk
plugin didn't finish reading chunk
plugin didn't finish reading chunk
plugin didn't finish reading chunk
plugin didn't finish reading chunk
plugin didn't finish reading chunk
plugin didn't finish reading chunk
plugin did not read all of its data (at 0000000000005D53 expected 0000000000005D54)

Shaderlist:
Spoiler

-SSAO
-Depth Of Field
-Godrays
-CelShader+EdgeAA
-ColorEffects
-ColorMood
-ENBColorEffect


Got some disturbing bugs.
The only way to get rid of them is to remove OBGEv2.dll, just disabling the support esp isn't enough.

  • With OBGEv2.dll FastExist doesn't function as it should, on exit the game crashes but I got the windows notice searching solution etc...
  • As previous posters I can't see my immersed body parts in water or/and in rays of light. http://img294.imageshack.us/img294/875/oblivion201005282133592.jpg showing the bug in a light shaft.
  • This one is a game breaking: While blocking (might happen during other shaking effects I guess) The screen starts to flicker and i can't see a damn thing. It's like another image is rendered alternatively on top of what's currently happening.
    This image is an image of the last container i opened (Or cell transition used).
    Example: http://img256.imageshack.us/img256/3365/oblivion201005282134536.jpg and http://img171.imageshack.us/img171/1516/oblivion201005282134464.jpg were taken at the same time, as you can see, the name rat appearing on Renault's body is the one I'm blocking in the previous screen a few meters away.


Otherwise OBGE Shaders work great (Well i can't handle SSAO but that's another story :P ), and I will be a sad panda if I have to give up on them. :brokencomputer:

Note: these bugs happen also without any shader activated and/or the esp disabled. It seems just the presence of OBGEv2.dll bugs it. :confused:
User avatar
Melissa De Thomasis
 
Posts: 3412
Joined: Tue Feb 27, 2007 6:52 pm

Post » Mon Oct 11, 2010 10:18 pm

Windows Seven 64
8800GTS 640mo
OBGEv2 log:
Spoiler

Ingnoring message.
Pre Hook
RESZ not supported.
Depth buffer texture (INTZ) (1280,1024) created OK.
Depth buffer attached OK. 0
Ingnoring message.
Received load game message.
Loading a game.
Creating vertex buffers.
Creating shader textures.
Width = 1280, Height = 1024
Setting shader surfaces.
Setting depth texture.
Loading the shaders.
Loading shader (data\shaders\-SSAO)
Failed to load.
Loading shader (data\shaders\-Depth Of Field)
Failed to load.
Loading shader (data\shaders\-Godrays)
Failed to load.
Loading shader (data\shaders\-CelShader+EdgeAA)
Failed to load.
Loading shader (data\shaders\-ColorEffects)
Failed to load.
Loading shader (data\shaders\-ColorMood)
Failed to load.
Loading shader (data\shaders\-ENBColorEffect)
Failed to load.
Added to list OK.
Loading the shaders.
Loading shader (data\shaders\-SSAO)
Failed to load.
Loading shader (data\shaders\-Depth Of Field)
Failed to load.
Loading shader (data\shaders\-Godrays)
Failed to load.
Loading shader (data\shaders\-CelShader+EdgeAA)
Failed to load.
Loading shader (data\shaders\-ColorEffects)
Failed to load.
Loading shader (data\shaders\-ColorMood)
Failed to load.
Loading shader (data\shaders\-ENBColorEffect)
Failed to load.
Save file links 0 textures.
Shader Index = 8
Shader num = 0
Filename = ssao_perf.fx
Enabled = 0
RefID = 3000800
Is in use = 1
Loading shader (data\shaders\ssao_perf.fx)
Float rcpres = 0.000781(1)
Float m44proj = 0.000000(1)
Setting effects screen texture.
Inserting the shader into the list.
Shader num = 1
Filename = ssao_test.fx
Enabled = 0
RefID = 3000800
Is in use = 1
Loading shader (data\shaders\ssao_test.fx)
Found filename : ssao\RandomNoiseB.dds
Loading texture (data\textures\ssao\RandomNoiseB.dds)
Float rcpres = 0.000781(1)
Float m44proj = 0.000000(1)
Setting effects screen texture.
Inserting the shader into the list.
Shader num = 2
Filename = DepthOfField.fx
Enabled = 0
RefID = 3000800
Is in use = 1
Loading shader (data\shaders\DepthOfField.fx)
Float DoFAmount = 0.050000(1)
Float FullFocusRange = 0.100000(1)
Float NoFocusRange = 0.600000(1)
Int DepthPower = 0(1)
Float FocusPoint = 0.500000(1)
Float rcpres = 0.000781(1)
Float f4Time = 0.000000(1)
Float m44proj = 0.000000(1)
Setting effects screen texture.
Inserting the shader into the list.
Shader num = 3
Filename = Godrays.fx
Enabled = 0
RefID = 3000800
Is in use = 1
Loading shader (data\shaders\Godrays.fx)
Float morningshaftex = 0.040000(1)
Float eveningshaftex = 0.200000(1)
Float goldendecay = 0.990000(1)
Float noonshaftex = 0.490000(1)
Float noondecay = 0.630000(1)
Float moonshaftex = 0.090000(1)
Float moondecay = 0.880000(1)
Float startsunrise = 4.000000(1)
Float endsunrise = 10.000000(1)
Float startevening = 17.000000(1)
Float endevening = 21.000000(1)
Float Density = 0.900000(1)
Float Weight = 0.440000(1)
Float m44view = 0.000000(1)
Float f3EyeForward = 0.000000(1)
Float f4SunDir = 0.000000(1)
Float rcpres = 0.000781(1)
Float f4Time = 0.000000(1)
Float t = 0.767327(1)
Float gScaleFactor = 1.500000(1)
Float gWeights3x3 = 0.062500(9)
Setting effects screen texture.
Inserting the shader into the list.
Shader num = 4
Filename = CelShader+EdgeAA.fx
Enabled = 0
RefID = 3000800
Is in use = 1
Loading shader (data\shaders\CelShader+EdgeAA.fx)
Float rcpres = 0.000781(2)
Float edgeStrength = 15.000000(1)
Float edgeAABlurAmt = 0.040000(1)
Float blurCoordWG = -2.000000(8)
Float blurMagnitudeWG = 1.000000(8)
Float blurCoord = 1.000000(12)
Float blurMagnitude = 1.000000(12)
Setting effects screen texture.
Inserting the shader into the list.
Shader num = 5
Filename = ColorEffects.fx
Enabled = 0
RefID = 3000800
Is in use = 1
Loading shader (data\shaders\ColorEffects.fx)
Float Saturation = 1.000000(1)
Float Brightness = 1.000000(1)
Float Contrast = 1.000000(1)
Float GContrast = 1.000000(1)
Float GBrightness = 1.000000(1)
Float FGIntensity = 0.000000(1)
Float BHMagnitude = 10.000000(1)
Float BHBrightness = 4.000000(1)
Float f4Time = 0.000000(1)
Float greyscale = 0.299000(1)
Float rcpres = 0.000781(1)
Setting effects screen texture.
Inserting the shader into the list.
Shader num = 6
Filename = ColorMood.fx
Enabled = 0
RefID = 3000800
Is in use = 1
Loading shader (data\shaders\ColorMood.fx)
Float fRatio = 0.800000(1)
Float moodR = 0.400000(1)
Float moodG = 0.270000(1)
Float moodB = 0.330000(1)
Setting effects screen texture.
Inserting the shader into the list.
Shader num = 7
Filename = obsharpen.fx
Enabled = 0
RefID = 3000800
Is in use = 1
Loading shader (data\shaders\obsharpen.fx)
Float sharpval = 8.000000(1)
Setting effects screen texture.
Inserting the shader into the list.
Alt Render target - width = 1280, height = 1024
Shader (ssao_perf.fx) - Script refID = 3000800
Loading shader that already exists. Returning index of existing shader.
Shader (ssao_test.fx) - Script refID = 3000800
Loading shader that already exists. Returning index of existing shader.
Shader (DepthOfField.fx) - Script refID = 3000800
Loading shader that already exists. Returning index of existing shader.
Shader (Godrays.fx) - Script refID = 3000800
Loading shader that already exists. Returning index of existing shader.
Shader (CelShader+EdgeAA.fx) - Script refID = 3000800
Loading shader that already exists. Returning index of existing shader.
Shader (ColorEffects.fx) - Script refID = 3000800
Loading shader that already exists. Returning index of existing shader.
Shader (ColorMood.fx) - Script refID = 3000800
Loading shader that already exists. Returning index of existing shader.
Shader (obsharpen.fx) - Script refID = 3000800
Loading shader that already exists. Returning index of existing shader.
Alt Render target - width = 1280, height = 1024
Alt Render target - width = 1280, height = 1024
Alt Render target - width = 1280, height = 1024
Alt Render target - width = 1280, height = 1024
Received ExitGame message.
Calling Release Device
Releasing thisframe surface.
Releasing thisframe texture.
Releasing lastpass surface.
Releasing lastpass texture.
Releasing lastframe surface.
Releasing lastframe texture.
Releasing shader vertex buffer.

OBSE log
Spoiler

OBSE: initialize (version = 18.6 010201A0)
oblivion root = C:\Bethesda Softworks\Oblivion\
plugin directory = C:\Bethesda Softworks\Oblivion\Data\OBSE\Plugins\
checking plugin C:\Bethesda Softworks\Oblivion\Data\OBSE\Plugins\\Elys_USV.dll
plugin C:\Bethesda Softworks\Oblivion\Data\OBSE\Plugins\\Elys_USV.dll (00000001 Elys_USV 0000005D) loaded correctly
checking plugin C:\Bethesda Softworks\Oblivion\Data\OBSE\Plugins\\FastExit2.dll
plugin C:\Bethesda Softworks\Oblivion\Data\OBSE\Plugins\\FastExit2.dll (00000001 FastExit 00000002) loaded correctly
checking plugin C:\Bethesda Softworks\Oblivion\Data\OBSE\Plugins\\OBGEv2.dll
SetOpcodeBase 00002100
RegisterCommand 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)
RegisterCommand IsShaderEnabled (2114)
plugin C:\Bethesda Softworks\Oblivion\Data\OBSE\Plugins\\OBGEv2.dll (00000001 OBGEv2 00000003) loaded correctly
checking plugin C:\Bethesda Softworks\Oblivion\Data\OBSE\Plugins\\OBSE_Elys_Pluggy.dll
SetOpcodeBase 00002330
RegisterCommand 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 00002378
RegisterCommand 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 000023B0
RegisterCommand 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)
SetOpcodeBase 000023FF
RegisterCommand PlgySpcl (23FF)
plugin C:\Bethesda Softworks\Oblivion\Data\OBSE\Plugins\\OBSE_Elys_Pluggy.dll (00000001 OBSE_Elys_Pluggy 0000007D) loaded correctly
checking plugin C:\Bethesda Softworks\Oblivion\Data\OBSE\Plugins\\sr_Oblivion_Stutter_Remover.dll
plugin C:\Bethesda Softworks\Oblivion\Data\OBSE\Plugins\\sr_Oblivion_Stutter_Remover.dll (00000001 sr_Oblivion_Stutter_Remover 00004100) loaded correctly
patched
DoLoadGameHook: C:\Users\OlG\Documents\My Games\Oblivion\Saves\autosave.ess
loading from C:\Users\OlG\Documents\My Games\Oblivion\Saves\autosave.obse
Loading strings
Loading array variables
plugin didn't finish reading chunk
plugin didn't finish reading chunk
plugin didn't finish reading chunk
plugin didn't finish reading chunk
plugin didn't finish reading chunk
plugin didn't finish reading chunk
plugin didn't finish reading chunk
plugin didn't finish reading chunk
plugin did not read all of its data (at 0000000000005D53 expected 0000000000005D54)

Shaderlist:
Spoiler

-SSAO
-Depth Of Field
-Godrays
-CelShader+EdgeAA
-ColorEffects
-ColorMood
-ENBColorEffect


Got some disturbing bugs.
The only way to get rid of them is to remove OBGEv2.dll, just disabling the support esp isn't enough.

  • With OBGEv2.dll FastExist doesn't function as it should, on exit the game crashes but I got the windows notice searching solution etc...
  • As previous posters I can't see my immersed body parts in water or/and in rays of light. http://img294.imageshack.us/img294/875/oblivion201005282133592.jpg showing the bug in a light shaft.
  • This one is a game breaking: While blocking (might happen during other shaking effects I guess) The screen starts to flicker and i can't see a damn thing. It's like another image is rendered alternatively on top of what's currently happening.
    This image is an image of the last container i opened (Or cell transition used).
    Example: http://img256.imageshack.us/img256/3365/oblivion201005282134536.jpg and http://img171.imageshack.us/img171/1516/oblivion201005282134464.jpg were taken at the same time, as you can see, the name rat appearing on Renault's body is the one I'm blocking in the previous screen a few meters away.


Otherwise OBGE Shaders work great (Well i can't handle SSAO but that's another story :P ), and I will be a sad panda if I have to give up on them. :brokencomputer:

Note: these bugs happen also without any shader activated and/or the esp disabled. It seems just the presence of OBGEv2.dll bugs it. :confused:


I think I've heard of the third bug before, in a completely unrelated set of circumstances. Some (I think it was a quest) mod was making the screen shake non-stop. Why don't you PYLO and I'll see if I can spot anything.
User avatar
Lindsay Dunn
 
Posts: 3247
Joined: Sun Sep 10, 2006 9:34 am

Post » Tue Oct 12, 2010 1:12 am

Well i fear you'll will be disappointed :mellow:
I had just reinstalled, testing mods to prepare a future install nicely BAINed.
I came across this bug i couldn't get rid of while testing different things before and didn't suspect OBGE. It was firing each time I was activating the scout Bithsign from RBP and each time I was activating a container. So i wiped the whole thing and reinstalled. Just this time it occurred to me it was connected with OBGE.
Spoiler
Active Mod Files:00  Oblivion.esm01  Unofficial Oblivion Patch.esp  [Version 3.2.6]02  Oblivion Citadel Door Fix.esp03  LoadingScreens.esp04  Display Stats.esp  [Version 1.1.1]05  Bashed Patch, 0.esp06  Oblivion Graphics Extender Support.esp  [Version 0.2]

Otherwise i have a fulled DarkUI Darn BAIN installed, just tested with it uninstalled and a new char but same problem arise.

My Oblivion is v1.2.0416 no DLC no SI, UOP 320 & Suplemental 326.
OBSE, OSR, Elys Universal Silent Voice, FastExit and Pluggy all re-downloaded the 04 may.

I dunno I'll try to unintall/clean it all and just reinstall Oblivion+patch+UOP& Supplemental, OBSE and OBGEv2 and see what happen.
User avatar
elliot mudd
 
Posts: 3426
Joined: Wed May 09, 2007 8:56 am

Post » Mon Oct 11, 2010 6:27 pm

Well i fear you'll will be disappointed :mellow:
I had just reinstalled, testing mods to prepare a future install nicely BAINed.
I came across this bug i couldn't get rid of while testing different things before and didn't suspect OBGE. It was firing each time I was activating the scout Bithsign from RBP and each time I was activating a container. So i wiped the whole thing and reinstalled. Just this time it occurred to me it was connected with OBGE.
Spoiler
Active Mod Files:00  Oblivion.esm01  Unofficial Oblivion Patch.esp  [Version 3.2.6]02  Oblivion Citadel Door Fix.esp03  LoadingScreens.esp04  Display Stats.esp  [Version 1.1.1]05  Bashed Patch, 0.esp06  Oblivion Graphics Extender Support.esp  [Version 0.2]

Otherwise i have a fulled DarkUI Darn BAIN installed, just tested with it uninstalled and a new char but same problem arise.

My Oblivion is v1.2.0416 no DLC no SI, UOP 320 & Suplemental 326.
OBSE, OSR, Elys Universal Silent Voice, FastExit and Pluggy all re-downloaded the 04 may.

I dunno I'll try to unintall/clean it all and just reinstall Oblivion+patch+UOP& Supplemental, OBSE and OBGEv2 and see what happen.


You're right, I was disappointed. :(

Looks like it really is an OBGEv2 problem. Can't say I've encountered it though. It'll get looked at eventually now you've reported it though.
User avatar
City Swagga
 
Posts: 3498
Joined: Sat May 12, 2007 1:04 am

Post » Mon Oct 11, 2010 10:22 pm

You're right, I was disappointed. :(

Looks like it really is an OBGEv2 problem. Can't say I've encountered it though. It'll get looked at eventually now you've reported it though.

I've noticed the first two quite often, the third one I haven't witnesed, I'm on Win 7 64 as well...
User avatar
gary lee
 
Posts: 3436
Joined: Tue Jul 03, 2007 7:49 pm

Post » Mon Oct 11, 2010 3:39 pm

Ok I uninstalled everything and deleted every folder tied to Oblivion and/or its utilities to be sure everything was clean.
On a new install with just the 1.2.0416 patch, OBSE and OBGEv2 (no UOP no other utilities, Wrye, OBMM or anything) same thing happens.
I'm sorry I can't help more and I'm also a sad Panda because I'll have to give up on this great tool... :nope:
User avatar
brandon frier
 
Posts: 3422
Joined: Wed Oct 17, 2007 8:47 pm

Post » Mon Oct 11, 2010 6:32 pm

Update: Nailed it down! It's the VSync enabled causing the issue. Disabling it fix it. :facepalm:
(I kept it enabled in Oblivion because of some tearing.)
User avatar
Mélida Brunet
 
Posts: 3440
Joined: Thu Mar 29, 2007 2:45 am

Post » Tue Oct 12, 2010 2:22 am

Now, http://www.youtube.com/watch?v=29ZEvxwq_F8 doesn't have to do with shaders, but you can download it for free, and it works with key-framed animations (which Oblivion uses). I wonder if it's possible to utilize this with Oblivion somehow?

It works by changing the bones and such on the fly.
User avatar
Jason King
 
Posts: 3382
Joined: Tue Jul 17, 2007 2:05 pm

Post » Tue Oct 12, 2010 2:02 am

Well, translating compiled shader assembly back into HLSL is a real pain. Dividing through multiplication of reciprocals, length being the inverse of the inverse square root of a dot product of X (that is no typo, TWO inverses), taking matrix multiplication from 4 dot products to a single HLSL multiply call...

But, after 6 hours of figuring many of the techniques a compiler uses to make the most efficient code it can, I finally translated the vertex shader for PAR2000, one-half of the thirty-five shaders responsible for parallax displacement mapping in Oblivion. Now I know the inputs for both the vertex and pixel shader, and what they look like coming out of the vertex shader. After vtastek mentioned cone-relief mapping, I just had to go and read about it... After a couple of days figuring out how to create the custom assets for cone-relief mapping (and doing it in such a way that Oblivion will still mostly work), I set off to replace a single shader with cone relief mapping, and the textures for great forest rocks to see how it looks.

Well, I haven't gotten that far yet, but here is the HLSL for PAR2000.vso:
Spoiler
row_major float4x4 ModelViewProj : register(c0);float3 LightDirection : register(c13);float4 FogParam : register(c23);float3 FogColor : register(c24);float4 EyePosition : register(c25);struct vertexInput{	float4 pos       : POSITION;	float3 tangent   : TANGENT;	float3 binormal  : BINORMAL;	float3 normal    : NORMAL;	float2 texCoord  : TEXCOORD0;	float4 color     : COLOR0;};struct pixelInput{	float4 pos       : POSITION;	float4 color     : COLOR0;	float4 fogcolor  : COLOR1;	float2 texCoord  : TEXCOORD0;	float3 lightDir  : TEXCOORD1;	float3 cameraDir : TEXCOORD6;};pixelInput simple_vs(vertexInput IN){		float temp1;	float3 temp3;		//Transform light direction to tangent space.	float3x3 tangentMatrix = {IN.binormal,IN.tangent,IN.normal};	temp3 = mul(tangentMatrix, LightDirection);		//Normalize the light direction and output.	OUT.lightDir = normalize(temp3);	//Find camera direction and normalize it.	temp3 = normalize(EyePosition.xyz - IN.pos.xyz);		//Transform the camera vector to tangent space.	temp3 = mul(tangentMatrix, temp3);	OUT.cameraDir = normalize(temp3);		//Transform position of the vertex into clip coordinates	float4 posCS = mul(ModelViewProj, IN.pos);	//...and output.	OUT.pos = posCS;		//Next, calculate the fog attenuation.	temp1 = (FogParam.x - length(posCS.xyz)) / FogParam.y;	temp1 = saturate(temp1);	//Encode the attenuation amount into the fog color's alpha channel.	OUT.fogcolor.rgb = FogColor;	OUT.fogcolor.a = 1.0 - temp1;	//And output the rest of our outputs.	OUT.texCoord = IN.texCoord;	OUT.color = IN.color;	return OUT;}

vtastek is right. It is pretty standard, but now I at least know its all in tangent space, and how fog attenuation was programmed. It was a more difficult task to reverse engineer this than I thought, but hopefully it'll be worth it. I haven't attempted to compile it yet, but it looks right and makes sense. Let me know if there is anything off about it.
User avatar
Luis Reyma
 
Posts: 3361
Joined: Fri Nov 02, 2007 11:10 am

PreviousNext

Return to IV - Oblivion