Shelter from Magnus' Blaze 3

Post » Sat May 14, 2011 2:21 am

"Maximum view distance" ??
Whatd do you mean? 8 cells ? more ?
or an other setting?
User avatar
Laura Shipley
 
Posts: 3564
Joined: Thu Oct 26, 2006 4:47 am

Post » Fri May 13, 2011 1:44 pm

"Maximum view distance" ??
Whatd do you mean? 8 cells ? more ?
or an other setting?


Morrowind's native draw distance, not the Distant Land cell distance.
User avatar
Fam Mughal
 
Posts: 3468
Joined: Sat May 26, 2007 3:18 am

Post » Fri May 13, 2011 12:17 pm

It seems that very far distant statics don't show up, even with sufficiently small min size. The far distant statics do however pop in, as do the near ones.
Will distant statics fade in/out in future builds?

And is it possible to implement a fps lock/limit? My fps barely surpass the 20 mark, except when I look at the sky. Those huge fps jumps are quite a pain for the eye.
User avatar
Matt Bigelow
 
Posts: 3350
Joined: Sun Sep 30, 2007 6:36 pm

Post » Sat May 14, 2011 1:39 am

You can lock FPS by editing morrowind.ini and changing the Max FPS= line. It will be added to the UI soon.
User avatar
SHAWNNA-KAY
 
Posts: 3444
Joined: Mon Dec 18, 2006 1:22 pm

Post » Fri May 13, 2011 3:48 pm

The asterisk doesn't mean much these days. Try binding a macro to toggle MW/MGE blending and toggling it in-game. I would need to see a screenshot of the problem as well.


http://zapodaj.net/images/baeb3b4c97b5.jpg

In the picture I've marked the spotks that "move" when running around town, it's mainly rooftops. I've binded "Toggle AA" but nothing happends when I was using that bind.

I've binded "Toggle MGE/MW blending" and when toggling it the line when MW draw distance ends and Distand Land starts become visible when blending is off. But it does nothing with jaggies.
User avatar
sally R
 
Posts: 3503
Joined: Mon Sep 25, 2006 10:34 pm

Post » Fri May 13, 2011 7:43 pm

Sorry about the all the keybinds not working. The JPG quality is bleh, my guess is it's likely to be an un-mipmapped texture that's causing that. It will cause sparkles and shimmer movement in the distance. You should find that texture and generate a full mip chain for it.
User avatar
Latino HeaT
 
Posts: 3402
Joined: Thu Nov 08, 2007 6:21 pm

Post » Fri May 13, 2011 4:03 pm

This isn't a problem, I don't use binds at all, just wanted to test that AA thingy.

As for the mipmaps, is "textureanolysis" script can be used to determine that texture? From what I see theres a plenty of textures that have no mip maps. Is there any program that can generate that mipmaps? Possibly using data from texture anolysis?
User avatar
Laura Elizabeth
 
Posts: 3454
Joined: Wed Oct 11, 2006 7:34 pm

Post » Sat May 14, 2011 1:07 am

There's going to be a large number of textures that weren't published in the best possible format. I hope to automate it within MGE, though it causes problems with Wrye Mash BAIN detecting updated textures all the time. It is simplest to just look at the nif for one of the house meshes and identify the texture that way. The best (unstable) tool at the moment is http://planetelderscrolls.gamespy.com/View.php?view=Utilities.Detail&id=76, but read the comments there, and turn off the DXT1a features (they don't mip properly), turn off mesh optimizers, mesh texture renaming and everything but the texture things.
User avatar
Cameron Wood
 
Posts: 3384
Joined: Wed Oct 31, 2007 3:01 pm

Post » Sat May 14, 2011 1:34 am

Tried it, but while optimizing Meshes it gave me an unhandled exception error, I clicked "Continue" and the program stoped. Sadly it runed one of my MW copies, but I have few more.
User avatar
Harry Leon
 
Posts: 3381
Joined: Tue Jun 12, 2007 3:53 am

