This thread was created to answer the most commonly asked questions about fakeHDR+AA (as tweaked by me)


Reason for this thread

There were a lot of questions that seemed to be asked over, and over through the last threads.
This is my attempt to answer the most common ones as well as have a place for open discussion on the subject.
Also would love to hear what you've done with it, and see your screenshots.

Who made it possible?

Timeslip created the original fake HDR mod.
Shirosae wrote a different version of the .fx file for that mod.
Nicoroshi, Sir Drake, and many others tweaked that .fx file.

Who will it work for?

(Oblivion specific)

Pretty much anyone who:
Owns a card that doesn't support the in game HDR.
Owns a card that doesn't support HDR+AA.
Who thinks the game's HDR is a little overdone, and would like to have control over how the effects are rendered.

What exactly is it?

It's a post process shader that creates effects like the ones the 'in game' HDR does.

How do I change the effects to what I want?

Shirosae gave a great explaination of the different lines in the .fx file he wrote which can be found in this thread on page 6 post 116

How do I install it?

1. Go >>>Here<<< , and download Timeslip's 'cut down version 1.2' (This is the version the code in the OP is written for).

2.Follow the installation instructions for that mod.
(Basically drop the d3d9.dll file in the Oblivion Directory (where the Oblivion.exe is located), and the fakeHDR.fx file in the Oblivion\Data\Shaders folder).

3. Open the fakeHDR.fx file with notepad. Right click\select all\delete.

4.Copy\Paste the code from the OP of this thread into that folder.

5. Play, and enjoy.