Post » Fri May 13, 2011 9:01 pm

I like that some interior objects (mainly tapestries, barrels, crates etc) cast shadows. Perhaps I didn't notice it earlier...
User avatar
M!KkI
 
Posts: 3401
Joined: Sun Jul 16, 2006 7:50 am

Post » Fri May 13, 2011 11:28 pm

I like that some interior objects (mainly tapestries, barrels, crates etc) cast shadows. Perhaps I didn't notice it earlier...
That is SSAO, not MGE XE. XE needs for the interior to act as an exterior (ex: Mournhold) to cast shadows if I've got it straight.
User avatar
!beef
 
Posts: 3497
Joined: Wed Aug 16, 2006 4:41 pm

Post » Fri May 13, 2011 7:54 pm

Then it's no wonder I didn't notice earlier, as today was my first use of SSAO. :biggrin:
User avatar
Setal Vara
 
Posts: 3390
Joined: Thu Nov 16, 2006 1:24 pm

Post » Fri May 13, 2011 10:18 pm


Which HDR shader do you like? I want to get something subtle by default.


Spoiler


texture lastshader;
texture lastpass;
texture thisframe;

sampler s0 = sampler_state { texture = ; minfilter=linear; magfilter=linear; AddressU=Clamp; AddressV=Clamp;};
sampler s1 = sampler_state { texture = ; minfilter=linear; magfilter=linear; AddressU=Clamp; AddressV=Clamp; };
sampler s2 = sampler_state { texture= ; minfilter=linear; magfilter=linear; AddressU=Clamp; AddressV=Clamp;};

float2 rcpres;
float4 HDR;

const static float rsqrt3 = 0.57735;
const static float scale = 4.0;
const static float rscalep = 0.251;

#define ddd 1.33

const static float2 blurMap2[4] = {
{-ddd,-ddd },
{ ddd,-ddd },
{-ddd, ddd },
{ ddd, ddd }
};

const static float2 blurMap[7] =
{
{-5.0, 0.0625},
{-3.33, 0.1250},
{-1.67, 0.1875},
{ 0.0, 0.2500},
{ 1.67, 0.1875},
{ 3.33, 0.1250},
{ 5.0, 0.0625}
};

float4 blurX( float2 Tex : TEXCOORD0 ) : COLOR0
{
clip( Tex.x < rscalep && Tex.y < rscalep);

float4 col = 0;
for (int i=0; i<7; i++){
col += tex2D( s1, Tex + float2(blurMap[i].x*rcpres.x,0) ) * blurMap[i].y;
}
return float4(col);
}
float4 blurY( float2 Tex : TEXCOORD0 ) : COLOR0
{
clip( Tex.x < rscalep && Tex.y < rscalep);

float4 col = 0;
for (int i=0; i<7; i++){
col += tex2D( s1, Tex + float2(0,blurMap[i].x*rcpres.y) ) * blurMap[i].y;
}
return float4(col);
}

float3 applyHDR(float3 col) {
float lum = 0.001+0.999*length(col*rsqrt3);
col *= pow(saturate(lum),0.4*HDR.r-0.15);
//col *= exp2(0.21-2*HDR.r/(2+lum));
//col *= 1.1/(1+HDR.r/(3+lum));
col *= 1.0 + 0.3*exp2(-2*HDR.r)-exp2( 2*(sqrt(HDR.r)-lum-1) );
return max(0,col);
}

const static float HDRbloomadjust = 2.4*exp(2*HDR.r);
float4 shrinkhalf( float2 Tex : TEXCOORD0 ) : COLOR0
{
clip( Tex.x < rscalep && Tex.y < rscalep);

float3 col = 0;
float l = 0;

for (int i=0; i<4; i++){
col = max(col,tex2D( s0, Tex*(scale) + blurMap2[i]*rcpres ));
}
col = applyHDR(col);

l = ((col.r+col.g+col.B)*0.3333);

col = pow(col,2)/l;

l = pow(l,6);

//l = exp(7*( (1+HDR.r)*l - 1.4*HDR.r )-5);
//l = l/(1+l);

return float4(col, l);
}

float4 addbloom( float2 Tex : TEXCOORD0 ) : COLOR0
{
float3 col = tex2D( s2, Tex );
float4 colbloom = tex2D( s1, Tex/(scale) );

colbloom.rgb /= max(colbloom.r,max(colbloom.g,colbloom.B));

float alpha = (colbloom.a);
col = applyHDR(col);

col *= 1 - 0.72*alpha;
col += saturate(colbloom.rgb) * alpha;

return float4(col, 1.0f);

}



technique T0 < string MGEinterface="MGE XE 0"; >
{
pass p2{PixelShader = compile ps_3_0 shrinkhalf();}
pass p3{PixelShader = compile ps_3_0 blurX();}
pass p4{PixelShader = compile ps_3_0 blurY();}
pass p9{PixelShader = compile ps_3_0 addbloom();}
}


Note it has bloom implemented too.

I'm not sure if its subtle enough for you but it looks great to me anyway, give it a go. Can't remember who wrote it though, phal perhaps...
I still can't figure out my brightness issue so it may be different for you. I'm using a colour wash shader as well.

Does anyone remember what that ssao/fog fix was?
User avatar
Irmacuba
 
Posts: 3531
Joined: Sat Mar 31, 2007 2:54 am

Post » Fri May 13, 2011 5:37 pm

I got it here, just need to finish fixes for the input system before upload.
User avatar
Laura Shipley
 
Posts: 3564
Joined: Thu Oct 26, 2006 4:47 am

Post » Fri May 13, 2011 5:52 pm

0.8.8 released

Config
Added fps limit control.
Disable MGE toggle moved to in-game options.

Shaders
SSAO shaders adjust correctly for both linear and exponential fog mode. Artefacts should be gone.
Sunshaft shader has a yellower sun disc, disables automatically underwater.

XE
Scattering fog attenuation changed for less blueness and a bit more sunlight colour.
Scattering fog problem during weather transition fixed.
Grass movement near player base position added, needs adjustment.
Near landscape glitches fixed, ultra high mesh is unnecessary and may be removed in future.
Zooming re-introduced, but with proper fov adjustment such that shaders like SSAO will not be affected by zoom level.
User avatar
Mélida Brunet
 
Posts: 3440
Joined: Thu Mar 29, 2007 2:45 am

Post » Sat May 14, 2011 2:40 am

I just tried out 0.8.8 and the fog looks great. I noticed the exponential fog multiplier is increasing the view distance a lot farther than the previous version. With a setting of above water fog start 1, end 4 and 4x multiplier i can see red mountain pretty clearly from the hill behind pelagiad. With the previous version i would have to set it to 1, 9, x4 to be able to see red mountain from the same spot, with a loss of 5-10 fps.

You mentioned the fog is less blue, It actually looks a lot bluer on my game. I actually like it like that (bluer) it looks more realistic to me.

The sky is being drawn correctly now, It wasn't being drawn at all on the previous version when exponential fog was turned on.

I'm still getting the violent grass wipping animation, and occasionally my water will stop reflecting correctly.
To fix the grass i change
return saturate(0.01 * h) * (harmonics * displace + stomp);
to
return saturate(0.01 * h) * stomp;

Any ideas?

I'm starting to think the grass animation and water reflection issue is related. But I seem to be the only one having this problem. I even had the grass and water issue on a previous install of morrowind (I reinstalled it recently) with a old version of mgeXE. The wind speed settings in my .ini range from 0.1 to 0.8 depending on the weather type, and they should be default settings.
User avatar
Cesar Gomez
 
Posts: 3344
Joined: Thu Aug 02, 2007 11:06 am

Post » Fri May 13, 2011 10:41 pm

shader changes confirmed. Sun shaft color adjustment is absolutely spot on. Sun rise/set looks better and mid day no longer appears blue.

Grass also works.