Important Notes:
A.Be sure and uncomment the resolution in the code that you play the game in. (currently it's set for 1280x1024).
B.If using an ATI Graphics card please read Timeslip's readme for details regarding the ATT compatibility patch


How do I get rid of it if I don't like it?

Delete the d3d9.dll file in Program Files\Bethesda Softworks\Oblivion, and the fakeHDR.fx file in Oblivion\Data\Shaders.
This will remove the mod.

Are there any drawbacks?

Yes, but only a few.
1.FPS hit. How much seems to be highly system specific. You won't know for sure until you load it up, and try.
Most systems reported between 3-10 FPS difference between HDR, and Fake HDR+AA.
For those with really high FPS the hit was greater due to a 'soft framerate cap' explained by Shirosae here:

QUOTE
I think what's happening is: The Shader runs once per pixel, per frame.

So at high framerates (and yours certainly are), the shader is working MUCH more often than on my system, for example. Your high screen resolution just compounds the problem.

In effect, the shader causes a soft framerate cap. So yeah, you're right, the shader can only go so fast, because after a certain speed the system requirements to go faster get astronomical.


2. Overbright vendor menu screens. (training, buy/sell, etc.)
Example
Example Dark UI Mod


3.Iris effect affecting screen brightness while closing containers or exiting certain menus.(until the eye adjusts)
Note: The duration, and darkness of this is controlable in the .fx file.

Conclusion

I hope this answers the questions of those who are trying this for the first time without the need to wade through almost 400 posts.
I'm still tweaking the .fx (a little), but believe I've gotten it close to where I'm happy with it.

Current changes to my version of the .fx

1. Increased the vibrance of colors some.
2. Increased the amount of bloom effect.
3. Slowed down the iris effect a little to make it more noticable.

I've always liked the in game HDR, but found it to be overdone.
With this version I've decreased the amount to where I feel it gives the effects without being overblown.

Tastes will vary so play with it until you're happy with it.


Here is the .fx file for the cut down (trimmed) version of Timeslip's mod.

Be sure to uncomment the "static const float2 rcpres = " that matches your in game resolution
NOTE: THE CUT DOWN VERSION RUNS FASTER


CODE
//These variables will get set automatically
texture tex1;
texture tex2;
//float2 rcpres;
float CurrentEye;
//float CurrentBrightness;

sampler s0 = sampler_state { AddressU = Clamp; AddressV = Clamp; texture = <tex1>; };
sampler s1 = sampler_state { texture = <tex2>; };

//Use these to modify the behaviour of the dll
bool SinglePixel=false;
bool AffectMenus=false;
int ToggleKey=107;
int ToggleSinglePixelKey=109;
int ToggleAffectMenusKey=106;
float ReactionSpeed=0.95;

//Current Settings
static const float BloomScale = 0.65;
static const float HDRScale = -0.38;
static const float HDRAdjust = -0.10;

//rcpres must be set to the reciprical of your screen resolution
//static const float2 rcpres = { 0.0015625, 0.0020833333333 };    //640x480
//static const float2 rcpres = { 0.00125, 0.0016666666667 };    //800x600
//static const float2 rcpres = { 0.0009765625, 0.0013020833 };    //1024x768
//static const float2 rcpres = { 0.000625, 0.0008333333333 };    //1600x1200
static const float2 rcpres = { 0.00078125, 0.0009765625 };     //1280x1024

float2 PixelKernelH[13] =
{
    { -6, 0 },
    { -5, 0 },
    { -4, 0 },
    { -3, 0 },
    { -2, 0 },
    { -1, 0 },
    {  0, 0 },
    {  1, 0 },
    {  2, 0 },
    {  3, 0 },
    {  4, 0 },
    {  5, 0 },
    {  6, 0 },
};

float2 PixelKernelV[13] =
{
    { 0, -6 },
    { 0, -5 },
    { 0, -4 },
    { 0, -3 },
    { 0, -2 },
    { 0, -1 },
    { 0,  0 },
    { 0,  1 },
    { 0,  2 },
    { 0,  3 },
    { 0,  4 },
    { 0,  5 },
    { 0,  6 },
};

static const float BlurWeights[13] =
{
    0.002216,
    0.008764,
    0.026995,
    0.064759,
    0.120985,
    0.176033,
    0.199471,
    0.176033,
    0.120985,
    0.064759,
    0.026995,
    0.008764,
    0.002216,
};


float4 Bloom( in float2 Tex : TEXCOORD0 ) : COLOR0
{
    float4 Color = tex2D( s0, Tex );
    float tempHDRScale=(0.70*smoothstep(0.00,0.75,CurrentEye))+HDRScale;
    float4 Color2=0;    
    for (int i = 0; i < 13; i++)
    {    
        Color2 += tex2D( s1, Tex + (PixelKernelH[i]*rcpres) ) * BlurWeights[i];
          Color2 += tex2D( s1, Tex + (PixelKernelV[i]*rcpres) ) * BlurWeights[i];
    }
    float4 Curvemod = (0.70*Color);
    Color = clamp((0.30*Color)+((0.70-Curvemod+tempHDRScale)*pow(Color,2))+((Curvemod-tempHDRScale)*(1-pow((1-Color),2))),0,1);
    Color2 *= (BloomScale-(0.00*CurrentEye));
    return clamp(Color + Color2,0,1);
}

float4 HDRBrightPass( in float2 Tex : TEXCOORD0 ) : COLOR0
{
    float4 color = tex2D( s0, Tex );
    float tempbright = clamp((0.27*color[1])+(0.67*color[2])+(0.06*color[3]),0,1);
    float HDRAdjustBias = (0.18*pow((1-CurrentEye),3));
    float curvemod = (0.25*tempbright);
    float4 colorbias = (1-pow((1-color),2));
    float4 adjust = clamp(((color-CurrentEye)-HDRAdjust-(HDRAdjustBias)),0,1);
    color = clamp((8*pow(adjust,5)),0,1);
    //color += clamp(tex2D( s1, Tex ) - (2*(CurrentEye + 0.10)) ,0,0.75); //Uncomment this line for retina burn
    color = clamp(((1-curvemod+HDRAdjustBias)*color)+((curvemod-HDRAdjustBias)*colorbias),0,1);
    color.a = 1;
    return color;
}

technique T0
{
    pass p0 { PixelShader = compile ps_2_0 HDRBrightPass(); }
    pass p1 { PixelShader = compile ps_2_0 Bloom();    }
}


Here are a couple of screenshots with the .fx file above.
Imp
Deer
Lava River
Mytic Dawn Hideout
Clannfear Runt
Sunset
Ruins
Sigrid

Since tastes vary.........
One of our members (Kekkonen) started a thread on Digital Vibrance that works well with the fakeHDR mod to add more color.
Personally I like the setting at just above none to add more color, and vibrance without running into the problems of shadowed areas going black, and textureless by tweaking the HDRscale value too low.
Play with it, and find what works for you.
ARrrrg...i need 300 more dollars for my new rig...my screenshots with this computer look HORRIBLE compared to yours lol, again, nice job ^^.
My 7900GTX busted when i installed the 9x.xx drivers. eVGA are nice enough to be doing a mass "recall" of sorts atm. Gonna Cross-ship me a new card.

Once my PC is working again, ill be at it in the fx file.
i have modified the bloom effects in the .ini file, so do i have to undo them when I use this mod?
thanks
Nope Radeon. When you "install" this . Just turn off Bloom, so that Bloom and HDR option is set to off or none.
You can add bloom if you would like (at the cost of a couple of FPS) for more options to control the way it looks.
Personally I started with Bloom enabled, but now run with Bloom turned off because you can control the bloom effect from inside the fakeHDR shader.
Like Macc says. Bloom isn't required.
Nicoroshi, I've almost got things tweaked to the point of satisfaction, and I've actually gone back to using bloom on top of Fake HDR (using more in-game bloom and a little less BloomScale creates less text/HUD blur). I was wondering, since you've had experience tweaking bloom, if there's any way to blur the image more without making the whole thing brighter. Any ideas? fAlphaExterior=x just brightens the whole thing... I'm so close. I'll post screens once I'm there.

Thanks in advance,
-SHeLL
I believe that the pixel blur you're going for cannot be reproduced in the .ini under [Blurshader].
This effect is created in the .fx file of fakeHDR though.
Have you tried my latest version of the .fx? It's in the first post of this thread, and has made the vendor menus much more readable (although still a little bright. see example pic in OP).

EDIT: be sure to expand the image to see the true effect. the image is 1280x1024.
BloomScale in the .ini does blur the image, but like Bloom, it distorts all the colors. I just wish there was a way to create blur without bright. Nevertheless, pictures shall come soon...
Funny. I couldn't get the "glow" effect no matter how I tweaked the Bloomscale in the .ini.
Is this the 'blur' you're refering to, or am I misunderstanding the question?
does the overbright HUD have been fixed?
QUOTE(Towelie @ May 27 2006, 08:30 PM) *

does the overbright HUD have been fixed?

Yes, and No.
With the current revision of the .fx file in the first post the HUD is not overbright, but the vendor menus still are (although much more readable).
Also the blurring of the text during conversations has been repaired.
Bump for a great innovation smile.gif
Just so you know;

The shader you've posted here, Nicoroshi, is designed for the full version of the shader.

CODE
CODE
//These variables will get set automatically
texture tex1;
texture tex2;
float2 rcpres;
float CurrentEye;
float CurrentBrightness;

sampler s0 = sampler_state { AddressU = Clamp; AddressV = Clamp; texture = <tex1>; };
sampler s1 = sampler_state { texture = <tex2>; };

//Use these to modify the behaviour of the dll
bool SinglePixel=false;
bool AffectMenus=false;
int ToggleKey=107;
int ToggleSinglePixelKey=109;
int ToggleAffectMenusKey=106;
float ReactionSpeed=0.95;

//Current Settings
static const float BloomScale = 0.70;
static const float HDRScale = -0.40;
static const float HDRAdjust = -0.10;

float2 PixelKernelH[13] =
{
{ -6, 0 },
{ -5, 0 },
{ -4, 0 },
{ -3, 0 },
{ -2, 0 },
{ -1, 0 },
{ 0, 0 },
{ 1, 0 },
{ 2, 0 },
{ 3, 0 },
{ 4, 0 },
{ 5, 0 },
{ 6, 0 },
};

float2 PixelKernelV[13] =
{
{ 0, -6 },
{ 0, -5 },
{ 0, -4 },
{ 0, -3 },
{ 0, -2 },
{ 0, -1 },
{ 0, 0 },
{ 0, 1 },
{ 0, 2 },
{ 0, 3 },
{ 0, 4 },
{ 0, 5 },
{ 0, 6 },
};

static const float BlurWeights[13] =
{
0.002216,
0.008764,
0.026995,
0.064759,
0.120985,
0.176033,
0.199471,
0.176033,
0.120985,
0.064759,
0.026995,
0.008764,
0.002216,
};


float4 Bloom( in float2 Tex : TEXCOORD0 ) : COLOR0
{
float4 Color = tex2D( s0, Tex );
float tempHDRScale=(0.70*smoothstep(0.00,0.75,CurrentEye))+HDRScale;
float4 Color2=0;
for (int i = 0; i < 13; i++)
{
Color2 += tex2D( s1, Tex + (PixelKernelH[i]*rcpres) ) * BlurWeights[i];
Color2 += tex2D( s1, Tex + (PixelKernelV[i]*rcpres) ) * BlurWeights[i];
}
float4 Curvemod = (0.70*Color);
Color = clamp((0.30*Color)+((0.70-Curvemod+tempHDRScale)*pow(Color,2))+((Curvemod-tempHDRScale)*(1-pow((1-Color),2))),0,1);
Color2 *= (BloomScale-(0.2*CurrentEye));
return clamp(Color + Color2,0,1);
}

float4 HDRBrightPass( in float2 Tex : TEXCOORD0 ) : COLOR0
{
float4 color = tex2D( s0, Tex );
float tempbright = clamp((0.27*color[1])+(0.67*color[2])+(0.06*color[3]),0,1);
float HDRAdjustBias = (0.18*pow((1-CurrentEye),3));
float curvemod = (0.25*tempbright);
float4 colorbias = (1-pow((1-color),2));
float4 adjust = clamp(((color-CurrentEye)-HDRAdjust-(HDRAdjustBias)),0,1);
color = clamp((8*pow(adjust,5)),0,1);
//color += clamp(tex2D( s1, Tex ) - (2*(CurrentEye + 0.27)) ,0,1); //Uncomment this line for retina burn
color = clamp(((1-curvemod+HDRAdjustBias)*color)+((curvemod-HDRAdjustBias)*colorbias),0,1);
color.a = 1;
return color;
}

technique T0
{
pass p0 { PixelShader = compile ps_2_0 HDRBrightPass(); }
pass p1 { PixelShader = compile ps_2_0 Bloom(); }
}



For the cut down dll (which is faster), you'd want something like;

CODE
//These variables will get set automatically
texture tex1;
texture tex2;
//float2 rcpres;
float CurrentEye;
//float CurrentBrightness;

sampler s0 = sampler_state { AddressU = Clamp; AddressV = Clamp; texture = <tex1>; };
sampler s1 = sampler_state { texture = <tex2>; };

//Use these to modify the behaviour of the dll
bool SinglePixel=false;
bool AffectMenus=false;
int ToggleKey=107;
int ToggleSinglePixelKey=109;
int ToggleAffectMenusKey=106;
float ReactionSpeed=0.5;

//Current Settings
static const float BloomScale = 0.95;
static const float HDRScale = -0.50;
static const float HDRAdjust = -0.05;

//rcpres must be set to the reciprical of your screen resolution
//static const float2 rcpres = { 0.0015625, 0.0020833333333 };    //640x480
//static const float2 rcpres = { 0.00125, 0.0016666666667 };    //800x600
static const float2 rcpres = { 0.0009765625, 0.0013020833 };    //1024x768
//static const float2 rcpres = { 0.000625, 0.0008333333333 };    //1600x1200

float2 PixelKernelH[13] =
{
    { -6, 0 },
    { -5, 0 },
    { -4, 0 },
    { -3, 0 },
    { -2, 0 },
    { -1, 0 },
    {  0, 0 },
    {  1, 0 },
    {  2, 0 },
    {  3, 0 },
    {  4, 0 },
    {  5, 0 },
    {  6, 0 },
};

float2 PixelKernelV[13] =
{
    { 0, -6 },
    { 0, -5 },
    { 0, -4 },
    { 0, -3 },
    { 0, -2 },
    { 0, -1 },
    { 0,  0 },
    { 0,  1 },
    { 0,  2 },
    { 0,  3 },
    { 0,  4 },
    { 0,  5 },
    { 0,  6 },
};

static const float BlurWeights[13] =
{
    0.002216,
    0.008764,
    0.026995,
    0.064759,
    0.120985,
    0.176033,
    0.199471,
    0.176033,
    0.120985,
    0.064759,
    0.026995,
    0.008764,
    0.002216,
};


float4 Bloom( in float2 Tex : TEXCOORD0 ) : COLOR0
{
    float4 Color = tex2D( s0, Tex );
    float tempHDRScale=(0.75*smoothstep(0.00,1.00,CurrentEye))+HDRScale;
    float4 Color2=0;    
    for (int i = 0; i < 13; i++)
    {    
        Color2 += tex2D( s1, Tex + (PixelKernelH[i]*rcpres) ) * BlurWeights[i];
          Color2 += tex2D( s1, Tex + (PixelKernelV[i]*rcpres) ) * BlurWeights[i];
    }
    float4 Curvemod = (0.70*Color);
    Color = clamp((0.30*Color)+((0.70-Curvemod+tempHDRScale)*pow(Color,2))+((Curvemod-tempHDRScale)*(1-pow((1-Color),2))),0,1);
    Color2 *= (BloomScale-(0.00*CurrentEye));
    return clamp(Color + Color2,0,1);
}

float4 HDRBrightPass( in float2 Tex : TEXCOORD0 ) : COLOR0
{
    float4 color = tex2D( s0, Tex );
    float tempbright = clamp((0.27*color[1])+(0.67*color[2])+(0.06*color[3]),0,1);
    float HDRAdjustBias = (0.10*pow((1-CurrentEye),3));
    float curvemod = (0.35*tempbright);
    float4 colorbias = (1-pow((1-color),2));
    float4 adjust = clamp(((color-CurrentEye)-HDRAdjust-(HDRAdjustBias)),0,1);
    color = clamp((8*pow(adjust,5)),0,1);
    //color += clamp(tex2D( s1, Tex ) - (2*(CurrentEye + 0.10)) ,0,0.75); //Uncomment this line for retina burn
    color = clamp(((1-curvemod+HDRAdjustBias)*color)+((curvemod-HDRAdjustBias)*colorbias),0,1);
    color.a = 1;
    return color;
}

technique T0
{
    pass p0 { PixelShader = compile ps_2_0 HDRBrightPass(); }
    pass p1 { PixelShader = compile ps_2_0 Bloom();    }
}


The latter shader is what i'm running right now. Your milage may vary depending on what you like, your monitor's colour balance, whether you wear glasses etc.

The only difference really is that i've removed the CurrentBrightness reference, the initial declaration of rcpres, and manually set the rcpres a little later on.


Also; Yes, the shader still affects the HUD. It will always do this until it stops being a post-process shader and is somehow integrated into the game engine.

No, you don't need Bloom active, or HDR active.

Yes, it has an FPS hit. No, we can't tell you how much it will be.
Install it for yourself and see if you like it.
I decided to try this again using the latest settings posted. But I have a curious problem with it - when I exit the game, it completely locks up my system and I have to hard reboot. I don't have this problem without the fakehdr, so I'm wondering if maybe the dll isn't unloading or something? Any way to fix this?
QUOTE(Luchaire @ May 28 2006, 08:21 AM) *

I decided to try this again using the latest settings posted. But I have a curious problem with it - when I exit the game, it completely locks up my system and I have to hard reboot. I don't have this problem without the fakehdr, so I'm wondering if maybe the dll isn't unloading or something? Any way to fix this?

I don't have this problem so wouldn't know where to direct you.
Shirosae, and Timeslip have a much better understanding of the d3d9.dll than I do.
Sorry I couldn't be more help.
Hopefully one of those guys chimes in with some enlightenment for you.

EDIT: Thanks Shirosae. I'll modify the OP to state the version needed for the .fx I have posted.

Also feel that some people (like me) that play @ 1280x1024, and want to use the cut version of the shader might need this:

CODE
static const float2 rcpres = { 0.00078125, 0.0009765625 };     //1280x1024
Alright.
I modified the settings in the trimed version of the .fx to reflect my current tweaking, and added a line for the 1280x1024 resolution.
Then I did some testing.

I found that Shirosae is correct. (no surprise there really).
The cut down version is faster.

I took 2 screenshots outside, and in motion(running), in 3rd person.1 2
One outside running in first person. 1st person
,and one outside in battle (1st person) In Battle


I found my framerates increased in all instances by ~5-10 over the full version.
Though your results will vary from mine I feel the cut-down version is a winner.

Here's the cut-down version of the .fx that reflect my tweaks.
CODE
//These variables will get set automatically
texture tex1;
texture tex2;
//float2 rcpres;
float CurrentEye;
//float CurrentBrightness;

sampler s0 = sampler_state { AddressU = Clamp; AddressV = Clamp; texture = <tex1>; };
sampler s1 = sampler_state { texture = <tex2>; };

//Use these to modify the behaviour of the dll
bool SinglePixel=false;
bool AffectMenus=false;
int ToggleKey=107;
int ToggleSinglePixelKey=109;
int ToggleAffectMenusKey=106;
float ReactionSpeed=0.95;

//Current Settings
static const float BloomScale = 0.70;
static const float HDRScale = -0.40;
static const float HDRAdjust = -0.10;

//rcpres must be set to the reciprical of your screen resolution
//static const float2 rcpres = { 0.0015625, 0.0020833333333 };    //640x480
//static const float2 rcpres = { 0.00125, 0.0016666666667 };    //800x600
//static const float2 rcpres = { 0.0009765625, 0.0013020833 };    //1024x768
//static const float2 rcpres = { 0.000625, 0.0008333333333 };    //1600x1200
static const float2 rcpres = { 0.00078125, 0.0009765625 };     //1280x1024

float2 PixelKernelH[13] =
{
    { -6, 0 },
    { -5, 0 },
    { -4, 0 },
    { -3, 0 },
    { -2, 0 },
    { -1, 0 },
    {  0, 0 },
    {  1, 0 },
    {  2, 0 },
    {  3, 0 },
    {  4, 0 },
    {  5, 0 },
    {  6, 0 },
};

float2 PixelKernelV[13] =
{
    { 0, -6 },
    { 0, -5 },
    { 0, -4 },
    { 0, -3 },
    { 0, -2 },
    { 0, -1 },
    { 0,  0 },
    { 0,  1 },
    { 0,  2 },
    { 0,  3 },
    { 0,  4 },
    { 0,  5 },
    { 0,  6 },
};

static const float BlurWeights[13] =
{
    0.002216,
    0.008764,
    0.026995,
    0.064759,
    0.120985,
    0.176033,
    0.199471,
    0.176033,
    0.120985,
    0.064759,
    0.026995,
    0.008764,
    0.002216,
};


float4 Bloom( in float2 Tex : TEXCOORD0 ) : COLOR0
{
    float4 Color = tex2D( s0, Tex );
    float tempHDRScale=(0.70*smoothstep(0.00,0.75,CurrentEye))+HDRScale;
    float4 Color2=0;    
    for (int i = 0; i < 13; i++)
    {    
        Color2 += tex2D( s1, Tex + (PixelKernelH[i]*rcpres) ) * BlurWeights[i];
          Color2 += tex2D( s1, Tex + (PixelKernelV[i]*rcpres) ) * BlurWeights[i];
    }
    float4 Curvemod = (0.70*Color);
    Color = clamp((0.30*Color)+((0.70-Curvemod+tempHDRScale)*pow(Color,2))+((Curvemod-tempHDRScale)*(1-pow((1-Color),2))),0,1);
    Color2 *= (BloomScale-(0.00*CurrentEye));
    return clamp(Color + Color2,0,1);
}

float4 HDRBrightPass( in float2 Tex : TEXCOORD0 ) : COLOR0
{
    float4 color = tex2D( s0, Tex );
    float tempbright = clamp((0.27*color[1])+(0.67*color[2])+(0.06*color[3]),0,1);
    float HDRAdjustBias = (0.18*pow((1-CurrentEye),3));
    float curvemod = (0.25*tempbright);
    float4 colorbias = (1-pow((1-color),2));
    float4 adjust = clamp(((color-CurrentEye)-HDRAdjust-(HDRAdjustBias)),0,1);
    color = clamp((8*pow(adjust,5)),0,1);
    //color += clamp(tex2D( s1, Tex ) - (2*(CurrentEye + 0.10)) ,0,0.75); //Uncomment this line for retina burn
    color = clamp(((1-curvemod+HDRAdjustBias)*color)+((curvemod-HDRAdjustBias)*colorbias),0,1);
    color.a = 1;
    return color;
}

technique T0
{
    pass p0 { PixelShader = compile ps_2_0 HDRBrightPass(); }
    pass p1 { PixelShader = compile ps_2_0 Bloom();    }
}


Be sure to use the trimed version of the d3d9.dll with this, and uncomment the "static const float2 rcpres = " line that matches your in game resolution.

EDIT:Added this to the OP
QUOTE(nicoroshi @ May 28 2006, 03:34 PM) *

CODE

//rcpres must be set to the reciprical of your screen resolution
//static const float2 rcpres = { 0.0015625, 0.0020833333333 };    //640x480
//static const float2 rcpres = { 0.00125, 0.0016666666667 };    //800x600
//static const float2 rcpres = { 0.0009765625, 0.0013020833 };    //1024x768
//static const float2 rcpres = { 0.000625, 0.0008333333333 };    //1600x1200
static const float2 rcpres = { 0.00078125, 0.0009765625 };     //1280x1024



What would one put in here for 1152x864?

EDIT: Nevermind, I think I got it.
QUOTE(Luchaire @ May 28 2006, 06:10 PM) *

What would one put in here for 1152x864?

EDIT: Nevermind, I think I got it.

For those who didn't get it:
CODE
static const float2 rcpres = { 0.0008680555555556, 0.00115740740740740741 };     //1152x864
Okay, this cut-down version with the last shader.fx you posted above: very good. Other than the known issues, it's practically indistinguishable from real HDR. The framerate hit is much more acceptable, too (I lose 3-4fps with 4xAA and FakeHDR, which I can pretty easily afford). And it doesn't lock up my system on exit like the "full" version does.

A+ wink.gif

QUOTE(Luchaire @ May 28 2006, 08:04 PM) *

Okay, this cut-down version with the last shader.fx you posted above: very good. Other than the known issues, it's practically indistinguishable from real HDR. The framerate hit is much more acceptable, too (I lose 3-4fps with 4xAA and FakeHDR, which I can pretty easily afford). And it doesn't lock up my system on exit like the "full" version does.

A+ wink.gif

Shirosae's the man.
He's the one who pointed me in that direction ( the cut down version).
I just applied my tweaks to the .fx he, and Timeslip came up with.

I too would like to thank Timeslip, and Shirosae for their creation, and the means to tweak it to my liking.
Currently outdoors my game hovers in the 35 + or - 5 to 7 range with indoors FPS well beyond my LCD's refresh rate.

Bravo! bows to the Mod Gods

BTW: I'm glad you like the tweaks, and I'd love to see the screenies.
Yes! It is faster. I think. I don't believe that's the version you personally sent me is it Nicroshi?

But since I applied it, the game seems faster, though I have stopped turning on the FPS counter, because if it is on, I get too bugged.

biggrin.gif
No Underdawg,
I sent you a full version (before the latest tweaks as well) for you to try.
This is the cut version with my current tweaked values applied ( the 2nd .fx file in the OP).
This is the file I'm currently using on my rig.
Glad to see people happy smile.gif


The cut down .dll was funny;

At the time, i had really started digging into the shader. This was around version 0.5-0.7.
While i was working on that, Timeslip released several versions, and the cut down mod.

So i didn't really bother testing the cutdown .dll too much until the other day, when i was replying to someone in some thread and noticed Timeslip saying that the .dll itself caused more performance hit than applying the shader.

Previously i was in the process of writing the shader, so i attributed differences to the fact that the shader itself was changing. Not so this time - so i actually put some effort in biggrin.gif


Amazed that it took me so long to suggest this, considering that i had your FPS problems in mind.



I kinda, kinda wish i had more room in the shader to play with.
I like the idea of adding noise to the 'dark' curve balance, and leeching the colour - to simulate the purely-rod function of a human eye. There's definitely no space for that right now in the shader, though. It'd mean adding another pass just for the colour bias.

I suppose i could replace the 'color' variable within the dark colourbias with 'tempbright' which is a grayscale biased version of the same. Then i could add a clamp(currenteye-0.8,0,0.2)*noise function at the end where the bloom is added to the biased 'original' sample.

I'd also like to play with the retinaburn, so that there was basically a completely seperate texture sample just for that, so you can have much more realistic retinaburn.

Then i'd be able to turn retinaburn up in this noisy dark scene, so that things are bright but less distinct and a bit blurry.


What i really need to do is sit down with a book on HLSL programming and learn how to do this stuff properly.
I've been searching through these topics, and pasted an fx-file over an fx-file but I'd like to get an answer to a simple question. I liked how the colors were in the normal Oblivion HDR, but that caused more fps hit than this one and I couldn't use AA with it.

How could I deepen the colors even more? I'd like it more if there was a bit more candy. smile.gif

Thanks for the awesome work!

Also, what is all this hassle with some shader toggle and pressing +? tongue.gif
Hi guys, I tweaked alot. I didn't like original setting, so I tried shirosae's on which didn't work better so I made my own setting which changes the orig setting in these lines:
CODE
float ReactionSpeed=0.0;

and:
CODE
static const float BloomScale = 0.5;
static const float HDRScale = -0.5;
static const float HDRAdjust = 0.15;

the results are these:
Pic 1
Pic 2
However you surely noticed, that I've changed ReactionSpeed to 0, because I thought it changes too much. So I'd like to add an limit to which it changes. Like normally it changes from 100% to 0% (just guessing), I'd like it to change from 100% to 70%. Got my point? I'm talking about changing when i look on the sky or my feet/looking straight.
QUOTE(Anchakor @ May 29 2006, 02:33 PM) *

However you surely noticed, that I've changed ReactionSpeed to 0, because I thought it changes too much. So I'd like to add an limit to which it changes. Like normally it changes from 100% to 0% (just guessing), I'd like it to change from 100% to 70%. Got my point? I'm talking about changing when i look on the sky or my feet/looking straight.


ReactionSpeed doesn't alter how much your 'iris' contracts or dilates, it changes how quickly it contracts or dilates.


You want to make it so your iris has a smaller range of adaption, right?

CODE
float4 Bloom( in float2 Tex : TEXCOORD0 ) : COLOR0
{
float4 Color = tex2D( s0, Tex );
float tempHDRScale=(0.70*smoothstep(0.00,1.00,CurrentEye))+HDRScale;
float4 Color2=0;
for (int i = 0; i < 13; i++)
{
Color2 += tex2D( s1, Tex + (PixelKernelH[i]*rcpres) ) * BlurWeights[i];
Color2 += tex2D( s1, Tex + (PixelKernelV[i]*rcpres) ) * BlurWeights[i];
}
float4 Curvemod = (0.30*Color);
Color = clamp((0.70*Color)+((0.30-Curvemod+tempHDRScale)*pow(Color,2))+((Curvemod-tempHDRScale)*(1-pow((1-Color),2))),0,1);
Color2 *= (BloomScale);
return clamp(Color + Color2,0,1);
}


Try this.


QUOTE
I've been searching through these topics, and pasted an fx-file over an fx-file but I'd like to get an answer to a simple question. I liked how the colors were in the normal Oblivion HDR, but that caused more fps hit than this one and I couldn't use AA with it.

How could I deepen the colors even more? I'd like it more if there was a bit more candy. smile.gif

Thanks for the awesome work!

Also, what is all this hassle with some shader toggle and pressing +? tongue.gif


I'm not sure what you mean by 'deepen'. Do you mean increased colour saturation? The problem with a non-floating point system (like this one), is that if you keep adding or subtracting from a colour values (which is a 3-4 point vector), then you invariably approach pure white / pure black. The result is that in my shader, middle intensity colours are enhanced, while colours on the upper or lower range of brightness tend to get squished into black or white.

To increase saturation, you'd first need to program the shader to perform calculations for each channel, and keep each colour balance in check. I don't know how you'd do this without a floating point system.

Then, you'd alter the balance slightly to overcompensate.


Hassle? The only thing i can think of is that the toggle on/off key for the shader doesn't appear to work on some systems.
i was wondering, you guys seem to be pretty good at writing shaders, so would you consider writing a few unique shaders for the game? im thinking specifically of motion blur (for when you move the mouse quickly. maybe check out how the impact blur shader is written) and depth of field focus blur (im imagining this one would be pretty difficult to write, bu hey, i had to ask)

anyway, if you guys would consider working on these, it'd be awesome smile.gif
QUOTE(scud808 @ May 29 2006, 03:59 PM) *

i was wondering, you guys seem to be pretty good at writing shaders, so would you consider writing a few unique shaders for the game? im thinking specifically of motion blur (for when you move the mouse quickly. maybe check out how the impact blur shader is written) and depth of field focus blur (im imagining this one would be pretty difficult to write, bu hey, i had to ask)

anyway, if you guys would consider working on these, it'd be awesome smile.gif


Motion blur is possible. Just take the previous frame and blend it with the current one. It would be similar to the current retinaburn.

Depth of Field isn't (that i know of). This is a post process shader, so there's no access to Z (buffer) data.


Think of this post-process shader like a very quick, very simple version of photoshop that does the same thing to every frame after the game has rendered it.
shirosae, props first for your hard work on this little gem of excellence. Secondly, if you do rewrite some pieces of code, would you consider adding a full-screen blur variable? Not bloom that would lighten the screen, but just a blur effect. I tried to emulate True HDR and this as well as a little missing color vibrance were all I lacked.

Thank you,
-SHeLL
QUOTE(shirosae @ May 29 2006, 11:48 AM) *

Motion blur is possible. Just take the previous frame and blend it with the current one. It would be similar to the current retinaburn.

Depth of Field isn't (that i know of). This is a post process shader, so there's no access to Z (buffer) data.
Think of this post-process shader like a very quick, very simple version of photoshop that does the same thing to every frame after the game has rendered it.



ok cool. i figured depth of field might not be possible. if you get time though, id be raell keen to see how a motion blur shader would look smile.gif
shirosae: Thanks for an answer! However I am probably going to use my current setting.
QUOTE(Anchakor @ May 29 2006, 09:42 AM) *

shirosae: Thanks for an answer! However I am probably going to use my current setting.

Anchakor,
If I'm not mistaken that's Timeslip's .fx (slightly modified) from the full version of the FakeHDR mod he created.
Shirosae's version of the .fx (modified) is the one in the OP, and set up a little differently than Timeslip's.
You may want to give it a try. (just for giggles)

Also recommend trying the cut version for a little less of a FPS hit.
Yeah, I tried Shirosea's setting, but it didn't work well:
http://www.elderscrolls.com/forums/index.p...dpost&p=6547241
Saw those videos? Thats a problem, I like my current setting (slightly modified Timeslip's default) however I'd like to try some new ideas. Did anyone actually manage to tweak Fake HDR to look like those screens on tessource?
QUOTE(Anchakor @ May 29 2006, 11:21 AM) *

Yeah, I tried Shirosea's setting, but it didn't work well:
http://www.elderscrolls.com/forums/index.p...dpost&p=6547241
Saw those videos? Thats a problem, I like my current setting (slightly modified Timeslip's default) however I'd like to try some new ideas. Did anyone actually manage to tweak Fake HDR to look like those screens on tessource?

The only screens I saw on TESSource were of Timeslip's mod which were kinda washed out in the color department.

Have you tried my tweaked version?
QUOTE(nicoroshi @ May 29 2006, 08:31 PM) *

The only screens I saw on TESSource were of Timeslip's mod which were kinda washed out in the color department.

Have you tried my tweaked version?

I meant these screens:
1 2 3

Post your tweaked version!
QUOTE(Anchakor @ May 29 2006, 11:36 AM) *

I meant these screens:
1 2 3

Post your tweaked version!

Yep, those are the washed out ones I saw.

Would you like it to look like This, This, This, or This?

If the answer is, "Yes" then install the trimmed version of Timeslip's d3d9.dll into the Oblivion folder (where the .exe is), and copy/paste the 2nd .fx (code)from the first post of this thread into the OB\Data\Shader\fakeHDR.fx file (select all within the file\ delete\ paste in the new. (Do not delete the file itself)).
And Bingo! Enjoy.

sorry if I took it step, by step. I did that for the benefit of those who haven't done this before.
I posted this in one of the other threads, but I'll repost it here, just in case anyone's not aware of this already. As a workaround to the 'overbright menus', you can install a mod called Dark UI. This retextures just about every menu in the game to give it a dark brown background with light writing, and, at the same time, makes them a little more PC-centric and sorts a few niggles. The thread for it, including download links, is here.
Thanks Zmidponk.
I'll give it a try.
That's about the last issue with this that I have. Although I've increased the contrast some to make it readable, and kinda gotten used to the overbrightness of it. It would be nice to have a fix/workaround for it kinda like Max Tael's NE mod to fix the washed out sun/sky issue.
I seem to remember you mentioning it before ( in a previous thread ), but was still busy tweaking the shader and wanted to leave it at default so I could see the results my tweaks had on the menus.
Thanks again for the reminder.
I tried the full version with Shirosea's settings (I think) and it seems like blood flickers excessively on walls. Also, what would the code be for

//static const float2 rcpres = { 0.000625, 0.0008333333333 }; //1600x1200

at 1440x900?
QUOTE(Dorign @ May 29 2006, 01:41 PM) *

I tried the full version with Shirosea's settings (I think) and it seems like blood flickers excessively on walls. Also, what would the code be for

//static const float2 rcpres = { 0.000625, 0.0008333333333 }; //1600x1200

at 1440x900?

1/1440=.000694444444444
1/900=.001111111111111

Therefore:
CODE
static const float2 rcpres = { 0.000694444444444, 0.0011111111111 };   //1440x900


Hope this clears it up for anyone without a resolution mentioned already.

Also I've tried Dark UI.
I like it, and I'm going to keep it, but even though it deals with the overbright background on the vendor menus it still leaves the icons overbright (ones across the bottom).
I guess it's going to be a matter of taste.
Here's a pic both ways for those trying to decide.

Normal

Dark UI Mod

Edit: My main reason for sticking with the Dark UI mod is the fact that you see quite a few more items at a time removing the need for excessive scrolling when a large inventory is being viewed. (I think the map is bigger as well). Nice mod.
Hey Bethesda!

Give Shirosae a well paying job!

I'm Serious.

biggrin.gif

*Bows Down to His Greatness Shirosae*

bowdown.gifbowdown.gifbowdown.gif

The Darnified BT Menus Mod is great too! I use it myself.
QUOTE(underdawgIV @ May 30 2006, 01:15 AM) *

Hey Bethesda!

Give Shirosae a well paying job!

I'm Serious.

biggrin.gif

*Bows Down to His Greatness Shirosae*

bowdown.gifbowdown.gifbowdown.gif

The Darnified BT Menus Mod is great too! I use it myself.


I think i might be on the wrong continent for that tongue.gif

Also, everyone should be thanking Timeslip really, for making any of this possible and generally hacking games to bits.
QUOTE(shirosae @ May 29 2006, 10:35 AM) *

Hassle? The only thing i can think of is that the toggle on/off key for the shader doesn't appear to work on some systems.


I would like to know more about those toggles. In the .fx file are three lines:

int ToggleKey=107;
int ToggleSinglePixelKey=109;
int ToggleAffectMenusKey=106;

I understand only the first line (toggle shader on/off). What do the others do?

Also I would like to know how do you know which number refers to which key on the keyboard. I have reassigned my in-game shortcut keys to the numpad keys (because I like to play with the curser keys and want the shortcuts nearby). For some reason assigning the higher number keys didn't work, so I assigned the / * - + keys isntead. Now I need some other key to toggle the shader on or off.

I want to toggle the shader off whenever I do business and use the inventory and vendor menues which tend to be too bright sometimes (not always!).

Thanks if you can give me any hints!

Cer
After spending some time with this "mod," I must give serious kudos to Timeslip. I personally think you're being too modest; this is, in fact, actual HDR, even if, technically speaking, not very good HDR.

However, it accomplishes what we want out of HDR, (at least mostly) and manages to do so with better performance, as well as AA support for non-R5xx cards, and it works on non-SM 3.0 cards as well.

I'm still tweaking with the settings myself; I do like how it adjusts the bloom and flare, though I'm currently not too keen on much of the tone-mapping results, particularly in dark areas, such as dungeons or outdoors at night.

Pretty much, I find that the "low bloom" suggested settings (in the "default" DLL) are perfect for dawn and dusk, and the higher-bloom settings are great for midday. However, I'm still trying to find a good balance that will look best at noon, as well as looking good in dark areas.

I think it should also be worth noting that the hot keys don't work for my system, either. Then again, it may be because I'm using Windows ME. I haven't tried this with XP x64 yet. (my other Windows OS)

QUOTE(Cer @ May 30 2006, 01:19 PM) *

I would like to know more about those toggles. In the .fx file are three lines:

int ToggleKey=107;
int ToggleSinglePixelKey=109;
int ToggleAffectMenusKey=106;

I understand only the first line (toggle shader on/off). What do the others do?

Also I would like to know how do you know which number refers to which key on the keyboard. I have reassigned my in-game shortcut keys to the numpad keys (because I like to play with the curser keys and want the shortcuts nearby). For some reason assigning the higher number keys didn't work, so I assigned the / * - + keys isntead. Now I need some other key to toggle the shader on or off.

I want to toggle the shader off whenever I do business and use the inventory and vendor menues which tend to be too bright sometimes (not always!).

Thanks if you can give me any hints!

Cer

The other two keys are for, respectively:
  • Key 109: Use single-pixel tone-maps. To process HDR, each frame, the game takes a "tone-map," where it judges the overall brightness of the screen; for better realism, this average is weighted toward pixels in the center. This toggle will set the shader to, instead of sampling the whole screen, just sample the pixel in the very center. This might result in some screwy brightnening effects, (such as if you look at the dark side of a pillar, outside, on a bright day) or darkening effects, (looking at a fire in a cave might cause the whole screen to become very dark) but it will significantly improve performance.
  • Key 106: Changes if the shader will work on menus. Originally, since the shader is a post-processing effect, it would apply to even menus, and could make them exceptionally bright. Eventially, the shader was modified so that it wouldn't apply to menus. This key can change that, though; I believe by allowing it to brighten menus, it may also get rid of the strange "darkness" that happens right after CLOSING those menus.
QUOTE(shirosae @ May 30 2006, 12:36 AM) *

I think i might be on the wrong continent for that tongue.gif

Also, everyone should be thanking Timeslip really, for making any of this possible and generally hacking games to bits.


Ok. Timeslip too! Doesn't he not have the game or something? And just the wrote the damn thing because he wanted to?

bowdown.gifbowdown.gifbowdown.gif
They both rock in my opinion.
Glad to see others as happy as I am. =-)

Saw some "High Quality Screenshot" threads, and thought I'd post a few here:

1280x1024 FakeHDR+4xAA 16xAF all sliders maxed except self, and grass shadows.

Signpost
Cave Entrance
Spriggan
Shrine
Burma
Closed Gate

If that doesn't count as "High Quality" I don't know what does.
Hats off to the "Mod Gods"

Edit: (sp)
Its about time i get back into this. eVGA are going to (hopefully) post out my new 7900GTX tomorrow should have it in by Friday, fingers crossed. (Thursday for all you American people, which i think makes up for 85% of this board and probably 90% of this topic/project)

EDIT: Whats this "cut" version i head about, breifly read about it. Geez you guys move fast while i have been MIA biggrin.gif
QUOTE(Macc @ May 30 2006, 07:03 PM) *

Its about time i get back into this. eVGA are going to (hopefully) post out my new 7900GTX tomorrow should have it in by Friday, fingers crossed. (Thursday for all you American people, which i think makes up for 85% of this board and probably 90% of this topic/project)

EDIT: Whats this "cut" version i head about, breifly read about it. Geez you guys move fast while i have been MIA biggrin.gif

The cut version runs faster than the full. ( Thanks Shirosae for pointing that out ).
There is a .fx ( the second one ) in the OP that reflects my current tweaks and works with the trimmed version of the d3d9.dll that Timeslip created. (Check his download site for it).

The pics in my last post were taken using that setup.

Remember to uncomment your screen resolution. (It's currently set for 1280x1024)
QUOTE(underdawgIV @ May 31 2006, 02:22 AM) *

Ok. Timeslip too! Doesn't he not have the game or something? And just the wrote the damn thing because he wanted to?

bowdown.gifbowdown.gifbowdown.gif

I do have the game, I just don't have a computer capable of running it. I can wonder around the tutorial dungeon, but cant leave it. 1346.gif (This is my excuse for the awful state of the default shader, because I couldn't actually see what it looked like in game.)

In any case, I also live on the wrong continent. And don't have a beard, either. wink.gif
Just wanted to post my experience here:

I run a AMD Athlon 3000 @ 2400 MHz (normal is 1800) with 2GB RAM @250MHz and a NVIDIA 6800GT with 256MB. I don't see any framerate difference between the full and trimmed version of the DLL. When removing the DLL I don't see any framerate difference between HDR on and off. Using the fakehdr gives me a drop of 3 FPS. I play at 1024*768 and my teststing spot is in Choroll on a hill within grass next to the castle looking to the south exit having the round window of the cathedral in my upper right corner of the screen. With reduced grass (mingrass=120) max view and without own shadows I get 15 FPS with fakehdr. Pressing the + button turns off the shader and increases my FPS to 18.
Since I don't know which key toggles the single pixel thing, I tried to set the setting in the INI to true. However, I don't see any difference (in game and FPS wise).

My conclusion is that my CPU power is so great compared to my grafics card that it doesn't really matter what kind of shader I use (but then again, I shouldn't get any FPS drop, no?)

Also:
I still would like to assigne a different button to the shader toggle. Does anyone know which key has which code?
QUOTE(Cer @ May 31 2006, 07:42 AM) *

Also:
I still would like to assigne a different button to the shader toggle. Does anyone know which key has which code?

They are standard virtual key codes. The complete list is here.
Thank you Timeslip, that was exactly what I was looking for! Guess I try to set up F12 as toggle key (code is 123)


QUOTE(Nottheking @ May 30 2006, 06:28 PM) *

I'm still tweaking with the settings myself; I do like how it adjusts the bloom and flare, though I'm currently not too keen on much of the tone-mapping results, particularly in dark areas, such as dungeons or outdoors at night.

Pretty much, I find that the "low bloom" suggested settings (in the "default" DLL) are perfect for dawn and dusk, and the higher-bloom settings are great for midday. However, I'm still trying to find a good balance that will look best at noon, as well as looking good in dark areas.


Same for me. I tried different fakehdr.fx files and always found situations where the screen was too bright or too dark. I was assuming that this will be 'corrected' with the eye-adapt thing.
What I want is a more natural appearance. I don't think that a torch in a cave shouldn't blind me as the sun would do. If anyone has figuered out the settings for this, please post them here! (best would be a galery of settings with screenshots so everyone could easily pick 'his' setting.
QUOTE(Timeslip @ May 31 2006, 04:52 AM) *

I do have the game, I just don't have a computer capable of running it. I can wonder around the tutorial dungeon, but cant leave it. 1346.gif (This is my excuse for the awful state of the default shader, because I couldn't actually see what it looked like in game.)

In any case, I also live on the wrong continent. And don't have a beard, either. wink.gif


The default shader, for all its simplicity, was what caught my eye and got me interested in playing with it. Well, that and knowing that you did MGE tongue.gif

Any idea why the toggle doesn't seem to work on non-XP systems?


Also: I have a beard. What does this have to do with anythying? tongue.gif
QUOTE(shirosae @ May 31 2006, 05:59 PM) *

Any idea why the toggle doesn't seem to work on non-XP systems?

Haven't got a clue. If I had to guess, I'd say that on non XP systems, when a fullscreen application creates a direct input device in exclusive mode, the normal windows keyboard functions stop working. My shader uses GetAsyncKeyState instead of hooking oblivions direct input device, so it would be affected too. I don't have a non-XP system to test it on though.

QUOTE(shirosae @ May 31 2006, 05:59 PM) *

Also: I have a beard. What does this have to do with anythying? tongue.gif

One of the many myths of games development; all decent programmers have beards. Probably helps cool the brain or something. wink.gif
QUOTE(Timeslip @ May 31 2006, 06:16 PM) *

Haven't got a clue. If I had to guess, I'd say that on non XP systems, when a fullscreen application creates a direct input device in exclusive mode, the normal windows keyboard functions stop working. My shader uses GetAsyncKeyState instead of hooking oblivions direct input device, so it would be affected too. I don't have a non-XP system to test it on though.


Some examples;

During FFXI, Irfanview capture toggle works on 2k, but not XP.

Fraps works on FFXI on both, but not on Far Cry on 2k.

Your toggle works on xp, but not on my 2k.

Irfanview capture toggle doesn't work with Oblivion on xp or 2k. Fraps toggle works on both, unless ATI Tools is running.

It seems pretty random.



QUOTE(Timeslip @ May 31 2006, 06:16 PM) *
One of the many myths of games development; all decent programmers have beards. Probably helps cool the brain or something. wink.gif


{Sweets}
QUOTE(Cer @ May 31 2006, 01:33 AM) *

Thank you Timeslip, that was exactly what I was looking for! Guess I try to set up F12 as toggle key (code is 123)
Same for me. I tried different fakehdr.fx files and always found situations where the screen was too bright or too dark. I was assuming that this will be 'corrected' with the eye-adapt thing.
What I want is a more natural appearance. I don't think that a torch in a cave shouldn't blind me as the sun would do. If anyone has figuered out the settings for this, please post them here! (best would be a galery of settings with screenshots so everyone could easily pick 'his' setting.

I'm not sure which .fx you are using, but I did some testing, and found my torch to have good color, and not be too bright (like the sun) using my tweaked trimmed version from the OP.

Example

Might want to give this version a try, or lower the "static const float BloomScale" value to where the torch is the correct color/brightness for you.

Unfortunately this would lower the amount of reflection brightness off white surfaces as well.

To submit multiple .fx files I feel would be a waste of time seeing as everyone is going to have a different opinion as to what 'looks good'. I don't want to submit 2000 .fx files with screenshots only to have someone not be happy with any of them, and flame me for it (not to mention the space it would require).

The only way to get exactly what you want is to do like I did, and take the time to tweak it to your tastes.

I expect people to do that with the version I posted.
It was mainly submitted as the settings I like, and to be a starting point for others.
I tried the .fx that shirosae posted on the 1st page. Now I tested yours from the OP and its better smile.gif
I agree, I need to tweak the settings myself until I am satisfied. A good thing is that I can turn off the shader by pressing a key.
I use now the line:

int ToggleKey=123;

but it is still the + key that toggles the shader. Any idea why?
QUOTE(Cer @ Jun 1 2006, 06:58 AM) *

I tried the .fx that shirosae posted on the 1st page. Now I tested yours from the OP and its better smile.gif
I agree, I need to tweak the settings myself until I am satisfied. A good thing is that I can turn off the shader by pressing a key.
I use now the line:

int ToggleKey=123;

but it is still the + key that toggles the shader. Any idea why?

As far as the toggle, I have no idea.
The toggle doesn't work for me. My only thoughts are that my ( and maybe your) keyboard are not set up the same way from the manufacturer as Timeslip's. I'm on a logitech multi-media keyboard. I assumed it was set up per Microsoft standards, but it may not be.
Just a guess really.

As far as my version of the .fx file. I'm thinking of lowering the Bloomscale value a little (maybe to .60 or so).
I've had some issues with fog almost being a white out condition.
I'm thinking that a lower Bloomscale value will help this though I haven't tested it yet.

Also found that screenshots taken (with the same .fx file) on different computers get slightly different results.
I'm figuring that it's hardware related in some way.

I was playing a little with the retina burn line of the shader that Shirosae wrote.
Cool effect.
I'm not satisfied with the results yet. ( kinda like a 60s LSD flashback ).
I'll play with it some more when I have time, and see what I can come up with.
QUOTE(nicoroshi @ Jun 1 2006, 10:18 PM) *

As far as the toggle, I have no idea.
The toggle doesn't work for me. My only thoughts are that my ( and maybe your) keyboard are not set up the same way from the manufacturer as Timeslip's. I'm on a logitech multi-media keyboard. I assumed it was set up per Microsoft standards, but it may not be.


I use a Logitech multimedia keyboard, too, and the toggle works fine for me - which is quite handy for vendor menus. wink.gif

One thing I've done though, that might work if you haven't already tried it -- change this .ini line:

bBackground Keyboard=0

to a 1. Before I did that, none of my keyboard functions (such as volume control) worked in game; it might be that this is what enabled the toggle as well.

Or not. Fickle is Oblivion. wink.gif

QUOTE(Luchaire @ Jun 1 2006, 07:38 PM) *

I use a Logitech multimedia keyboard, too, and the toggle works fine for me - which is quite handy for vendor menus. wink.gif

One thing I've done though, that might work if you haven't already tried it -- change this .ini line:

bBackground Keyboard=0

to a 1. Before I did that, none of my keyboard functions (such as volume control) worked in game; it might be that this is what enabled the toggle as well.

Or not. Fickle is Oblivion. wink.gif

Thanks!
Never even thought to look in the .ini
Got my ini the way I liked it long before tweaking the shader.
Then got so involved in the shader values that I forgot about the .ini value you mentioned.

It's the simple things that seem to elude us.
Gratuitous bump. tongue.gif
Has anyone played Half-life 2 Episode One? The HDR lighting in that game is fantastic. It seems to work a little differently (I'm talking graphically, not about floating point stuff): The HDR just adds more or less bloom to areas, it doesn't wash out/change the gamma or contrast of the entire screen like Oblivion's/Timeslip's. Timeslip, if you haven't played HL2:E1, check it out. It may inspire you should you ever feel like re-writing parts of your code.

Thanks!
-SHeLL
The HDR in HL2:EP 1 and DOD kicks serious ass.

I don't understand why Beth didn't go this route.

The HDR on my SM2 card in EP1 and DOD looks better then the true HDR in Oblivion on my friends Crossfire x1900xt setup IMO.
Ok...I need some suggestions here nicoroshi considering you setup is somewhat similiar to mine, but I have a X2 4400 and 2x 7800 GTX's, but 256MB VRAM. I would very much like to use this mod because I miss AA, but want HDR. The mod looks fantastic for the most part. However, the performance hit on my system is astronomical, literally gets cut in half. I was around my Waterfront home and fps usually runs from upper 30s to 50s. After the mod, the fps drops to lower 20s and a lot of times into the teens. This doesn't sound right seeing that the hit is supposedly 4-10fps, and mine is dropping from 50s to 20s mad.gif 1346.gif It now never hits 30fps, and if im around a lot of NPCs, the frames go to sh1t, even lower than teens. WTF am I doing wrong!!!??

Ok, so I'm running 16xAF, high image quality in the nvidia CP, no vsync. In-game, most things set to max except shadows (most is half-way mark), shadow filtering is low, self shadows off. I really wish not to change these settigns seeing that they have worked well for me in all cases, just not the fakeHDR case. "None" is selected for screen effects, and Im trying to run 2x AA. I'm just ticked because my system should perform just a bit less than yours (nicorishi), yet it performs far much worse and you're running 4xAA 16xAF.

I've downloaded the trimmed fakeHDR file and deleted the contents in the .fx and copied+pasted the text from the OP as was suggested from the instructions. Oh, and theres this flashing glare whenever there's a load screen or if I choose the "wait" option. If waiting, the flashes occur after each hour that passes (so 5 hour wait, 5 blinding flashes of glare, similiar to this emoticon shocking.gif ) and its rather annoying to the eyes. Is this right at all??? Any tips??? Anyone??? 1346.gif 1346.gif I'm currently back to regular HDR. I won't be able to post until much later, so forgive for not responding...I am at work after all. I'll check and reply back later. Thanks for any help!!
Tig Ol Bitties,
I just got off work myself.
The big FPS killer on my system was having the nVidia control panel AA set to 8xS while in game was set at 4xAA.
This was forcing 8xS AA in game. Supersampling killed the FPS.
So.....
First suggestion: Set nVidia control panel to 2xAA like your in game setting.

The trimmed version of the d3d9.dll runs faster than the full.

Second suggestion: Make sure you're using the trimmed version of the .dll Timeslip created.

SLI rendering might have something to do with it as well.

Third suggestion:Configure your SLI rendering for 'Alternate frame rendering' in the nVidia control panel.

Shirosae explained that systems with high framerates will see a higher FPS hit than those running at a lower FPS. As it was explained to me:
QUOTE

I think what's happening is: The Shader runs once per pixel, per frame.

So at high framerates (and yours certainly are), the shader is working MUCH more often than on my system, for example. Your high screen resolution just compounds the problem.

In effect, the shader causes a soft framerate cap. So yeah, you're right, the shader can only go so fast, because after a certain speed the system requirements to go faster get astronomical.



Note: The shader shouldn't drop your FPS into the teens though (concidering your specs). The lowest I experience is mid-twenties. Yours shouldn't drop below 20 (in battle, or with multiple NPCs in frame) IMO.

Finally: The shader affected every system differently, and there is no way to tell exactly how it will affect yours without physically trying it out. I did lose ~10FPS across the board on my system, but even so my outdoor running FPS is in the thirties, and indoor is 60+ so even with the MOD enabled it is still very playable for me.
I also have a very tweaked .ini. If the above suggestions don't help I would be happy to PM it to you.

Afterthought: Also I'm using the 1.2.2.2 AMD processor driver on my system (this requires a hotfix from MS as well). Seems that Windows has a kernel scheduling problem with dual core AMDs. This driver solves it.
(Figured this was worth a mention)

EDIT: As for the flashing loading screens; I get the same thing. This is the shader, and is un-repairable, but you can toggle the shader off by using the "+" key while loading (and vendor menus if you like), and toggle it back on (same key) when play resumes.
Thanks so much for your response. at this point, I've tried everything you suggested. I'm assuming you're using the global drivers to set that SLi rendering to "Alternate frame rendering" because the oblivion profile has a read only predefined setting. I do have the hotfix installed and the most current amd dual core driver...EDITED for bad info

I left the nvidia CP AA setting to application controlled and I'm assuming the d3d9.dll file in the "TrimmedFakeHDR" file I got off of Timeslip's site is the correct one (33KB 7Z File). Well, I fired it up and the fps was pretty much the same...dropping into the teens. I must mention that I am playing at 1600X1200 and my cards are still stock speeds (450/1250). Anyways, so I decided to make some adjustments to my .ini file and I noticed that a lot of my previous changes went back to default!!! banghead.gif fing04.gif Wonder if the patch did this because I had a lot of tweaks as well. So, as of right now I'm going back to the tweakguides.com page to readjust my .ini file to hopefully see some improvement. However, I'd like to take you up on your offer to PM me yours so I can have a side by side comparison. It would be greatly appreciated bowdown.gif But I'll keep you updated on my results, thanks again for your help!!!
np.
Thanks for the link to the new AMD driver (I've been busy, and haven't bothered to check AMDs site in a while)
I get Alternate frame rendering using NVTweak , and yes I set up the nVidia control panel myself (no game profile).
The 1600x1200 resolution might be part of the problem. I play @ 1280x1024, and with AA going it looks great (and adds some FPS too!).
I will PM my .ini to you, and good luck.
QUOTE(nicoroshi @ Jun 8 2006, 05:51 PM) *

The 1600x1200 resolution might be part of the problem. I play @ 1280x1024 . . .


Ya, because running 1600x1200 is approximately 600,000 more pixels than 1280x1024 - and since the shader is doing a calculation for each pixel for each frame, that's a helluva lot more to do every second, and would surely have a pretty dramatic performance impact.
Luchaire is 100% correct.
The shader does run once per pixel per frame. (hence the high resolution problem).
Also I looked up the AMD processor driver you linked, and it's for Windows 64.
Are you using Windows 64?
I'm currently using Windows XP Pro.
blush.gif AYE, screwed up with that AMD driver, yeah I'm on XP PRo as well. Better revert back to 1.2.2.2. Yea, the big hit WAS due to the resolution. I backed down to 1280x1024 and my fps actually hit 30 outside, but generally runs in the upper 20s...but I can see a huge image difference on my monitor in running a non-native res and it sucks. nope.gif Idunno about the rest of you, but once I go high res like 1600x1200, its very hard for me to go lower. So I'm back to regular HDR...I can deal with the jaggies for now, til the next gen cards come along...stupid nVidia. But I thank you for all your help...thanks for the PM nico, you have very similiar .ini settings to mine. I'll probably give this another go to see if there is a setting that suits me. It's great work btw, it's very HDR-like.
QUOTE(Tig Ol Bitties @ Jun 8 2006, 09:30 PM) *

blush.gif AYE, screwed up with that AMD driver, yeah I'm on XP PRo as well. Better revert back to 1.2.2.2. Yea, the big hit WAS due to the resolution. I backed down to 1280x1024 and my fps actually hit 30 outside, but generally runs in the upper 20s...but I can see a huge image difference on my monitor in running a non-native res and it sucks. nope.gif Idunno about the rest of you, but once I go high res like 1600x1200, its very hard for me to go lower. So I'm back to regular HDR...I can deal with the jaggies for now, til the next gen cards come along...stupid nVidia. But I thank you for all your help...thanks for the PM nico, you have very similiar .ini settings to mine. I'll probably give this another go to see if there is a setting that suits me. It's great work btw, it's very HDR-like.

Yea, was kinda hard for me too (my native is 1600x1200 also). Once I experienced it (fakeHDR) with 4xAA there was no going back for me. I also liked the fact that I now had control of the effects, and I could create them as I wanted. The jaggies drove me crazy so going without AA was worse than a slightly lower resolution for me.
I know the shader isn't perfect, but for those who own nVidia cards, or cards that don't support SM3, and want HDR like vibrance, and effects it's an option that we didn't have before.
Thanks for giving it a shot.
I'm happy to help.
Thanks again to Timeslip, and Shirosae for making it possible.(I'm lovin' OB more than ever)
Hey Nico, I was right about the AMD driver 1.3.1...there are TWO versions, one for Windows XP x64 and the other for standard Windows XP...here ...2nd to last file
QUOTE(Tig Ol Bitties @ Jun 8 2006, 11:57 PM) *

Hey Nico, I was right about the AMD driver 1.3.1...there are TWO versions, one for Windows XP x64 and the other for standard Windows XP...here ...2nd to last file

Thanks =-)
I used the trimmed down version and the .fx that came with it. I modified it for my screen size. After adding 9% digital vibrance on nvidia card, the results are awesome. Big thanks to everyone who worked on this.
Still wish I could get this to work without butchering my framerate. *sigh*
After some testing... I'm using a 7800 gtx at 1280x1024.

Though the Fake HDR + 4AA was visually awesome, it wasn't playable.. then again I can't get oblivion to run right no matter what I do.

For me the Fake HDR is a big hit to performance, even without any AA it ran an average of 3-5 fps less than Oblivion's HDR. That was disappointing, considering HDR looked way better.

Anyway that's my results, sucks for me, glad some of you can enjoy this game.
QUOTE(OutTaGetMe @ Jun 10 2006, 08:49 PM) *

After some testing... I'm using a 7800 gtx at 1280x1024.

Though the Fake HDR + 4AA was visually awesome, it wasn't playable.. then again I can't get oblivion to run right no matter what I do.

For me the Fake HDR is a big hit to performance, even without any AA it ran an average of 3-5 fps less than Oblivion's HDR. That was disappointing, considering HDR looked way better.

Anyway that's my results, sucks for me, glad some of you can enjoy this game.

Thanks for the feedback.
Fake HDR was a big FPS hit for me as well, but playing at framerates way above my LCDs refresh rates before enabling the MOD left me with plenty of room to spare. (7800 GTX 512 SLI, AMD X2 @ 2.7GHz).
It seems that either people playing at around the shaders 'soft framerate cap' as described by Shirosae, or those (like me) with plenty of FPS to spare find the MOD an option.
Those that play at high resolutions (1600x1200 or more), and those playing at 28-30 FPS outside without HDR find the framerate hit to be unplayable.
Conclusion: IMO those with really high FPS, or those at 18-28FPS outdoors seem to be the ones finding the MOD playable.
Makes me wish that there was a way to enable a playable FPS for everyone.
Thanks for giving it a shot, and posting feedback.
After several seconds of running Oblivion with the FakeHDR(the trimmed down version), I get the annoying window that says:

"Oblivion has encountered a problem and needs to close. We are sorry for the inconvenience."

I don't know if anyone else had this problem, since I browsed through some of the posts and didn't see this mentioned.
Torre5,
I have never had the fakeHDR mod close out OB on my rig.

did you copy the part of the code that says:

CODE
--------------------------------------------------------------------------------------------------
?

This part should not be copy\pasted to the .fx file.

Start at:
//These variables will get set automatically

Also make sure:
1.you're using the trimmed version of the d3d9.dll, and it's in the Oblivion folder (where the OB.exe is located)
2. the fakeHDR.fx file is in the Oblivion\data\shaders folder (and has the correct code as per above), and all the other (game) shader files are still there.

If the problem persists please post your .fx

EDIT: Also make sure you uncomment the "static const float2 rcpres = " that equals your screen resolution.
Bah, the problem is still there. I copied the contents of the .fx from the original post, and checked for any of the things that you mentioned above. All of the files are placed in the right folders. However, what specific files are supposed to be in the Shaders folder besides the fakehdr.fx? Other than that, the problem remains unsolved. Anyway, this is what my .fx file contains:
CODE

//These variables will get set automatically
texture tex1;
texture tex2;
//float2 rcpres;
float CurrentEye;
//float CurrentBrightness;

sampler s0 = sampler_state { AddressU = Clamp; AddressV = Clamp; texture = <tex1>; };
sampler s1 = sampler_state { texture = <tex2>; };

//Use these to modify the behaviour of the dll
bool SinglePixel=false;
bool AffectMenus=false;
int ToggleKey=107;
int ToggleSinglePixelKey=109;
int ToggleAffectMenusKey=106;
float ReactionSpeed=0.95;

//Current Settings
static const float BloomScale = 0.65;
static const float HDRScale = -0.38;
static const float HDRAdjust = -0.10;

//rcpres must be set to the reciprical of your screen resolution
//static const float2 rcpres = { 0.0015625, 0.0020833333333 };    //640x480
//static const float2 rcpres = { 0.00125, 0.0016666666667 };    //800x600
//static const float2 rcpres = { 0.0009765625, 0.0013020833 };    //1024x768
//static const float2 rcpres = { 0.000625, 0.0008333333333 };    //1600x1200
static const float2 rcpres = { 0.00078125, 0.0009765625 };     //1280x1024

float2 PixelKernelH[13] =
{
    { -6, 0 },
    { -5, 0 },
    { -4, 0 },
    { -3, 0 },
    { -2, 0 },
    { -1, 0 },
    {  0, 0 },
    {  1, 0 },
    {  2, 0 },
    {  3, 0 },
    {  4, 0 },
    {  5, 0 },
    {  6, 0 },
};

float2 PixelKernelV[13] =
{
    { 0, -6 },
    { 0, -5 },
    { 0, -4 },
    { 0, -3 },
    { 0, -2 },
    { 0, -1 },
    { 0,  0 },
    { 0,  1 },
    { 0,  2 },
    { 0,  3 },
    { 0,  4 },
    { 0,  5 },
    { 0,  6 },
};

static const float BlurWeights[13] =
{
    0.002216,
    0.008764,
    0.026995,
    0.064759,
    0.120985,
    0.176033,
    0.199471,
    0.176033,
    0.120985,
    0.064759,
    0.026995,
    0.008764,
    0.002216,
};


float4 Bloom( in float2 Tex : TEXCOORD0 ) : COLOR0
{
    float4 Color = tex2D( s0, Tex );
    float tempHDRScale=(0.70*smoothstep(0.00,0.75,CurrentEye))+HDRScale;
    float4 Color2=0;    
    for (int i = 0; i < 13; i++)
    {    
        Color2 += tex2D( s1, Tex + (PixelKernelH[i]*rcpres) ) * BlurWeights[i];
          Color2 += tex2D( s1, Tex + (PixelKernelV[i]*rcpres) ) * BlurWeights[i];
    }
    float4 Curvemod = (0.70*Color);
    Color = clamp((0.30*Color)+((0.70-Curvemod+tempHDRScale)*pow(Color,2))+((Curvemod-tempHDRScale)*(1-pow((1-Color),2))),0,1);
    Color2 *= (BloomScale-(0.00*CurrentEye));
    return clamp(Color + Color2,0,1);
}

float4 HDRBrightPass( in float2 Tex : TEXCOORD0 ) : COLOR0
{
    float4 color = tex2D( s0, Tex );
    float tempbright = clamp((0.27*color[1])+(0.67*color[2])+(0.06*color[3]),0,1);
    float HDRAdjustBias = (0.18*pow((1-CurrentEye),3));
    float curvemod = (0.25*tempbright);
    float4 colorbias = (1-pow((1-color),2));
    float4 adjust = clamp(((color-CurrentEye)-HDRAdjust-(HDRAdjustBias)),0,1);
    color = clamp((8*pow(adjust,5)),0,1);
    //color += clamp(tex2D( s1, Tex ) - (2*(CurrentEye + 0.10)) ,0,0.75); //Uncomment this line for retina burn
    color = clamp(((1-curvemod+HDRAdjustBias)*color)+((curvemod-HDRAdjustBias)*colorbias),0,1);
    color.a = 1;
    return color;
}

technique T0
{
    pass p0 { PixelShader = compile ps_2_0 HDRBrightPass(); }
    pass p1 { PixelShader = compile ps_2_0 Bloom();    }
}
There are 19 other shader files that should be in the Oblivion\Data\Shaders folder besides the fakeHDR.fx

How many do you have?

EDIT: I checked the .fx you posted. (loaded it in my system\game)
It's good.
Yeah, I have 19 other files in the Shaders folder(shaderpackage001-019). Hmm.....now what?
O.K. you have the correct files in the correct folders, a good .fx file without the "CODE" or the line in it.
You are playing at 1280x1024.

The only thing I can suggest is to remove the d3d9.dll, and .fx file and see if the problem persists.

Also check the size of the d3d9.dll file. It should be 66.0 KB (67,584 bytes).
Right, after doing the things you suggested, the problem still remains....In any case, I just did a few test runs in Oblivion and somehow, I got lucky at one point and the error window still showed up, but the game was still running. Everything looks okay in-game, but the annoying error is preventing me from getting past the first loading screen. Either way, I'm off to sleep now, hopefully I'll be able to get this problem fixed tomorrow.
If you have removed the .fx file, and the d3d9.dll then the fakeHDR mod is not the problem.
Removing these two files removes the mod completely.

It could be a multitude of different things.
Once I had a similar problem. It turned out that my memory settings in the BIOS were altered somehow. In windows everything was fine because Cool&Quiet reduced the processor and memory clock. As soon as Oblivion started the clock was increased and Oblivion crashed. No idea why the memory settings changed, I don't remember doing that. Anyway, thats just ONE possible reason.

As nicoroshi already pointed out, it has nothing to do with the shader if the problem persists without the shader.
Tried it and it looks quite nice but my HUD is overly bright, just in-game if I go to my inventory the UI turn's back to normal. ideas?
By the way, if you want you could add a link to the Digital Vibrance-tweak thread on the original post. smile.gif

http://www.elderscrolls.com/forums/index.p...howtopic=464067
QUOTE(Juan_Anselm @ Jun 13 2006, 12:39 PM) *

Tried it and it looks quite nice but my HUD is overly bright, just in-game if I go to my inventory the UI turn's back to normal. ideas?


That's the one drawback to the FakeHDR - the HUD gets affected. There's no way around it, you just have to decide if it's worth the tradeoff of better lighting. wink.gif
QUOTE(Luchaire @ Jun 13 2006, 02:01 PM) *

That's the one drawback to the FakeHDR - the HUD gets affected. There's no way around it, you just have to decide if it's worth the tradeoff of better lighting. wink.gif



Well the over-bright hud is annoying but having AA enabled... Meh wathever I'll stay with this little trick tongue.gif
QUOTE(Juan_Anselm @ Jun 13 2006, 10:18 AM) *

Well the over-bright hud is annoying but having AA enabled... Meh wathever I'll stay with this little trick tongue.gif

FYI: The "+" key on the keyboard toggles the shader on, and off.
The three ways I cope with the overbright HUD are 1.Dark UI MOD, 2. Toggle the shader off when in vendor menus, and 3. Immersive Interface MOD.

Immersive Interface makes the HUD smaller, and has an option for faded HUD that makes the brightness less noticable.
Dark UI MOD makes the menu backgrounds a dark brown which just happens to be a color not affected by the bloom effect. (the icons at the bottom are still a little bright though).
The "+" Toggle button is the sure fire way to make menus a normal color. (PITA pressing one more button every time you enter a menu screen hence the two mods I mentioned).

Hope these ideas help you enjoy the fakeHDR+AA a little more.
Just a quick question here, what exactly causes the over bright menus?
QUOTE(Juan_Anselm @ Jun 14 2006, 09:49 PM) *

Just a quick question here, what exactly causes the over bright menus?

The fakeHDR mod.
Since it's a post process shader it kicks in after the pixel has already been rendered.
To it every pixel is just a pixel, and it treats them all the same (in game, and menus, etc).
So whatever you configure the shader to do it'll do to all pixels (that fit the configuration) regardless of where they are.

The reason it affects the HUD,and vendor menus is that they contain light colored pixels which are affected by the bloomscale value in the shader.

No way around it currently with the way the shader is written.
I've been messing with this thing for a couple of days now. I know jack squat about writting a shader, so most of my efforts have been with the .ini. I'm using the .fx file in the very first post of this thread. I liked the dynamic adjustments in the shader, but turning off bloom seemed to make the highlights that should be bright (say, polished metal refelecting the sun) just not bright enough. I ended up turning back on bloom and tweaking the values under [blurshader] in the ini from the default too:

fAlphaAddExterior=0.6000
fAlphaAddInterior=0.4250

I'm quite happy with the result, it seems highly reminiscent of the Source Engine implementation. I can't compare it to "True HDR", as my card can't do that, but I like what I see. The only thing I think I'd like to change is to have the "iris" adjust quicker, the way it is now just seems a tad too slow. I don't know value to edit in the shader though.

Also, I was going to post some screenshots, but when I opened them up they lacked both bloom or any indication of the HDR shader. Do I need to use FRAPS to take screenshots to capture these affects?
Fraps is what I use, and it seems to capture the fakeHDR lighting. I'm not sure about the .ini screenshots though as I cannot use that method, and still have AA.
As for the .fx shader values Shirosae wrote a really good description of the different lines in the shader found Here on post #175.
You also might want to check out the tweak that Kekkonen came up with found Here for adding more digital vibrance.(this will not show up on your screenshots though)
You might be able to tweak the shader to your likings and lose bloom for a better FPS.
Have fun, and happy to hear someone else enjoying the fruits of our labors.
Hi all,

firstly I want to congratulate everyone who has contributed to this mod (especially Timeslip) as it is totally awesome smile.gif

Unfortunately I've just encountered a weird problem.. I installed the mod earlier this evening and to begin with it was working perfectly fine. Since then I have installed quite a few other mods (mostly esp's & altered textures) and for some reason the FakeHDR has stopped working sad.gif

I didn't realise it would be possible for there to be a conflict between this and other mods, since nothing else alters shader settings etc.

Anyone know why this might be happening?
Is there any way to reduce the vendor screen brightness?
That's a new one on me.
The fakeHDR mod isn't even installed in the same folders as textures, or meshes (I'm sure you realize this of course).
Double check that the d3d9.dll, and .fx files are in the correct spots.
Also, you didn't by accident press the "+" key did you?
This would toggle the shader on, and off.
Might try deleting the d3d9.dll, and .fx file, and re-installing. (try the other options first).
I am currently unaware of ANY conflicts with any other mods as it's a shader, and not different texture files.
Please keep us updated.