One thing that I still dream of is a much more white horizon without sacrificing blue scattering on distant land/statics. The effect looks great as is other than the horizon being blue.

Another cool thing would be the underwater effects only showing when shadows are not present.
User avatar
Juan Suarez
 
Posts: 3395
Joined: Sun Nov 25, 2007 4:09 am

Post » Sat May 14, 2011 2:12 am

I was just wondering if it is possible to use XE with arktwend. When i load it, everything is blue and then the game freezes. I would love to see shadows and the high end shaders working in arktwend. Thanks in advence to anyone who can help.
User avatar
Amy Cooper
 
Posts: 3400
Joined: Thu Feb 01, 2007 2:38 am

Post » Fri May 13, 2011 3:54 pm

First of all, many thanks on writing this superb program. Not everyday does a ten year old game look better than most new things.

With that, can anyone help me figure out a strange bug that I stumbled into?

I ran 0.8.5 for several days now, and it worked fine. Today, I decided to upgrade to 0.8.8 and try out the new fog and the underwater shader.
So I overwrote 0.8.5 with 0.8.8, regenerated distant land with minimum size 10, set the exponential fog to start at 1, end at 4, with multiplier 4 and everything else to autoscale, and added underwater effects to the shader chain. Loaded the game, everything looks great, and runs decently enough.

But then I tried teleporting into Vivec mages guild. Game slows to a crawl, starts throwing bizzare shapes on screen, and crashes.
Three times in a row this happens. Other guilds work fine, silt strider works fine, running around works fine. Teleporting there on 0.8.5 with no underwater shader, exp. fog and min static size 100 also worked fine.
What could be the cause of this?
User avatar
Gill Mackin
 
Posts: 3384
Joined: Sat Dec 16, 2006 9:58 pm

Post » Fri May 13, 2011 12:05 pm

Testing 0.8.8

Exponential fog. x4, 52 cells, Statics size 1 ( I dont see small objects like rocks casting shadows with this statics size)

Strong FPS hit.
The sun its more yellowish now, looks far better.
The new scattering fog its astounding. The blue tones for the far far away locations brings a nice sensation of deep atmosphere. Subtle and far, like I think it must be.
The new distance of view is tremendous with a fine blending of the colours in the horizon. The only '''problem''' its that the water colour and the horizon sky match the exact same color making disappear visually the horizon line in most cases. The water must be more darker???.
The fog looks more natural. I dont get the black grass in fog versions, in fact the grass and other alpha layered meshes looks more natural now. I dont have any problem with SSAO.
The pop-in of far objects has disappeared for me in this version.
The moving grass its a nice addition.
The zoom works perfect without any SSAO artifacts or other problems. I can see little details now, Im happy.
Meshes with alpha threshold of 237 (bc trees) get white lines in fog environments with this and old versions of MGEXE. Alpha threshold of 6492/100 works perfect.

In general it looks really good. Im a bit worried cause we need to stop adding better options. Our computers will burn following this direction. :hubbahubba:
User avatar
Motionsharp
 
Posts: 3437
Joined: Sun Aug 06, 2006 1:33 am

Post » Sat May 14, 2011 2:42 am

I'm starting to think the grass animation and water reflection issue is related. But I seem to be the only one having this problem. I even had the grass and water issue on a previous install of morrowind (I reinstalled it recently) with a old version of mgeXE. The wind speed settings in my .ini range from 0.1 to 0.8 depending on the weather type, and they should be default settings.

Check your weather settings in the distant land tab of MGEgui. There is a wind speed modifier there too, reset it to default.


But then I tried teleporting into Vivec mages guild. Game slows to a crawl, starts throwing bizzare shapes on screen, and crashes.
Three times in a row this happens. Other guilds work fine, silt strider works fine, running around works fine. Teleporting there on 0.8.5 with no underwater shader, exp. fog and min static size 100 also worked fine.
What could be the cause of this?

It could be several things. First try turning off high detail shadows and see if it stops occurring.


Exponential fog. x4, 52 cells, Statics size 1 ( I dont see small objects like rocks casting shadows with this statics size)

Small objects can't cast strong shadows due to the method used. It keeps everything soft, and prevents surface noise but it can blur the small shadows away, a technical thing I may be able to improve later.

The new distance of view is tremendous with a fine blending of the colours in the horizon. The only '''problem''' its that the water colour and the horizon sky match the exact same color making disappear visually the horizon line in most cases. The water must be more darker???.

Ocean water has a rough texture, so when viewing from a long distance it should be reflecting the average sky colour at 30-60 degrees declination (reflection from slopes of the waves) rather than the horizon sky. Problem is the water becomes a block of colour without a more gradual variation, it needs experimentation.

Meshes with alpha threshold of 237 (bc trees) get white lines in fog environments with this and old versions of MGEXE. Alpha threshold of 6492/100 works perfect.

The distant land generator does not store the alpha threshold for meshes so it has to guess. Making an incompatible distant land format is a bit bothersome until all other features are fixed.
User avatar
dean Cutler
 
Posts: 3411
Joined: Wed Jul 18, 2007 7:29 am

Post » Fri May 13, 2011 1:26 pm

a proposed mod to the Underwater Effects.fx, to have rays proportional to sun-facing (I'm sure it can be improved, but it works, feel free to tweak if you like) :)
Spoiler
// Underwater Effects// Hrnchamd// v1// Compatibility: MGE XE 0int mgeflags = 17;texture lastshader;texture depthframe;texture watertexture;sampler s0 = sampler_state {texture = ;};sampler s1 = sampler_state {texture = ; magfilter = none; minfilter = none;};sampler s2 = sampler_state {texture = ;};matrix mview;matrix mproj;float3 eyepos;float3 eyevec;float3 sunpos;float3 suncol;float sunvis;float time;static float lf = (0.2 + 0.8*sunvis) * (0.32*suncol.r + 0.47*suncol.g + 0.21*suncol.B);static const float4 lightcolour = float4(0.6, 0.91, 1.0, 0);//begin change abotstatic const float3 sundir = normalize(sunpos);static const float facingsun = dot(sundir,eyevec);//end change abotfloat3 toWorld(float2 tex){    float3 v = float3(mview[0][2], mview[1][2], mview[2][2]);    v += (1/mproj[0][0] * (2*tex.x-1)).xxx * float3(mview[0][0], mview[1][0], mview[2][0]);    v += (-1/mproj[1][1] * (2*tex.y-1)).xxx * float3(mview[0][1], mview[1][1], mview[2][1]);    return v;}float fetch(float3 tex, float uw){    float c = tex3D(s2, float3(tex.xy / 3308, 0.22 * time)).b;    return pow(c, 0.25) * saturate(exp(tex.z/90)) * saturate(1 + tex.z/uw);}float4 rays(float2 tex : TEXCOORD0) : COLOR{    float4 c = tex2D(s0, tex);    float d = tex2D(s1, tex).r;    float3 v = toWorld(tex);    float3 e = float3(0.1, 0.1, 1) * eyepos;    float2 r;        d = min(d, -eyepos.z/max(1e-5, v.z));    v = v / length(v.xy);    r = -sunpos.xy - v.xy * dot(-sunpos.xy, v.xy);    float3 shellpos = e + 800 * v;    shellpos.xy += 0.8 * r * shellpos.z;    float rayz = fetch(shellpos, min(eyepos.z, 400)) * saturate(d/800) * 0.294;        float3 shellpos2 = e + 1400 * v;    shellpos2.xy += 1.0 * r * shellpos2.z;    rayz += fetch(shellpos2, 2*eyepos.z) * saturate(d/800 - 1) * 0.132;        float3 shellpos3 = e + 2000 * v;    shellpos3.xy += 1.2 * r * shellpos3.z;    rayz += fetch(shellpos3, 3*eyepos.z) * saturate(d/800 - 2) * 0.065;//begin change abot    //return c + rayz * lf * lightcolour;    return c + (facingsun + 1) * 0.5 * (rayz * lf * lightcolour);//end change abot}technique T0  < string MGEinterface = "MGE XE 0"; >{    pass { PixelShader = compile ps_3_0 rays(); }}

User avatar
CHARLODDE
 
Posts: 3408
Joined: Mon Apr 23, 2007 5:33 pm

Post » Fri May 13, 2011 5:35 pm

I was just wondering if it is possible to use XE with arktwend. When i load it, everything is blue and then the game freezes. I would love to see shadows and the high end shaders working in arktwend. Thanks in advence to anyone who can help.

Please post your mgeXE.log. I can't tell why it's broken without details.


What do people feel about the alpha-to-coverage in svn 178? It's a feature that approximates alpha blending for distant statics by dithering into the multisample buffer, it looks smoother as you increase AA because there are more samples per pixel. MGE XE does alpha testing at the moment. Personally I see a noticable pattern at 4x and lower AA, I would like to see some comparisons from people who have tried both.
User avatar
Danny Blight
 
Posts: 3400
Joined: Wed Jun 27, 2007 11:30 am

Post » Sat May 14, 2011 2:08 am

Please post your mgeXE.log. I can't tell why it's broken without details.


What do people feel about the alpha-to-coverage in svn 178? It's a feature that approximates alpha blending for distant statics by dithering into the multisample buffer, it looks smoother as you increase AA because there are more samples per pixel. MGE XE does alpha testing at the moment. Personally I see a noticable pattern at 4x and lower AA, I would like to see some comparisons from people who have tried both.
I really cannot say I have noticed much of a difference between them at all. When reading your changelog, I noticed you had mentioned that you dropped support for alpha-to-coverage so I've looked for the difference but... ˉ\(°_o)/ˉ
User avatar
Emmie Cate
 
Posts: 3372
Joined: Sun Mar 11, 2007 12:01 am

Post » Fri May 13, 2011 5:43 pm

0.8.8 Report

Config
- Added fps limit control. Confirmed
- Disable MGE toggle moved to in-game options. Confirmed

Shaders
- SSAO shaders adjust correctly for both linear and exponential fog mode. Artefacts should be gone. Not noticing any issues
- Sunshaft shader has a yellower sun disc, disables automatically underwater. Confirmed.

XE
- Scattering fog attenuation changed for less blueness and a bit more sunlight colour. Confirmed.
- Scattering fog problem during weather transition fixed. Not noticing any problems.
- Grass movement near player base position added, needs adjustment. Confirmed, looks pretty decent!
- Near landscape glitches fixed, ultra high mesh is unnecessary and may be removed in future. Unsure what to say about this, I'm not certain what the glitches were.
- Zooming re-introduced, but with proper fov adjustment such that shaders like SSAO will not be affected by zoom level. Not checked. Do I need a particular mod to test this?

Comments
- Once the texture anolysis script is integrated more tightly as you've hinted at, it will be very nice. As is, the output is helpful, but automation is of course always nicer.
- It would look much nicer if distant land objects faded in as they do with MGE. What would be even nicer (though I don't know the feasability) would be to appropriately fog the reflections as well. In MGE SVN 178, for instance, distant land objects appear reflected fully in the water before you can see them. Once you travel closer, the object starts to fade in, but the reflection is always fully visible so it looks a bit unnatural. Again, I don't expect that this is something feasible, but just one of those nice-to-dream wishlist items.
- Do we need an "Allow Screenshots" checkbox now that you have permanently patched that function? That might be a candidate for the "excess junk" tab in my opinion, unless there is explicit need for it.

Edit:

- On alpha-to-coverage: Is this the feature in MGE releases newer than SVN 126 which gives me white outlines around all the edges of all my trees in game? Because if so, one of the major subtle selling points for me with MGE XE was the removal of that feature.
User avatar
Sami Blackburn
 
Posts: 3306
Joined: Tue Jun 20, 2006 7:56 am

PreviousNext

Return to III - Morrowind