QUOTE(Taj'Tek Hellblade @ Jun 17 2006, 05:19 PM) *

Is there any way to reduce the vendor screen brightness?

The Dark UI mod helps with this, but doesn't get rid of it totally.
You could toggle the shader off (the "+" button) when in the vendor menus.
This seems to be the best solution thus far for dealing with the overbright vendor menus.

EDIT: there are examples in the OP.
Thanks for replying so quick nicoroshi.

It appears I was being a nitwit as the shader works perfectly. I think what confused me was the fact that the effect is not particularly noticeable indoors, and I was expecting the overbright effect on the whole UI (including inventory etc.)

So in other words, I am a big silly biggrin.gif
QUOTE(Equivocality @ Jun 17 2006, 06:07 PM) *

Thanks for replying so quick nicoroshi.

It appears I was being a nitwit as the shader works perfectly. I think what confused me was the fact that the effect is not particularly noticeable indoors, and I was expecting the overbright effect on the whole UI (including inventory etc.)

So in other words, I am a big silly biggrin.gif

np
Glad to hear it's working well.
I'll have to admit you had me kinda stumped.
BTW find a light source indoors (candle etc) that reflects on a white surface (most candles indoors in the IC work well), and toggle the effect. You'll notice the difference.
Vendor\training\repair menus seem to be the worst for the overbrightness, but you're correct. Not all menus are affected as bad as those.
I toyed with the the .fx file for awhile, and couldn't quite get anything I was real happy with, so I switched back to using bloom with it. Took a few pics with FRAPs

Anvil lighthouse at different exposures:

1
2
3
I get an odd blue border around the top and left side of my screen when I turn off HDR/Bloom, turn on AA (4x), and use fake HDR.

Edit: There's no way to prevent grass pop-in without HDR, is there?
QUOTE(Taj'Tek Hellblade @ Jun 17 2006, 10:26 PM) *

Edit: There's no way to prevent grass pop-in without HDR, is there?



I wish sad.gif
QUOTE(MojoBox @ Jun 17 2006, 07:07 PM) *

I toyed with the the .fx file for awhile, and couldn't quite get anything I was real happy with, so I switched back to using bloom with it. Took a few pics with FRAPs

Anvil lighthouse at different exposures:

1
2
3

sweeeeeeeeeeeet.

QUOTE(Taj'Tek Hellblade @ Jun 17 2006, 08:26 PM) *

I get an odd blue border around the top and left side of my screen when I turn off HDR/Bloom, turn on AA (4x), and use fake HDR.

Edit: There's no way to prevent grass pop-in without HDR, is there?

Not exactly sure about the blue border you're talking about, unless you uncommented the retina burn line in the shader.
I still haven't found a setting for that that I like so have left it commented out in my version of the shader.
And, MojoBox is correct. Still no way to prevent grass pop up using fakeHDR as far as I know. Sorry.
I get about a 8 fps hit (32 instead of 40) with the cut-down version.... Is there anything else I can do to speed it up? It looks beautiful though..
Er. I put these files into my oblivion folder, and er, it crashes on startup...
QUOTE(Zaknaufein @ Jun 28 2006, 07:45 PM) *

I get about a 8 fps hit (32 instead of 40) with the cut-down version.... Is there anything else I can do to speed it up? It looks beautiful though..

Not that I know of, other than dropping the AA setting 4xAA to 2xAA. I've tried to speed mine up by lowering some of the sliders, and a few other things I could think of. No love. Seeing as the shader runs once per pixel per frame it can only go so fast. 8FPS is about right.
I suggest that you play around with the sliders to find the maximum amount of eye candy before FPS starts to drop more. Then you will know exactly how fast the shader can go on your rig, and how high you can set the sliders before they start to affect FPS.
The question you have now is, " Is 32 FPS enough for me, or do I want 40 with less eye candy?"
What's your drop in FPS with AA over vanilla?
What's your drop in FPS with HDR over vanilla?
Add the two, and see how close that is to the 8FPS drop you get with fake HDR+AA. I'm guessing it's pretty close.

QUOTE
Insaneflea

Er. I put these files into my oblivion folder, and er, it crashes on startup...


The d3d9.dll goes in the Oblivion folder (where the Oblivion.exe is located).
The fakeHDR.fx file goes in Oblivion folder\data\shaders.
Try reading the readme that came with Timeslip's fake HDR mod (trimmed\cut down version) for installation instructions. Then go to the fakeHDR.fx file, open it with notepad, rt click, select all, delete, then copy-paste the .fx code from the OP into that file.(Do not include the word "code" or the line "--------" under it. Start copy at "//These variables will get set automatically".)
Then give it another whirl.
Sorry to bump this, but I had FakeHDR a while ago and reinstalled Oblivion. Since then with so many mods around I forgot what the files I downloaded before actually do. I have a FakeHDR.7z file, a FakeHDRSource.7z file and some ATT HDR patch.

Is there a new, definitive version of FakeHDR I can download (preferably the faster Lite one), and do I need to edit any files like everyone's been doing or will the default settings be acceptable?

thanks
QUOTE(Tom* @ Jul 3 2006, 09:14 AM) *

Sorry to bump this, but I had FakeHDR a while ago and reinstalled Oblivion. Since then with so many mods around I forgot what the files I downloaded before actually do. I have a FakeHDR.7z file, a FakeHDRSource.7z file and some ATT HDR patch.

Is there a new, definitive version of FakeHDR I can download (preferably the faster Lite one), and do I need to edit any files like everyone's been doing or will the default settings be acceptable?

thanks

All your answers are in the OP.
The cut down (trimmed) version of Timeslip's fakeHDR mod runs faster than the others.
I recommend installing per the readme that comes with that mod.(link to download location in the OP)
Then go to the fakeHDR.fx file located in Data/Shaders and opening with notepad. Select all/ Delete, and copy paste the .fx code from the OP into that file.
I also recommend natural environments (I use version 1.1) to help with the sky wash out.
The ATT HDR patch isn't needed for nVidia cards, but is for some ATI cards. The readme will tell you if you need it for your card.
Although Timeslip is a genius IMO for creating this mod (among lots of other things) at last check he didn't have a computer that would allow him to play outside of the tutorial dungeon.
His settings (and shader file) have been modified by Shirosae,Myself, and others to reflect the file you see in the OP.
This is a good starting point for getting the effects you desire for the shader.
If you decide to tweak it some more Shirosae posted exellent desciptions of what each line in the shader controls (link in the OP).
Hope you continue to enjoy it.
Nicoroshi
Just a bump. wink.gif
Hi, this still seems to be the prefered thread to post questions regarding the FakeHDR mod..

I've been using this on my X800XT for quite a while now and I certainly prefer it over Bloom or standard lighting.

However, while colours are vibrant and lifelike, I don't seem to get much of the "bloom" effect, ie light "bleeding" from light sources, smooting of the horizon line etc. This was just right with default bloom, but is severely reduced with the FakeHDR mod. It seems that adjusting the BloomScale variable under "//Current Settings" makes no noticable difference, either. How can achieve more of the bloom effect?
QUOTE(DST_ @ Jul 23 2006, 06:17 AM) *

Hi, this still seems to be the prefered thread to post questions regarding the FakeHDR mod..

I've been using this on my X800XT for quite a while now and I certainly prefer it over Bloom or standard lighting.

However, while colours are vibrant and lifelike, I don't seem to get much of the "bloom" effect, ie light "bleeding" from light sources, smooting of the horizon line etc. This was just right with default bloom, but is severely reduced with the FakeHDR mod. It seems that adjusting the BloomScale variable under "//Current Settings" makes no noticable difference, either. How can achieve more of the bloom effect?

You can run Bloom at the same time as fakeHDR. (slightly more of a FPS hit tho).
Or read the guide to the lines of the fakeHDR code that Shirosae wrote found Here on post #175 for some more ideas on how to tweak the code.
Bump.
QUOTE(nicoroshi @ Jul 25 2006, 03:25 AM) *

You can run Bloom at the same time as fakeHDR. (slightly more of a FPS hit tho).
Or read the guide to the lines of the fakeHDR code that Shirosae wrote found Here on post #175 for some more ideas on how to tweak the code.


Thanks..However, the link doesn't appear to work..Maybe someone can repost the guide?
QUOTE(DST_ @ Aug 18 2006, 03:07 AM) *

Thanks..However, the link doesn't appear to work..Maybe someone can repost the guide?

Well that was a post in Timeslip's relz of the fakeHDR mod, and it has since been long past 200 posts.
Lucky I like to pack rat stuff.

CODE
float4 Bloom( in float2 Tex : TEXCOORD0 ) : COLOR0
{
    float4 Color = tex2D( s0, Tex );

        //this section controls the dynamic iris magnitude
        //reducing the '1.00' will make your 'eye' adapt less
        //HDRScale - make it more negative to increase your eyes ability to adapt to dark areas.
        //HDRScale - increase it to make your eyes able to adapt to bright areas
        //I have HDRScale set to half the multiplier, so that the middle of my band is at around medium brightness.
        //I've also set the maximum cutoff for bright scenes at 0.75,
        //so that you don't need the FULL screen to be white before your eyes adapt.
    
    float tempHDRScale=(1.00*smoothstep(0.00,0.75,CurrentEye))+HDRScale;

        //end section



        //Bloom Passes - this takes the sample from the HDRBrightPass, and blurs it into Color2

    float4 Color2=0;    
    for (int i = 0; i < 13; i++)
    {    
    Color2 += tex2D( s1, Tex + (PixelKernelH[i]*rcpres) ) * BlurWeights[i];
          Color2 += tex2D( s1, Tex + (PixelKernelV[i]*rcpres) ) * BlurWeights[i];
    }

        //end section



        //this section alters the colour curves to squish the upper and lower ends of the spectrum together, to enhance the middle
        //basically, increasing contrast between light and dark. It also creates the overbright effect
        //This, by default, is set to 0.75 and 0.25. This means that i have 75% biased curve, and 25% normal brightness.
        //Both need to add up to 1. Reduce the 0.75 and increase the 0.25 to reduce the bias curve and return to a more normal picture.

    float4 Curvemod = (0.75*Color);
    Color = clamp((0.25*Color)+((0.75-Curvemod+tempHDRScale)*pow(Color,2))+((Curvemod-tempHDRScale)*(1-pow((1-Color),2))),0,1);

        //end section




        //this section adds a multiplier to the BloomScale. Here i have it set so that Bloom is more transparent in very bright areas.
        //the shader then adds the biased curve from above with the Bloomed results of the HDRBrightPass.

    Color2 *= (BloomScale-(0.1*CurrentEye));
    return clamp(Color + Color2,0,1);

        //end section
}

float4 HDRBrightPass( in float2 Tex : TEXCOORD0 ) : COLOR0
{
    float4 color = tex2D( s0, Tex );

        //this section sets up a few variables. tempbright is the 'brightness' of the current pixel, weighted to match eye sensitivity.
        //You probably don't want to touch tempbright.
    float tempbright = clamp((0.27*color[1])+(0.67*color[2])+(0.06*color[3]),0,1);
    
        //HDRAdjustBias is added to the BrightPass. This basically increases the cutoff point for Blooming in dark areas.
    float HDRAdjustBias = (0.10*pow((1-CurrentEye),3));

        //curvemod affects how much of the 'overbright' effect is applied to the BrightPass results.
        //increase this to saturate the overbright effect more easily.
    float curvemod = (0.35*tempbright);
    
        //colorbias is a biased curve of the normal colour curve. It accentuates bright things more quickly.
        //You probably don't want to touch this either.
    float4 colorbias = (1-pow((1-color),2));

        //'adjust' is a value based on the current colour, biased by the CurrentEye adaptation, HDRAdjust, and HDRAdjustBias.
        //adjust is 0 early on, stays 0 until midway up the colour scale, and suddenly rises to 1.
        //Essentially, this section blocks out all of the dull stuff, and only lets the bright highlights of the
        //screen through. This section works well, i tried to better it and couldn't.
    float4 adjust = clamp(((color-CurrentEye)-HDRAdjust-(HDRAdjustBias)),0,1);
    color = clamp((8*pow(adjust,5)),0,1);

        //This is the retinaburn line. Because i have a normalising line after this, the effect is much less intense
        //than it used to be. I kinda like it, but it doesn't work so well at lower FPS.
    color += clamp(tex2D( s1, Tex ) - (2*(CurrentEye + 0.10)) ,0,0.75); //Uncomment this line for retina burn

        //This applies another curve Bias to the results of the BrightPass to soften the effects slightly.
        //I found that this helps prevent the colour saturation i was getting.
    color = clamp(((1-curvemod+HDRAdjustBias)*color)+((curvemod-HDRAdjustBias)*colorbias),0,1);

        //This line sets the alpha value of the current pixel to 1.
        //This is essential either here or in the Bloom Pass. Don't touch this.
    color.a = 1;
    return color;
}


There ya go, and gl
I know I haven't read through 1/6 of the pages in all of the threads involved in this thing, but I just wanted to say:

This is incredible! It makes the game so much better looking for those of us who can't use the uber-technology stuff today.

Me and my X800XT thank all of those responsible for making this happen. (I'd take screenshots, but my resolutions are lower than most of the ones posted).
I wanted to use this great tweak, but i have no idea what is "OP". Youre still saying that the newer and better version of fakeHDR is in OP. What's that?
OP is Original Poster.
QUOTE(Macc @ Aug 23 2006, 08:40 AM) *

OP is Original Poster.

Thx Macc, or in this case the 'Original Post'.
Just go to page one, and read there. Should answer your questions.

There is also a guide I posted on the forum for the mod I'm currently working on in case some of the information here has slipped into the abyss.

>>>>Link<<<<
Hi, I'm having a problem with the mod, everything seems to be working fine, but i get strange colourfull dots in the sky and pretty much on every texture there is.

http://img243.imageshack.us/my.php?image=o...01311673kr8.png

http://img98.imageshack.us/my.php?image=ob...01312471iq5.png

I have alot of mods installed, but none of i know that modifies the textures except those of max tael (natural weather etc).
QUOTE(David_TTT @ Aug 27 2006, 12:05 PM) *

Hi, I'm having a problem with the mod, everything seems to be working fine, but i get strange colourfull dots in the sky and pretty much on every texture there is.

Those could be a sign of overheating VRAM.
so what can i do about it? I just got my new graphic card, so that sound like the problem. the strange thing is that those dots only appear when i get into a fight and when I hit an enemy.
QUOTE(nicoroshi @ May 24 2006, 11:06 PM) *

Personally I like the setting at just above none to add more color, and vibrance without running into the problems of shadowed areas going black, and textureless by tweaking the HDRscale value too low.

Is it possible to make shadows darker easily? I've found shadows waay too grey, as opposed to black. I've seen my own shadow, and it's about twice as dark as Oblivion's default shadows.

[EDIT] I mean with using fake HDR. I use regular HDR, and I like it just fine. I just want darker shadows.
QUOTE(David_TTT @ Aug 27 2006, 03:05 AM) *

Hi, I'm having a problem with the mod, everything seems to be working fine, but i get strange colourfull dots in the sky and pretty much on every texture there is.

http://img243.imageshack.us/my.php?image=o...01311673kr8.png

http://img98.imageshack.us/my.php?image=ob...01312471iq5.png

I have alot of mods installed, but none of i know that modifies the textures except those of max tael (natural weather etc).

I would have to agree with azured on his assessment of the graphic dots you're seeing.
If there is any doubt you can press the "+" key as this will toggle the fakeHDR post process shader off.
If you still see the dots ( I believe you will) then it's something other than the mod.
I recommend good cable management, good airflow, and Everest home edition ( free download) to monitor your temps.

QUOTE
Is it possible to make shadows darker easily? I've found shadows waay too grey, as opposed to black. I've seen my own shadow, and it's about twice as dark as Oblivion's default shadows.

[EDIT] I mean with using fake HDR. I use regular HDR, and I like it just fine. I just want darker shadows.


Well, there are many things that the shader can do ( please see my post of Shirosae's descriptions on the previous page), but I would recommend doing some tweaking in the graphic card control panel instead
FakeHDR mod is a post process shader so it will do (whatever you configure it to do) to ALL pixels (within it's specified range) after the graphics card is done with it, and before it gets to the screen.
Fake HDR for darker shadows I feel wouldn't be worth the FPS hit of the shader running once per pixel per frame if you already have the in game HDR on.
are you josh nickerson? nicorshi?
What I would like to see is comparison screenshots between normal Bloom, true HDR and fake HDR.
QUOTE(bachinene @ Aug 30 2006, 08:34 PM) *

are you josh nickerson? nicorshi?

Not even close to my real name.
Nico=neko=Japaneese for 'cat' which is another way of saying 'dude'
Roshi=A Zen master who has reached enlightenment.

QUOTE
What I would like to see is comparison screenshots between normal Bloom, true HDR and fake HDR.


Mmmm, I think I still have some screenies around. Let me check.

Left side is true HDR with no AA. Right side is fakeHDR+4xAA.
Ruins shot
Outdoor with sky
Bridge shot

These pics are a little old, and I tweaked the fakeHDR some more since these were taken.
I increased the bloom effect a bit (as I remember), and messed with the iris effect some.
Should give you an idea though.

Also before I got into tweaking Timeslip's fakeHDR mod I tweaked the heck out of [BlurShader] in the .ini trying to get as close to HDR lighting without giving up my AA.
That thread is long since dead, but I have the test screenshots.

Left side is HDR, and right is tweaked bloom.

Indoor test
Outdoor test

With the current (in the first post of this thread) code for fakeHDR I get images like these with 4xAA.

Elyon and the Phoenix staff
Oblivion Gate

I hope that answers your questions.




hi.

i wanna give this a go.

which version of timeslips fakehdr do i download?
[theres the original.. and theres a cutdown version... download link found on first thread OP]


QUOTE(Rumtruffle @ Sep 2 2006, 10:51 AM) *

hi.

i wanna give this a go.

which version of timeslips fakehdr do i download?
[theres the original.. and theres a cutdown version... download link found on first thread OP]

The code in the original post is for the cut-down version of Timeslip's mod which is faster than the full version.
I didn't understand how to install it. Can someone help me ?
QUOTE(roudy @ Sep 3 2006, 10:19 AM) *

I didn't understand how to install it. Can someone help me ?

1.First you need to download Timeslip's fake HDR mod (the cut, or trimmed down version 1.2).>>>Here<<<
2.Put the d3d9.dll in the Oblivion Directory (where the Oblivion.exe is).
3.Put the fakeHDR.fx file under Oblivion\Data\Shaders.
4.Open the fakeHDR.fx file using notepad.
5.Right click\select all\delete.
6.Copy\paste the code from the original post on page one of this thread into that (now empty) fakeHDR.fx file.
7.Uncomment (remove the "//") in front of the line that matches your resolution within the fakeHDR.fx file. (note: check that all others are commented out).
8.Play, and enjoy.

To make sure the shader is working press the "+" key in game to toggle the shader on and off so you can see the difference.

Hope this helps, and if you still have problems PM me.

Thanks a lot !
Will this mod will if the following is in the oblivion config file:

bDoImageSpaceEffects=0

The above is necessary for my 3d glasses.

Regards,
Enterfrize
QUOTE(Enterfrize @ Sep 4 2006, 10:22 AM) *

Will this mod will if the following is in the oblivion config file:

bDoImageSpaceEffects=0

The above is necessary for my 3d glasses.

Regards,
Enterfrize

Not sure as I don't use 3D glasses so I've never tried. Seeing as it's a 'post process' shader I don't see why it wouldn't work. I believe the .ini configuration will do it's thing for the 3D glasses, and then the post process shader will come in and do it's thing to the pixels that fit the config.

Only way to know for certain is give it a try, but if I had to guess I'd say it'll work.

Plz post your results for others that might have the same question in the future.
This mod isn't compatible with the stereoscopic drivers. No luck.

Regards,
Enterfrize
QUOTE(Enterfrize @ Sep 4 2006, 09:37 PM) *

This mod isn't compatible with the stereoscopic drivers. No luck.

Regards,
Enterfrize

Bummer, but thanks for the feedback.
I'd like to customize and play around with the shader some, but I have little idea what some of the lines do.

The link in your first post to someone explaining what each line does is broken. Anyone have it archived?
Page 6 of this thread. Post 116.

Was asked not long ago, and I made a copy of the file from Shirosae.

Think I'll post on page one also to replace the broken link to Timeslip's thread.
Thanks. I honestly didn't read the entire topic. tongue.gif

Glad I wasn't the only one who noticed that.
QUOTE(DarkDragon @ Sep 8 2006, 10:15 PM) *

Thanks. I honestly didn't read the entire topic. tongue.gif

Glad I wasn't the only one who noticed that.

np, and if you come up with anything fantastic feel free to post your results here.
Quick question if anyone knows - I'm trying out the commented out retina burn line and I kinda like the effect - but is there a way to make it stay on the screen longer?

Basically is it possible to make it so that if I say, look directly at the sun and then look away I'll still have a "spot" on my screen (just like you do when you look at the sun directly in real life). You kinda get it by uncommenting that line near the bottom, but it goes away too fast to really be noticeable.

Fiddling with these settings is fun though.

Oh, and while I'm here, one other thing I'm trying to do but can't quite figure out - I'd like to increase the "range" of the iris - what I mean is that I would like the player's "eye" to adjust more to both light and dark.

I know you can change the HDR range to a lower value or higher and it'll make it adjust more in the dark or light, but is there a way to make the range work both ways?
For those guys that wants HDR and AA just sell your nvidia cards and buy an 1900 right now. There so cheap you'd only end up putting $50-$100 more on top of the sell of your nvidia cards. ATI now has the chuck patch in their latest drivers.

This is the LAST chance for you 7900GT and 7900GTX guys to get any kind of decent money selling your nvidia's before you end up being stuck with them.

$50-$100 is not that much more when you consider the first directX 10 game won't be out till at least early next year.
QUOTE(millersho @ Sep 9 2006, 08:32 AM) *

For those guys that wants HDR and AA just sell your nvidia cards and buy an 1900 right now. There so cheap you'd only end up putting $50-$100 more on top of the sell of your nvidia cards. ATI now has the chuck patch in their latest drivers.

This is the LAST chance for you 7900GT and 7900GTX guys to get any kind of decent money selling your nvidia's before you end up being stuck with them.

$50-$100 is not that much more when you consider the first directX 10 game won't be out till at least early next year.

Thanks for the update on pricing Millersho, but I'd have to shell out a bit more to replace my SLI system with Crossfire (mobo and all plus two cards).
Anyhow I still feel the in game HDR is overdone, and with graphics like this , and this I think I'll wait.
QUOTE(nicoroshi @ Sep 9 2006, 10:13 AM) *

Thanks for the update on pricing Millersho, but I'd have to shell out a bit more to replace my SLI system with Crossfire (mobo and all plus two cards).
Anyhow I still feel the in game HDR is overdone, and with graphics like this , and this I think I'll wait.


Everyone has their own opinion.

Not trying to rain on all the work you've put into the HDR stuff but I've had both now and HDR and AA make this game that much more awesome. I can understand how alot of us x800/x850 and nvidia aer quick to judge HDR cause we can't have it with AA but the fact is that you're just point out a few over done area's as the entire basis of your argument when 90% of the time it looks off the charts and really adds to the life of the graphics.

Just one man's opinion.
@ millersho.

The pics I posted were from my rig which can't do the (in game)HDR+AA at the same time.
So those pics are 1280x1024 fakeHDR+4xAA from my rig with an average outdoor framerate of 28-35.

My point is that I can configure fakeHDR to my likings and do it with my current hardware.(i.e no money out of pocket, and no hassles trying to sell my old hardware).

Granted that if I was building a system today with Oblivion in mind I probably would have gone with ATI and the chuck patch, but not because I feel the graphics are any better than fakeHDR+AA. It's the framerate at high resolutions running fakeHDR that would have swayed my opinion.

So although you brought a good point to the table for those that upgrade their systems on a regular basis and have the money to burn to do so. For me (concidering the kind of graphics, and framerate I get currently) it doesn't make sense.
QUOTE(millersho @ Sep 9 2006, 08:32 AM) *
ATI now has the chuck patch in their latest drivers.


Which drivers are those?
Great mod smile.gif..... to bad this cuts my fps in HALF sad.gif... heavy foliage areas where I ussualy get 29-43 fps I now get 15-17fps, in Imp. City: market where I usually get 38-55fps I now get 21-23fps sad.gif... I have the trimmed version of FakeHDR plus this tweaked .fx. Setting I run OB are 1280x1024, 4xAA/16xAF and everything maxed with 100% shadows. Am i that rare instance? or am I doing something wrong here. Like to enjoy the mod but I prolly wont if it effects my performance that much sad.gif.
QUOTE(Chrno-X @ Sep 10 2006, 05:55 AM) *

Great mod smile.gif..... to bad this cuts my fps in HALF sad.gif... heavy foliage areas where I ussualy get 29-43 fps I now get 15-17fps, in Imp. City: market where I usually get 38-55fps I now get 21-23fps sad.gif... I have the trimmed version of FakeHDR plus this tweaked .fx. Setting I run OB are 1280x1024, 4xAA/16xAF and everything maxed with 100% shadows. Am i that rare instance? or am I doing something wrong here. Like to enjoy the mod but I prolly wont if it effects my performance that much sad.gif.

One thing I would check is if you nVidia control panel is set for 8xAA when the game is set for 4xAA. This was one of the things that cut my FPS quite a bit because even though the game was set at 4xAA the control panel was forcing 8xAA super sampling.
Another thing that kills the FPS would be resolution. Personally I play at 1280x1024 fakeHDR+4xAA+16xAF all sliders maxed (no self, or grass shadows) with 7800GTX 512 SLI and I lose 10-12 FPS over the same settings with bloom instead of fakeHDR. This still leaves my framerate right around 30 outdoors, and 60 indoors so I can live with the hit for the increased eye-candy.

So to recap:
The shader runs once per pixel per frame so anything to reduce the number of pixels it needs to deal with will help the FPS.
1.Super sampling (major killer)
2.Resoultion.

Note: Still gonna take a framerate hit no matter what using a post process shader like this. The trick is to find settings that get you the eye candy while keeping the framerate within an acceptable range for playing.

Well, I always use "app control" on AA in OB so that can't be the problem. I could try lowering the res but since I use an LCD with a native res of 1280x1024 lowering the res will infact give me a bit of a negative impact, visually. I can live with a few fps loss but lowering the performance by 50% is just to much for me so I guess I'll have to hold out on this, I played with other settings but the fps loss is to great. sad.gif I'll be doing a full upgrade early next year, so I guess I'll hold out till then. Hopefully the next generation of nvidia GPUs will have HDR+AA..if not than I'll go with ATI.
My native resolution is 1600x1200 on my LCD. and dropping it to 1280x1024 helped a lot.

Another thought:
Do you have v-sync on?
No, V-sinc is off. I'll mess around more with it later. Time to go to work.
Hi,

Great Mod, thanks for all the work you have put into it. But i have a weird problem, somethimes when i move through a door and the computer loads the new area it goes black and then crashes.

Any ideas as to what this could be, i have done a memory tweak to my .ini increaseing the ram usage from 25MB to 50MB, i guess this could have affected it .

Andy H
QUOTE(CoralSnake @ Sep 11 2006, 04:40 AM) *

Hi,

Great Mod, thanks for all the work you have put into it. But i have a weird problem, somethimes when i move through a door and the computer loads the new area it goes black and then crashes.

Any ideas as to what this could be, i have done a memory tweak to my .ini increaseing the ram usage from 25MB to 50MB, i guess this could have affected it .

Andy H

Personally I used to have problems crashing through doorways, but was traced back to sound driver issues with the realtek drivers I was using.
I don't have that problem on my rig currently.

Suggestion: Try running without the fakeHDR mod on (move the d3d9.dll, and fakeHDR.fx file to another location), and see if the problem persists.
This should let you know if it's the mod, or something else causing the crashes.
QUOTE(nicoroshi @ Sep 11 2006, 06:23 PM) *

Personally I used to have problems crashing through doorways, but was traced back to sound driver issues with the realtek drivers I was using.
I don't have that problem on my rig currently.

Suggestion: Try running without the fakeHDR mod on (move the d3d9.dll, and fakeHDR.fx file to another location), and see if the problem persists.
This should let you know if it's the mod, or something else causing the crashes.


Anyway i can tone down the contrast on faces and make sky less washed-out (already got natural environments)? makes some look bad in direct sunlight...
QUOTE(hans_moleman @ Sep 12 2006, 04:50 AM) *

Anyway i can tone down the contrast on faces and make sky less washed-out (already got natural environments)? makes some look bad in direct sunlight...

Yes, tweak the code in the fakeHDR.fx file so you get the results you want. (page six in this thread post 116).
tried this on my x850xt platinum rig, excellent results. well done. i usually dont trsut most mods like this, but since its feedback was generally high, i gave it a go. same with the unoffical patch.
QUOTE(Chrno-X @ Sep 10 2006, 07:55 AM) *

Great mod smile.gif..... to bad this cuts my fps in HALF sad.gif... heavy foliage areas where I ussualy get 29-43 fps I now get 15-17fps, in Imp. City: market where I usually get 38-55fps I now get 21-23fps sad.gif... I have the trimmed version of FakeHDR plus this tweaked .fx. Setting I run OB are 1280x1024, 4xAA/16xAF and everything maxed with 100% shadows. Am i that rare instance? or am I doing something wrong here. Like to enjoy the mod but I prolly wont if it effects my performance that much sad.gif.


I noticed the same type of FPS drop with this mod. So I reverted to using Bloom with the following changes in the .ini you might want to try them and see if you like the result. (better lighting effect without the FPS hit)

[BlurShader]
fSunlightDimmer=1.0000
fSIEmmisiveMult=1.0000
fSISpecularMult=1.0000
fSkyBrightness=0.0100
fSunBrightness=0.0000
fAlphaAddExterior=0.2000
fAlphaAddInterior=0.7000
iBlurTexSize=256
fBlurRadius=0.0600
iNumBlurpasses=3
iBlendType=2
bUseBlurShader=1

QUOTE(apf123 @ Sep 12 2006, 04:46 PM) *

tried this on my x850xt platinum rig, excellent results. well done. i usually dont trsut most mods like this, but since its feedback was generally high, i gave it a go. same with the unoffical patch.

All thanks truly goes to the creator of the fakeHDR mod......Timeslip.
The only thing I did was tweak the .fx file to settings I liked with the help of Timeslip, Shirosae, and a lot of trial and error.
Thanks for the good word though. Makes me feel good to know others can enjoy the same eye candy I am with a card that doesn't support the in game HDR, or one that doesn't support HDR+AA.

QUOTE
I noticed the same type of FPS drop with this mod. So I reverted to using Bloom with the following changes in the .ini you might want to try them and see if you like the result. (better lighting effect without the FPS hit)

[BlurShader]
fSunlightDimmer=1.0000
fSIEmmisiveMult=1.0000
fSISpecularMult=1.0000
fSkyBrightness=0.0100
fSunBrightness=0.0000
fAlphaAddExterior=0.2000
fAlphaAddInterior=0.7000
iBlurTexSize=256
fBlurRadius=0.0600
iNumBlurpasses=3
iBlendType=2
bUseBlurShader=1


Personally I tweaked [BlurShader] in the .ini myself quite a bit before I found fakeHDR, and once upon a time had a thread with my .ini tweaks in it (long since deleted).
I also agree that if the fakeHDR mod is more of a FPS hit than you're willing to take that tweaking the [Blurshader] can get you some pretty nice results without the framerate hit.
But for me......... After experiencing the vivid colors, and the iris effect of fakeHDR there was no going back to my tweaked [Blurshader].

Fistly Nicoroshi, the Sensie....Thanks for the heads up pointing me in the right direction. Now you can see from my rig, your probably asking why the hell do you want fake HDR....Easy answer HDR shipped with Oblivion to my mind is NOT that good, plus having 2X7900 GTX means freaky nothing without the possibility of using AA+HDR. So what this little program has done is let my rig run at some very decent speeds with FakeHDR, which now having been tweaked a little is about as good, if not better than the Shipped version. PLUS I get to run at 4XAA and 16XAniso....Which just oozes quality now on my veiwsonic TFT running at 1280X1040. This is a must have mod for Nvidia graphics cards owners to get the very best from Oblivion with such a slight Frame hit.

Kudos to ALL involved on another quintessential addition to the Oblivion make-over

Sheathana'ich
QUOTE(Sheathana'ich @ Oct 28 2006, 12:09 PM) *

Fistly Nicoroshi, the Sensie....Thanks for the heads up pointing me in the right direction. Now you can see from my rig, your probably asking why the hell do you want fake HDR....Easy answer HDR shipped with Oblivion to my mind is NOT that good, plus having 2X7900 GTX means freaky nothing without the possibility of using AA+HDR. So what this little program has done is let my rig run at some very decent speeds with FakeHDR, which now having been tweaked a little is about as good, if not better than the Shipped version. PLUS I get to run at 4XAA and 16XAniso....Which just oozes quality now on my veiwsonic TFT running at 1280X1040. This is a must have mod for Nvidia graphics cards owners to get the very best from Oblivion with such a slight Frame hit.

Kudos to ALL involved on another quintessential addition to the Oblivion make-over

Sheathana'ich


7900GTX in SLI and you're limiting the resolution to 1280x1024? Pump that resolution UP!
That's a negative as my curent TFT from viewsonic only goes to 1280X1040 BUT it is the fastest TFT in the world at a response time of 2ms, my next TFT will def be a 1600X1200 model as long as it has a response of less than 8ms.....Anyways back on subject here's my first pic using FakeHDR+4XAA and 16X Aniso

Very pretty sunset over Weye

http://i147.photobucket.com/albums/r310/JM...21-06-24-71.jpg

Sheathana'ich
QUOTE(Sheathana'ich @ Oct 28 2006, 12:09 PM) *

Fistly Nicoroshi, the Sensie....Thanks for the heads up pointing me in the right direction. Now you can see from my rig, your probably asking why the hell do you want fake HDR....Easy answer HDR shipped with Oblivion to my mind is NOT that good, plus having 2X7900 GTX means freaky nothing without the possibility of using AA+HDR. So what this little program has done is let my rig run at some very decent speeds with FakeHDR, which now having been tweaked a little is about as good, if not better than the Shipped version. PLUS I get to run at 4XAA and 16XAniso....Which just oozes quality now on my veiwsonic TFT running at 1280X1040. This is a must have mod for Nvidia graphics cards owners to get the very best from Oblivion with such a slight Frame hit.

Kudos to ALL involved on another quintessential addition to the Oblivion make-over

Sheathana'ich

I play 7800 GTX 512 SLI, and totally agree with the graphics with Timeslip's mod, and my tweaks.

Pretty night sky
Oblivion Gate


QUOTE
7900GTX in SLI and you're limiting the resolution to 1280x1024? Pump that resolution UP!


The fakeHDR mod shader runs once per pixel per frame so the higher the resolution the more of a framerate hit you'll see. My LCD native is 1600x 1200 but I play at 1280x 1024 fakeHDR+4xAA+16xAF at about 30 FPS outdoors, and 60+ Indoors.Mind you this is with everything cranked full except self, and grass shadows, and about 50 mods including things like Quarl's textures, and the _far .nifs enabled.
The graphics I get was worth dropping the resolution to 1280x1024 (where my desktop is for easy viewing of writing), and giving up 8xS AA. The higher resolution and super sampling raises my FPS hit from 5-10 to 25-30 which was unacceptable.
So Underdawg when you understand how the shader works raising the resolution is a bad idea with this mod.
Okay I have done alittle tweaking if the FX file, untill such that I'm now at a loss.

I have really good ambiance of colour when the subject screen DOES NOT have a lot of lighting
What I'm trying to do is get a result that looks reasonably good for most dungeon outdoor use, where I'm not going to be that much bothered of close ups, plus I'm trying to get the shader to behave midway between BLOOM > HDR

Pictures below show what I mean ans maybe someone can suggest what else I can do.

Pic 1 Countess Valga in Chorrol high lighting conditions in hall taken with just Bloom
http://i147.photobucket.com/albums/r310/JM...21-41-52-28.jpg
Pic 2 same subject with my settings in fakehfr file, as you can see its very oversatutated, bacause of so much light in the room
http://i147.photobucket.com/albums/r310/JM...21-41-41-29.jpg

Now we start to see better results with FakeHDR+4AA in low lighting
Pic 1: The Oak and Crozier, low lighting taken with just bloom, back wall behind Talasma
http://i147.photobucket.com/albums/r310/JM...21-45-35-64.jpg
Pic 2: Same with my settings of FakeHDR(Same as the countess shot)...Notice the detail and nicer glow effect with not to much saturation
http://i147.photobucket.com/albums/r310/JM...21-45-29-68.jpg

Now the killer

Same place, The Oak and Crozier taken from the doorway looking towards the bar. great lighting with heaps of shadows
Pic 1: Bloom only, kinda dark loss of detail in my mind.
http://i147.photobucket.com/albums/r310/JM...21-47-13-15.jpg
Pic 2: My settings for FakeHDR....Very nice anbiant lighting, with extra detail now showing on the floor and ceiling, now shadowing and highlighting of characters
http://i147.photobucket.com/albums/r310/JM...21-47-19-96.jpg

So what I'm looking for is to try and keep the low light ambiance of my settings as is, BUT try and do something about the real saturated colours of faces when seen in high lighted areas.....such as halls a high lit houses

Any thoughts???

hers's my FakeHDR settings.


//These variables will get set automatically
texture tex1;
texture tex2;
//float2 rcpres;
float CurrentEye;
//float CurrentBrightness;

sampler s0 = sampler_state { AddressU = Clamp; AddressV = Clamp; texture = <tex1>; };
sampler s1 = sampler_state { texture = <tex2>; };

//Use these to modify the behaviour of the dll
bool SinglePixel=false;
bool AffectMenus=false;
int ToggleKey=107;
int ToggleSinglePixelKey=109;
int ToggleAffectMenusKey=106;
float ReactionSpeed=0.95;

//Current Settings
static const float BloomScale = 0.50;
static const float HDRScale = -0.40;
static const float HDRAdjust = -0.10;

//rcpres must be set to the reciprical of your screen resolution
//static const float2 rcpres = { 0.0015625, 0.0020833333333 }; //640x480
//static const float2 rcpres = { 0.00125, 0.0016666666667 }; //800x600
//static const float2 rcpres = { 0.0009765625, 0.0013020833 }; //1024x768
//static const float2 rcpres = { 0.000625, 0.0008333333333 }; //1600x1200
static const float2 rcpres = { 0.00078125, 0.0009765625 }; //1280x1024

float2 PixelKernelH[13] =
{
{ -6, 0 },
{ -5, 0 },
{ -4, 0 },
{ -3, 0 },
{ -2, 0 },
{ -1, 0 },
{ 0, 0 },
{ 1, 0 },
{ 2, 0 },
{ 3, 0 },
{ 4, 0 },
{ 5, 0 },
{ 6, 0 },
};

float2 PixelKernelV[13] =
{
{ 0, -6 },
{ 0, -5 },
{ 0, -4 },
{ 0, -3 },
{ 0, -2 },
{ 0, -1 },
{ 0, 0 },
{ 0, 1 },
{ 0, 2 },
{ 0, 3 },
{ 0, 4 },
{ 0, 5 },
{ 0, 6 },
};

static const float BlurWeights[13] =
{
0.002216,
0.008764,
0.026995,
0.064759,
0.120985,
0.176033,
0.199471,
0.176033,
0.120985,
0.064759,
0.026995,
0.008764,
0.002216,
};


float4 Bloom( in float2 Tex : TEXCOORD0 ) : COLOR0
{
float4 Color = tex2D( s0, Tex );
float tempHDRScale=(0.70*smoothstep(0.00,0.75,CurrentEye))+HDRScale;
float4 Color2=0;
for (int i = 0; i < 13; i++)
{
Color2 += tex2D( s1, Tex + (PixelKernelH[i]*rcpres) ) * BlurWeights[i];
Color2 += tex2D( s1, Tex + (PixelKernelV[i]*rcpres) ) * BlurWeights[i];
}
float4 Curvemod = (0.70*Color);
Color = clamp((0.30*Color)+((0.70-Curvemod+tempHDRScale)*pow(Color,2))+((Curvemod-tempHDRScale)*(1-pow((1-Color),2))),0,1);
Color2 *= (BloomScale-(0.00*CurrentEye));
return clamp(Color + Color2,0,1);
}

float4 HDRBrightPass( in float2 Tex : TEXCOORD0 ) : COLOR0
{
float4 color = tex2D( s0, Tex );
float tempbright = clamp((0.27*color[1])+(0.67*color[2])+(0.06*color[3]),0,1);
float HDRAdjustBias = (0.18*pow((1-CurrentEye),3));
float curvemod = (0.25*tempbright);
float4 colorbias = (1-pow((1-color),2));
float4 adjust = clamp(((color-CurrentEye)-HDRAdjust-(HDRAdjustBias)),0,1);
color = clamp((8*pow(adjust,5)),0,1);
//color += clamp(tex2D( s1, Tex ) - (2*(CurrentEye + 0.10)) ,0,0.75); //Uncomment this line for retina burn
color = clamp(((1-curvemod+HDRAdjustBias)*color)+((curvemod-HDRAdjustBias)*colorbias),0,1);
color.a = 1;
return color;
}

technique T0
{
pass p0 { PixelShader = compile ps_2_0 HDRBrightPass(); }
pass p1 { PixelShader = compile ps_2_0 Bloom(); }
}

As most will know this sis the trimmed down version...


Cheers

Sheathana'ich
QUOTE(nicoroshi @ Oct 28 2006, 07:56 PM) *

I play 7800 GTX 512 SLI, and totally agree with the graphics with Timeslip's mod, and my tweaks.

Pretty night sky
Oblivion Gate
The fakeHDR mod shader runs once per pixel per frame so the higher the resolution the more of a framerate hit you'll see. My LCD native is 1600x 1200 but I play at 1280x 1024 fakeHDR+4xAA+16xAF at about 30 FPS outdoors, and 60+ Indoors.Mind you this is with everything cranked full except self, and grass shadows, and about 50 mods including things like Quarl's textures, and the _far .nifs enabled.
The graphics I get was worth dropping the resolution to 1280x1024 (where my desktop is for easy viewing of writing), and giving up 8xS AA. The higher resolution and super sampling raises my FPS hit from 5-10 to 25-30 which was unacceptable.
So Underdawg when you understand how the shader works raising the resolution is a bad idea with this mod.


I see. But one would speculate that 7900GTX's in SLI would have enough power that such a set-up would have enough of a "safety-net" for FPS. I mean I am running HDR+4xAA at 1400x1050 with my minimum framerates at 25 and 7900GTX's in SLI have way more power.
QUOTE(underdawgIV @ Nov 2 2006, 05:25 PM) *

I see. But one would speculate that 7900GTX's in SLI would have enough power that such a set-up would have enough of a "safety-net" for FPS. I mean I am running HDR+4xAA at 1400x1050 with my minimum framerates at 25 and 7900GTX's in SLI have way more power.

Not necessarily more SHADER power, though; your single X1900XT has slightly more shader power than a pair of 7900GTXs combined. With a shader like this, suddenly shader power becomes much more of an issue than it already is with Oblivion.

So, while the 7900GTX SLi setup may have a spectacular fill-rate for both pixels and textures, it doesn't do quite so hot for per-pixel shaders.
QUOTE(Nottheking @ Nov 2 2006, 02:52 PM) *

Not necessarily more SHADER power, though; your single X1900XT has slightly more shader power than a pair of 7900GTXs combined. With a shader like this, suddenly shader power becomes much more of an issue than it already is with Oblivion.

So, while the 7900GTX SLi setup may have a spectacular fill-rate for both pixels and textures, it doesn't do quite so hot for per-pixel shaders.


Ai.... yes. How could I miss that.... (48 pixel shaders on the X1900XT Series) we are talking about a shader based HDR applied basically after everything else! But still, the awesome horsepower (clock speeds) could still do an admirable effort at processing those pixels through no?

QUOTE(underdawgIV @ Nov 2 2006, 05:54 PM) *

Ai.... yes. How could I miss that.... (48 pixel shaders on the X1900XT Series) we are talking about a shader based HDR applied basically after everything else! But still, the awesome horsepower (clock speeds) could still do an admirable effort at processing those pixels through no?

Keep in mind that the clock speed of the 7900GTX is 600MHz, compared to 625MHz for the X1900XT, so yes, the X1900XT has slightly more overall shader power, at a total theoretical peak of 60 billion operations per second, compared to 57.6 billion operations per second for the pair of 7900GTX cards. The pair would hanlde it correctly, just that it would take a pretty massive hit.
Also bear in mind the shader runs once per pixel per frame, and can only go so fast (processor speed) so the more pixels it needs to process per second= the more chance of exceeding the processors maximum speed.
Shirosae explains this as a "soft framerate cap". I believe I posted his description in the first post of this thread (if you're interested).

@Sheathana'ich

Try changing this value:
CODE
Color2 *= (BloomScale-(0.00*CurrentEye));


To something like this:
CODE
Color2 *= (BloomScale-(0.1*CurrentEye));


This should reduce the bloom effect in high light areas while keeping it in the low light ones.

You might still need to tweak it to your likings, but this is where I would start.
QUOTE(Nottheking @ Nov 2 2006, 03:15 PM) *

Keep in mind that the clock speed of the 7900GTX is 600MHz, compared to 625MHz for the X1900XT, so yes, the X1900XT has slightly more overall shader power, at a total theoretical peak of 60 billion operations per second, compared to 57.6 billion operations per second for the pair of 7900GTX cards. The pair would hanlde it correctly, just that it would take a pretty massive hit.


I see I see. I should think more before I give such rushed comments.
@Sheathana'ich

Well, I did some testing on my rig with the value I posted above. Probably not your solution.

I'm gonna re-post Shirosae's descriptions of the different values to help you find what works.

CODE

float4 Bloom( in float2 Tex : TEXCOORD0 ) : COLOR0
{
    float4 Color = tex2D( s0, Tex );

        //this section controls the dynamic iris magnitude
        //reducing the '1.00' will make your 'eye' adapt less
        //HDRScale - make it more negative to increase your eyes ability to adapt to dark areas.
        //HDRScale - increase it to make your eyes able to adapt to bright areas
        //I have HDRScale set to half the multiplier, so that the middle of my band is at around medium brightness.
        //I've also set the maximum cutoff for bright scenes at 0.75,
        //so that you don't need the FULL screen to be white before your eyes adapt.
    
    float tempHDRScale=(1.00*smoothstep(0.00,0.75,CurrentEye))+HDRScale;

        //end section



        //Bloom Passes - this takes the sample from the HDRBrightPass, and blurs it into Color2

    float4 Color2=0;    
    for (int i = 0; i < 13; i++)
    {    
    Color2 += tex2D( s1, Tex + (PixelKernelH[i]*rcpres) ) * BlurWeights[i];
          Color2 += tex2D( s1, Tex + (PixelKernelV[i]*rcpres) ) * BlurWeights[i];
    }

        //end section



        //this section alters the colour curves to squish the upper and lower ends of the spectrum together, to enhance the middle
        //basically, increasing contrast between light and dark. It also creates the overbright effect
        //This, by default, is set to 0.75 and 0.25. This means that i have 75% biased curve, and 25% normal brightness.
        //Both need to add up to 1. Reduce the 0.75 and increase the 0.25 to reduce the bias curve and return to a more normal picture.

    float4 Curvemod = (0.75*Color);
    Color = clamp((0.25*Color)+((0.75-Curvemod+tempHDRScale)*pow(Color,2))+((Curvemod-tempHDRScale)*(1-pow((1-Color),2))),0,1);

        //end section




        //this section adds a multiplier to the BloomScale. Here i have it set so that Bloom is more transparent in very bright areas.
        //the shader then adds the biased curve from above with the Bloomed results of the HDRBrightPass.

    Color2 *= (BloomScale-(0.1*CurrentEye));
    return clamp(Color + Color2,0,1);

        //end section
}

float4 HDRBrightPass( in float2 Tex : TEXCOORD0 ) : COLOR0
{
    float4 color = tex2D( s0, Tex );

        //this section sets up a few variables. tempbright is the 'brightness' of the current pixel, weighted to match eye sensitivity.
        //You probably don't want to touch tempbright.
    float tempbright = clamp((0.27*color[1])+(0.67*color[2])+(0.06*color[3]),0,1);
    
        //HDRAdjustBias is added to the BrightPass. This basically increases the cutoff point for Blooming in dark areas.
    float HDRAdjustBias = (0.10*pow((1-CurrentEye),3));

        //curvemod affects how much of the 'overbright' effect is applied to the BrightPass results.
        //increase this to saturate the overbright effect more easily.
    float curvemod = (0.35*tempbright);
    
        //colorbias is a biased curve of the normal colour curve. It accentuates bright things more quickly.
        //You probably don't want to touch this either.
    float4 colorbias = (1-pow((1-color),2));

        //'adjust' is a value based on the current colour, biased by the CurrentEye adaptation, HDRAdjust, and HDRAdjustBias.
        //adjust is 0 early on, stays 0 until midway up the colour scale, and suddenly rises to 1.
        //Essentially, this section blocks out all of the dull stuff, and only lets the bright highlights of the
        //screen through. This section works well, i tried to better it and couldn't.
    float4 adjust = clamp(((color-CurrentEye)-HDRAdjust-(HDRAdjustBias)),0,1);
    color = clamp((8*pow(adjust,5)),0,1);

        //This is the retinaburn line. Because i have a normalising line after this, the effect is much less intense
        //than it used to be. I kinda like it, but it doesn't work so well at lower FPS.
    color += clamp(tex2D( s1, Tex ) - (2*(CurrentEye + 0.10)) ,0,0.75); //Uncomment this line for retina burn

        //This applies another curve Bias to the results of the BrightPass to soften the effects slightly.
        //I found that this helps prevent the colour saturation i was getting.
    color = clamp(((1-curvemod+HDRAdjustBias)*color)+((curvemod-HDRAdjustBias)*colorbias),0,1);

        //This line sets the alpha value of the current pixel to 1.
        //This is essential either here or in the Bloom Pass. Don't touch this.
    color.a = 1;
    return color;
}


Again I hope this helps.
One question:
Does this mod add the fade-in effect for grass just like real hdr does?
QUOTE(newster123 @ Dec 18 2006, 03:32 PM) *

One question:
Does this mod add the fade-in effect for grass just like real hdr does?


No. Which bugged me greatly as I really wanted to make use of this back when I had a 7600GT. smile.gif
Underdawg is 100% correct.
I was kinda hoping the same thing, but this is a post process shader so treats all pixels that fall within the definition of the code the same. It does not change the way things are rendered from the graphics card.
[simple explaination]
It only applies the shading (per the code) after the graphics card has already rendered the frame.

Bummer I know to still have 'pop-in items', but I have countered this by running my grass distance maxed, and tweaked to [Grass]
iMinGrassSize=120
fGrassEndDistance=8000.0000
fGrassStartFadeDistance=7500.0000
in the .ini.
The actor,and objects sliders are also maxed, and I'm running a mod called "Almost everything VWD" which allows buildings, runestones, ruins, and the like to be seen (low poly versions) from great distances so no pop-in on the buildings.

Still get some pop-in (when the distance viewable is above the 8000 mark) on grass, and trees but creatures, actors, and buildings don't pop.

I've played with going to Bloom+AA and the colors were drab IMO (still get pop-in with Bloom anyway).
Also tried high resolution with the 'in game' HDR but although it stopped the pop in the jaggies from no AA gave me a headache (even at 1600x1200), and the HDR still looked overdone to my eye.

End result is I still play 1280x1024 (tweaked)fakeHDR+4xAA+16xAF with a buttload of visual mods (Qarl's textures, Almost Everything VWD, etc),and still get acceptable framerate 20-40 outdoors, 50-100+ indoors with a smooth vivid picture.
For that I can overlook some grass pop-in at far distances.

Guess it all depends on what's more important to you.
Is this a dead thread? None of the links work and I dont know where to get FakeHDR
QUOTE(Vendayn @ Dec 25 2006, 11:42 AM) *

Is this a dead thread? None of the links work and I dont know where to get FakeHDR

The thread isn't dead as I still find time to keep an eye on it, and answer questions.
The first two threads have been deleted so those must be the links you are refering to.


How do I install it?

1. Go >>>Here<<< , and download Timeslip's 'cut down version 1.2' (This is the version the code in the OP is written for).

2.Follow the installation instructions for that mod.
(Basically drop the d3d9.dll file in the Oblivion Directory (where the Oblivion.exe is located), and the fakeHDR.fx file in the Oblivion\Data\Shaders folder).

3. Open the fakeHDR.fx file with notepad. Right click\select all\delete.

4.Copy\Paste the code from the OP of this thread into that folder.

5. Play, and enjoy.

Important Notes:
A.Be sure and uncomment the resolution in the code that you play the game in. (currently it's set for 1280x1024).
B.If using an ATI Graphics card please read Timeslip's readme for details regarding the ATT compatibility patch


I will delete the dead threads from the OP, and copy\paste this description in it's place.
I love this mod. I used to have an x800XT, and I loved HDR. This mod made Oblivion much better.
I am kinda weird, I think the HDR in Oblivion is not strong enough. When I used this, I turned it up pretty high, (higher then the recommended "super bright bloom") so Oblivion would look more magical. I now have an 8800GTX, but sometimes I still want that super-bright bloom. I am probably going to download it again to see how it goes. I do have a few questions, though.
What is the difference between this, and the original Timeslip's fake HDR?
I never noticed much of a performance decrease with that one.
Will it work on an 8800GTX?
QUOTE(Taowolf51 @ Apr 20 2007, 04:58 PM) *
I love this mod. I used to have an x800XT, and I loved HDR. This mod made Oblivion much better.
I am kinda weird, I think the HDR in Oblivion is not strong enough. When I used this, I turned it up pretty high, (higher then the recommended "super bright bloom") so Oblivion would look more magical. I now have an 8800GTX, but sometimes I still want that super-bright bloom. I am probably going to download it again to see how it goes. I do have a few questions, though.
What is the difference between this, and the original Timeslip's fake HDR?
I never noticed much of a performance decrease with that one.
Will it work on an 8800GTX?

The difference is in the code. I tweaked the code of the cut down version to increase the color vibrance, and tweaked the iris effect timing to my taste.
What I've found is the higher your starting framerate, and the higher resolution you're running the more of a framerate hit you'll experience using this post process shader.
But........after experiencing it, and not being able to live without AA I'll take the framerate hit for the better visuals.
I play 1280x 1024 with fakeHDR+16xAF and about 60 mods (including AEVWD, and Qarl's texture pack 2, Frans, and MMM) on a 4800+X2 with 7800 GTX 512 SLI, and I get about 20-45 FPS outdoors (may drop to high teens in heavy forest with multiple monsters), and 50+ indoors.
My guess is you'll still have a playable framerate using this unless you're running a really high resolution.
Only way to know for sure is to try, and see. You can toggle the fakeHDR using the "+" key. So try it.
QUOTE(nicoroshi @ Apr 24 2007, 09:09 PM) *
The difference is in the code. I tweaked the code of the cut down version to increase the color vibrance, and tweaked the iris effect timing to my taste.
What I've found is the higher your starting framerate, and the higher resolution you're running the more of a framerate hit you'll experience using this post process shader.
But........after experiencing it, and not being able to live without AA I'll take the framerate hit for the better visuals.
I play 1280x 1024 with fakeHDR+16xAF and about 60 mods (including AEVWD, and Qarl's texture pack 2, Frans, and MMM) on a 4800+X2 with 7800 GTX 512 SLI, and I get about 20-45 FPS outdoors (may drop to high teens in heavy forest with multiple monsters), and 50+ indoors.
My guess is you'll still have a playable framerate using this unless you're running a really high resolution.
Only way to know for sure is to try, and see. You can toggle the fakeHDR using the "+" key. So try it.

Yeah, I used the Timeslip version (I had it on a disk), and it works. I do get a hit (especially since I am running HDR and fake HDR laugh.gif) It really makes the game look magical. I don't feel the hit, though.
Will it look better using your code? (instead of timeslip's) Can I modify the strength of the HDR in your code?
Also, I noticed, the fake HDR has some stuff the real HDR doesn't. Like the eye adjustment. (ex. you are in a cave, you leave the cave, and it is a really bright day. The screen gets very bright, then the eyes adjust, and it darkens to normal levels (like in real life)).
Does your coding keep that feature?
QUOTE(Taowolf51 @ Apr 27 2007, 02:07 PM) *
Yeah, I used the Timeslip version (I had it on a disk), and it works. I do get a hit (especially since I am running HDR and fake HDR laugh.gif) It really makes the game look magical. I don't feel the hit, though.
Will it look better using your code? (instead of timeslip's) Can I modify the strength of the HDR in your code?
Also, I noticed, the fake HDR has some stuff the real HDR doesn't. Like the eye adjustment. (ex. you are in a cave, you leave the cave, and it is a really bright day. The screen gets very bright, then the eyes adjust, and it darkens to normal levels (like in real life)).
Does your coding keep that feature?

All these things are adjustable in the code.
As to what looks better that is a matter of opinion. You may not like what I do.
Please see post #171 in this thread where Shirosae wrote the code out with descriptions as to what each line does.
I suggest trying my posted code in the OP, and then tweaking the values to your liking from there.
At the time Timeslip created this mod he was unable to play outside of the tutorial dungeon so could not fully test the effects. All I did was tweak the values in the code using mainly trial, and error to find what I liked.

It looks like this on my rig.

Full daylight
Night sky with fire, and ice mod
Sun shot 1
Sun shot 2
Moon over ruins at sunset
The IC
Anyone for a game of flaming goblin?
Darn Imageshack resized this nice forest shot
QUOTE(nicoroshi @ Apr 29 2007, 01:40 AM) *
All these things are adjustable in the code.
As to what looks better that is a matter of opinion. You may not like what I do.
Please see post #171 in this thread where Shirosae wrote the code out with descriptions as to what each line does.
I suggest trying my posted code in the OP, and then tweaking the values to your liking from there.
At the time Timeslip created this mod he was unable to play outside of the tutorial dungeon so could not fully test the effects. All I did was tweak the values in the code using mainly trial, and error to find what I liked.

It looks like this on my rig.

Full daylight
Night sky with fire, and ice mod
Sun shot 1
Sun shot 2
Moon over ruins at sunset
The IC
Anyone for a game of flaming goblin?
Darn Imageshack resized this nice forest shot

Wow, yours looks very nice. I will try yours and see how it goes. What weapon/armor mod was that?
QUOTE(Taowolf51 @ Apr 29 2007, 02:15 PM) *
Wow, yours looks very nice. I will try yours and see how it goes. What weapon/armor mod was that?

Search in my siggy for the Dreadweave complete, and the last two shots is the bow of the Drow.
The arrows in the first shot will probably be released this week, and is from a combined effort of FlyFightFlea (particle, and scripted impact effects), Hobbs (quest,scripts, and voice acting), and myself (meshes,textures, and voice acting).
Keep an eye out for 'Arrows of the Ayleid King'
Several months later... and I'm back to playing with bloom+AA after finally getting fed up with jaggies again.

So I thought I'd give FakeHDR a whirl again, having had problems with it on my old system.

Alas, the new system has the same problem as the old: exiting the game with FakeHDR enabled invariably locks the system up tight as a drum and only a hard reset works. *sigh* Any suggestions?
QUOTE(Luchaire @ Apr 30 2007, 03:53 PM) *
Several months later... and I'm back to playing with bloom+AA after finally getting fed up with jaggies again.

So I thought I'd give FakeHDR a whirl again, having had problems with it on my old system.

Alas, the new system has the same problem as the old: exiting the game with FakeHDR enabled invariably locks the system up tight as a drum and only a hard reset works. *sigh* Any suggestions?

Hmm, I have never had that problem, but you might try toggling the shader off using the "+" button on your keyboard before exit to see if it's the shader actually causing the lock-up.
Another question (and random thought):
Are you using the trimmed version of Timeslip's mod?
The code in the OP was designed to work with the trimmed version (cut down).
Another thing to try:
Move the d3d9.dll, and the fakeHDR.fx file out of the Oblivion folder (uninstall the mod) and see if the problem persists. It is possible that something else may be causing the problem so testing this may help you to find if it's actually the shader or something else causing the issue.
Final Option: If you find that the mod is for sure the cause you might try asking Timeslip about his thoughts on the subject as he is the creator, and would be more help than I in finding the issue (perhaps a .ini setting that changed with 1.2).
Please post what you discover.

My specs for comparison:
AMD 4800+ X2
2 GB dual channel corsair ram
2x 7800 GTX 512 SLI
Asus A8N-SLI Deluxe mobo

Final thought: I know that there is a compatibility patch for ATI cards. Are you running ATI?
QUOTE(nicoroshi @ May 1 2007, 01:12 AM) *
Hmm, I have never had that problem, but you might try toggling the shader off using the "+" button on your keyboard before exit to see if it's the shader actually causing the lock-up.


I forgot about the toggle. Will try that.

QUOTE
Another question (and random thought):
Are you using the trimmed version of Timeslip's mod?


Yes.

QUOTE
Move the d3d9.dll, and the fakeHDR.fx file out of the Oblivion folder (uninstall the mod) and see if the problem persists. It is possible that something else may be causing the problem so testing this may help you to find if it's actually the shader or something else causing the issue.


I know without doubt it's the shader. It's repeatable. I install it and boom, lockup. Disable it and back to perfect, no-crashing Oblivion. Reinstall it, lockup. I've tested this several dozen times in the past.

QUOTE
Final Option: If you find that the mod is for sure the cause you might try asking Timeslip about his thoughts on the subject as he is the creator, and would be more help than I in finding the issue (perhaps a .ini setting that changed with 1.2).
Please post what you discover.

My specs for comparison:
AMD 4800+ X2
2 GB dual channel corsair ram
2x 7800 GTX 512 SLI
Asus A8N-SLI Deluxe mobo

Final thought: I know that there is a compatibility patch for ATI cards. Are you running ATI?


Nope, no ATI. Running these specs:
Intel Core 2 Duo E6300
2GB dual channel kingston RAM
XFX 7800GS running 93.71 drivers
Soundblaster Audigy 4

Anyway, will try the toggle thing. I suspect it involves the .dll not "letting go" so maybe having it toggled will help.

EDIT: And it's not a 1.2 thing. I had this same problem (even posted it in this thread or an earlier one) on my old system last year too, long before 1.2 came out (old system: AthlonXP 2900+, 1GB Corsair, 7800GS).
Thanks for answering my questions Luchaire.

Let us know if the toggle off before exit works for you.

Another thing that may be worth mentioning. I run the 93.81 beta drivers from nVidia.

I have found better performance 4378 in OB with greater stability using these on my rig.
(note: If you didn't know I'm always trying to squeeze a little more out of my rig, and have tested just about every driver available that's compatible with my cards including the tweaked ones).
QUOTE(nicoroshi @ May 1 2007, 05:19 PM) *
(note: If you didn't know I'm always trying to squeeze a little more out of my rig, and have tested just about every driver available that's compatible with my cards including the tweaked ones).


Yeah, me too. Have tried every single driver release (official, beta, or tweaked by Xtreme-G) from 77.xx through 97.92 (I've also downloaded but have yet to actually test 158.16). My all-time favorite is still 84.37 but 93.71 is the best 9x.xx for my system. 93.81 introduced a weird stutter for me, and 94.20, while giving insanely amazing performance (as in several hundred points in 3dMark06), didn't let me save any application profiles, even through nHancer. sad.gif

Anyway, on topic... haven't had a chance to test the toggle yet, but will later tonight. I'll let ya know. wink.gif
Well, interesting. Toggling the shader off does indeed prevent it from locking up on exit. Now all I have to do is remember to do that. wink.gif
QUOTE(Luchaire @ May 1 2007, 06:39 PM) *
Well, interesting. Toggling the shader off does indeed prevent it from locking up on exit. Now all I have to do is remember to do that. wink.gif

Sweet. Glad to hear it worked for you. It must be the still hooked d3d9.dll that's causing it.
Glad I could help. smile.gif
Just some screenshots of 4xAA+FakeHDR on a 7800GS (resized to 800x600). I haven't tweaked the settings yet; still using the ones from the OP.

In Vilverin
Vilverin again
Sunset
Back to the sunset
Full daylight
Thanks for the screenies Luchaire. Beautiful, and vibrant.
Kinda surprised I didn't see a Tabaxi in there though.
QUOTE(nicoroshi @ May 2 2007, 06:53 PM) *
Kinda surprised I didn't see a Tabaxi in there though.


laugh.gif Well, whenever I do anything involving testing, especially of framerates, I use an old save game of mine from ages ago, one where I can load it up, hit auto-run, hit the benchmark key for FRAPS, and let it go for 120 seconds through the Great Forest. It's a good setup for performance comparisons. I happened to be using that save when I was testing the FakeHDR and decided to snap off the screenshots. wink.gif
Hmmm....this CTDs on Oblivion startup for me. Using an ATI card, but the fix won't apply, as I'm using patched Oblivion (doesn't seem to recognize the 1.2 patch?)

Help?
QUOTE(XanderF @ May 16 2007, 08:53 PM) *
Hmmm....this CTDs on Oblivion startup for me. Using an ATI card, but the fix won't apply, as I'm using patched Oblivion (doesn't seem to recognize the 1.2 patch?)

Help?

I'm playing on an nVidia card with patch 1.2.0.416 installed. All works fine.

I know Timeslip released a patch for older ATI cards using ATT.

The readme states:
CODE
DO NOT USE THIS PATCH UNLESS YOU NEED TO!

This patch is only needed if you use an old version of ATT, and oblivion crashes on startup. If oblivion already works normally, then don't risk using it.

Install the fake hdr mod first, and then copy this exe into the oblivion folder and run it. It will display a message along the lines of 'hdr patch applied'. Oblivion, the launcher and the CS should then start up correctly.

Before uninstalling the fake hdr mod, run this a second time. It will display a message along the lines of 'patch removed'. If you forget to do this, oblivion will no longer start up.

This patch does not work with the direct to drive version of oblivion. Neither will it work with the oblivion patch, if bethesda ever get around to releasing it.


Well short of suggesting contacting Timeslip about a patch compatible with version 1.2 I cannot help you. Sorry.
//rcpres must be set to the reciprical of your screen resolution
//static const float2 rcpres = { 0.0015625, 0.0020833333333 }; //640x480
//static const float2 rcpres = { 0.00125, 0.0016666666667 }; //800x600
//static const float2 rcpres = { 0.0009765625, 0.0013020833 }; //1024x768
//static const float2 rcpres = { 0.000625, 0.0008333333333 }; //1600x1200
static const float2 rcpres = { 0.00078125, 0.0009765625 }; //1280x1024

So if Im playing at 800x600, what do I do to set it here?

Also, what can I change in this file to make it look a little more like the vanilla OB HDR (yes, I really did like it).
QUOTE(nicoroshi @ May 16 2007, 09:29 PM) *
I'm playing on an nVidia card with patch 1.2.0.416 installed. All works fine.

I know Timeslip released a patch for older ATI cards using ATT.

The readme states:
CODE
DO NOT USE THIS PATCH UNLESS YOU NEED TO!

This patch is only needed if you use an old version of ATT, and oblivion crashes on startup. If oblivion already works normally, then don't risk using it.

Install the fake hdr mod first, and then copy this exe into the oblivion folder and run it. It will display a message along the lines of 'hdr patch applied'. Oblivion, the launcher and the CS should then start up correctly.

Before uninstalling the fake hdr mod, run this a second time. It will display a message along the lines of 'patch removed'. If you forget to do this, oblivion will no longer start up.

This patch does not work with the direct to drive version of oblivion. Neither will it work with the oblivion patch, if bethesda ever get around to releasing it.


Well short of suggesting contacting Timeslip about a patch compatible with version 1.2 I cannot help you. Sorry.


Actually, I think I found the solution to the problem.

I can't disable HDR at *all* without the game CTD on startup. As soon as I disable HDR, it will get as far as the intro menu, but I cannot select any option, and after a few seconds of music, *bam*, desktop.

I think it's one of the mods I had installed, as I noticed some time ago I could no longer turn off the 'darnified BTMod' without the same thing happening. May just have to uninstall + reinstall.
QUOTE(haon8 @ May 17 2007, 06:17 AM) *
//rcpres must be set to the reciprical of your screen resolution
//static const float2 rcpres = { 0.0015625, 0.0020833333333 }; //640x480
//static const float2 rcpres = { 0.00125, 0.0016666666667 }; //800x600
//static const float2 rcpres = { 0.0009765625, 0.0013020833 }; //1024x768
//static const float2 rcpres = { 0.000625, 0.0008333333333 }; //1600x1200
static const float2 rcpres = { 0.00078125, 0.0009765625 }; //1280x1024

So if Im playing at 800x600, what do I do to set it here?

Also, what can I change in this file to make it look a little more like the vanilla OB HDR (yes, I really did like it).


So any help?
QUOTE(haon8 @ May 17 2007, 05:17 AM) *
//rcpres must be set to the reciprical of your screen resolution
//static const float2 rcpres = { 0.0015625, 0.0020833333333 }; //640x480
//static const float2 rcpres = { 0.00125, 0.0016666666667 }; //800x600
//static const float2 rcpres = { 0.0009765625, 0.0013020833 }; //1024x768
//static const float2 rcpres = { 0.000625, 0.0008333333333 }; //1600x1200
static const float2 rcpres = { 0.00078125, 0.0009765625 }; //1280x1024

So if Im playing at 800x600, what do I do to set it here?

Also, what can I change in this file to make it look a little more like the vanilla OB HDR (yes, I really did like it).


Just like this:

//rcpres must be set to the reciprical of your screen resolution
//static const float2 rcpres = { 0.0015625, 0.0020833333333 }; //640x480
static const float2 rcpres = { 0.00125, 0.0016666666667 }; //800x600
//static const float2 rcpres = { 0.0009765625, 0.0013020833 }; //1024x768
//static const float2 rcpres = { 0.000625, 0.0008333333333 }; //1600x1200
//static const float2 rcpres = { 0.00078125, 0.0009765625 }; //1280x1024
QUOTE(Luchaire @ May 17 2007, 02:54 PM) *
Just like this:

//rcpres must be set to the reciprical of your screen resolution
//static const float2 rcpres = { 0.0015625, 0.0020833333333 }; //640x480
static const float2 rcpres = { 0.00125, 0.0016666666667 }; //800x600
//static const float2 rcpres = { 0.0009765625, 0.0013020833 }; //1024x768
//static const float2 rcpres = { 0.000625, 0.0008333333333 }; //1600x1200
//static const float2 rcpres = { 0.00078125, 0.0009765625 }; //1280x1024


Thanks Luch. Also I was wondering if there was a way to make it look more like the regular OB HDR?
QUOTE(haon8 @ May 17 2007, 02:57 PM) *
Thanks Luch. Also I was wondering if there was a way to make it look more like the regular OB HDR?


Anyone?
QUOTE
QUOTE(Dorign @ May 29 2006, 01:41 PM) *

I tried the full version with Shirosea's settings (I think) and it seems like blood flickers excessively on walls. Also, what would the code be for

//static const float2 rcpres = { 0.000625, 0.0008333333333 }; //1600x1200

at 1440x900?

1/1440=.000694444444444
1/900=.001111111111111

Therefore:
CODE
static const float2 rcpres = { 0.000694444444444, 0.0011111111111 }; //1440x900


Hope this clears it up for anyone without a resolution mentioned already.



Above is from post #41 in this thread.

QUOTE
@Sheathana'ich

Well, I did some testing on my rig with the value I posted above. Probably not your solution.

I'm gonna re-post Shirosae's descriptions of the different values to help you find what works.

CODE

float4 Bloom( in float2 Tex : TEXCOORD0 ) : COLOR0
{
float4 Color = tex2D( s0, Tex );

//this section controls the dynamic iris magnitude
//reducing the '1.00' will make your 'eye' adapt less
//HDRScale - make it more negative to increase your eyes ability to adapt to dark areas.
//HDRScale - increase it to make your eyes able to adapt to bright areas
//I have HDRScale set to half the multiplier, so that the middle of my band is at around medium brightness.
//I've also set the maximum cutoff for bright scenes at 0.75,
//so that you don't need the FULL screen to be white before your eyes adapt.

float tempHDRScale=(1.00*smoothstep(0.00,0.75,CurrentEye))+HDRScale;

//end section



//Bloom Passes - this takes the sample from the HDRBrightPass, and blurs it into Color2

float4 Color2=0;
for (int i = 0; i < 13; i++)
{
Color2 += tex2D( s1, Tex + (PixelKernelH[i]*rcpres) ) * BlurWeights[i];
Color2 += tex2D( s1, Tex + (PixelKernelV[i]*rcpres) ) * BlurWeights[i];
}

//end section



//this section alters the colour curves to squish the upper and lower ends of the spectrum together, to enhance the middle
//basically, increasing contrast between light and dark. It also creates the overbright effect
//This, by default, is set to 0.75 and 0.25. This means that i have 75% biased curve, and 25% normal brightness.
//Both need to add up to 1. Reduce the 0.75 and increase the 0.25 to reduce the bias curve and return to a more normal picture.

float4 Curvemod = (0.75*Color);
Color = clamp((0.25*Color)+((0.75-Curvemod+tempHDRScale)*pow(Color,2))+((Curvemod-tempHDRScale)*(1-pow((1-Color),2))),0,1);

//end section




//this section adds a multiplier to the BloomScale. Here i have it set so that Bloom is more transparent in very bright areas.
//the shader then adds the biased curve from above with the Bloomed results of the HDRBrightPass.

Color2 *= (BloomScale-(0.1*CurrentEye));
return clamp(Color + Color2,0,1);

//end section
}

float4 HDRBrightPass( in float2 Tex : TEXCOORD0 ) : COLOR0
{
float4 color = tex2D( s0, Tex );

//this section sets up a few variables. tempbright is the 'brightness' of the current pixel, weighted to match eye sensitivity.
//You probably don't want to touch tempbright.
float tempbright = clamp((0.27*color[1])+(0.67*color[2])+(0.06*color[3]),0,1);

//HDRAdjustBias is added to the BrightPass. This basically increases the cutoff point for Blooming in dark areas.
float HDRAdjustBias = (0.10*pow((1-CurrentEye),3));

//curvemod affects how much of the 'overbright' effect is applied to the BrightPass results.
//increase this to saturate the overbright effect more easily.
float curvemod = (0.35*tempbright);

//colorbias is a biased curve of the normal colour curve. It accentuates bright things more quickly.
//You probably don't want to touch this either.
float4 colorbias = (1-pow((1-color),2));

//'adjust' is a value based on the current colour, biased by the CurrentEye adaptation, HDRAdjust, and HDRAdjustBias.
//adjust is 0 early on, stays 0 until midway up the colour scale, and suddenly rises to 1.
//Essentially, this section blocks out all of the dull stuff, and only lets the bright highlights of the
//screen through. This section works well, i tried to better it and couldn't.
float4 adjust = clamp(((color-CurrentEye)-HDRAdjust-(HDRAdjustBias)),0,1);
color = clamp((8*pow(adjust,5)),0,1);

//This is the retinaburn line. Because i have a normalising line after this, the effect is much less intense
//than it used to be. I kinda like it, but it doesn't work so well at lower FPS.
color += clamp(tex2D( s1, Tex ) - (2*(CurrentEye + 0.10)) ,0,0.75); //Uncomment this line for retina burn

//This applies another curve Bias to the results of the BrightPass to soften the effects slightly.
//I found that this helps prevent the colou 8ed r saturation i was getting.
color = clamp(((1-curvemod+HDRAdjustBias)*color)+((curvemod-HDRAdjustBias)*colorbias),0,1);

//This line sets the alpha value of the current pixel to 1.
//This is essential either here or in the Bloom Pass. Don't touch this.
color.a = 1;
return color;
}


Above is from post #141 in this thread.

All I can suggest is that you play with the code using Shirosae's descriptions of what each line of the code does (Above) until you find what you like. The code in the OP is what I found I personally liked.

On another note I have watched this topic through three threads, and have been around to answer questions that arose while applying my tweaks to the code that Timeslip wrote, and Shirosae tweaked.
I have become rather busy with modding Oblivion, and believe that most all of the questions have been answered in this last thread for those that care to read them.

I hereby take my leave of hosting this thread to apply myself to creating more content for the game.
I hope I have been at least helpful in getting more eye candy out of cards not capable of HDR+AA with the tweaked code posted here.

Huge thanks to the creator of this awesome mod which I still use, and enjoy.

Thank You Timeslip for making my game so much more enjoyable than it was out of the box!

Back to creating.........
Nico

Closed for post limit
Submit a Thread