TES Skyrim 0.231

Forum rules
new topics are not allowed in this subsection, only replies.
  • Author
  • Message
Offline
Posts: 90
Joined: 03 Aug 2012, 19:03

Re: TES Skyrim 0.231

@Confidence-Man's suggestion: That's the exact area in GTA V that made me wish Skyrim had height based fog as well...

If it's any help, the engine contains "region" information. The granularity of these regions differs. There are also Locations, which are even smaller, including interiors.

The entire map is covered in regions at least:

Image

They're named nonsensically though, after the developers which the regions were assigned to...

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

On the subject of height-based fog... it made me think about depth-based light attenuation for underwater. OBGE Water did it very nicely:

Image

I assume you have both the water plane height and camera height in game units.. they are attainable if not.

As far as other underwater effects go, I imagine screen-space reflections on the underside of the water surface is feasible. Example:

Image

You already have the SS reflection code for specular stuff, no?

Also present in that above image is a high amount of rim lighting:

Image

Skyrim engine already has a rim lighting shader, which is turned on with a shader flag in the NIF format, but I'm not sure it's something that can be turned off or on dynamically. I do know that you detect shader flags for many features, like what to apply SSS to.

Skyrim's rim lighting does reference a rim texture however. Though maybe in the absence of a texture a constant term is applied. So maybe rim lighting can just generally be applied from the normals. Obviously the rim lighting comes from how water scatters the light.. A cheap way of doing it could also be a bright directional ambient pointing +Z. Or hijacking your IBL implementation.

Such a thing wouldn't really be needed for above water, since the caustics pretty much takes care of that.

=========

I did see you mention some time ago about applying wetness effects, but needing to know materials so that the wetness shader could be applied differently based on material...

The NIF format contains material information, and Skyrim includes this for pretty much all objects. These are the materials which Havok uses to determine collision sound effects, whether bows stick, etc. Even the terrain has this information, e.g. each time your character takes a step, the foot collision is returning the material of the terrain.

An excerpt:

Code: Select all

    <enum name="SkyrimHavokMaterial" storage="uint">
        <option value="365420259" name="SKY_HAV_MAT_LIGHT_WOOD">Light Wood</option>
        <option value="131151687" name="SKY_HAV_MAT_BROKEN_STONE">Broken Stone</option>
        <option value="398949039" name="SKY_HAV_MAT_SNOW">Snow</option>
        <option value="428587608" name="SKY_HAV_MAT_GRAVEL">Gravel</option>
        <option value="500811281" name="SKY_HAV_MAT_WOOD">Wood</option>
        <option value="591247106" name="SKY_HAV_MAT_SKIN">Skin</option>
        <option value="732141076" name="SKY_HAV_MAT_BARREL">Barrel</option>
        <option value="873356572" name="SKY_HAV_MAT_ICE">Ice</option>
        <option value="1024582599" name="SKY_HAV_MAT_WATER">Water</option>
        <option value="1288358971" name="SKY_HAV_MAT_SOLID_METAL">Solid Metal</option>
        <option value="1486385281" name="SKY_HAV_MAT_MUD">Mud</option>
        <option value="1848600814" name="SKY_HAV_MAT_GRASS">Grass</option>
        <option value="2168343821" name="SKY_HAV_MAT_SAND">Sand</option>
        <option value="2229413539" name="SKY_HAV_MAT_HEAVY_METAL">Heavy Metal</option>
        <option value="2518321175" name="SKY_HAV_MAT_DRAGON">Dragon</option>
        <option value="2974920155" name="SKY_HAV_MAT_ORGANIC">Organic</option>
        <option value="3070783559" name="SKY_HAV_MAT_HEAVY_WOOD">Heavy Wood</option>
        <option value="3106094762" name="SKY_HAV_MAT_DIRT">Dirt</option>
        <option value="3739830338" name="SKY_HAV_MAT_GLASS">Glass</option>
        <option value="3741512247" name="SKY_HAV_MAT_STONE">Stone</option>
        <option value="3839073443" name="SKY_HAV_MAT_CLOTH">Cloth</option>
    </enum>
FULL LIST

... I'm not sure if the above values are necessarily going to be the raw values in the game engine, but the values are definitely stored in the NIF format, and were decoded by the NifSkope team.

So, if this information were attainable you could make both objects and terrain look wet.

========

Instead of the fake "self reflections" color, have you considered/tried to implement light scattering and extinction? Instead of the solid color for the non-reflective parts, the light contribution could be computed based on the light and eye vectors, water color, etc. I am not certain though if you are able to retrieve the depth of the water along the eye vector, sun vector, or normal vector. I imagine so, if you were able to blur the intersection of the water plane and terrain... Though in the absence of these vectors, a simple height-based "fog" could return a non-constant term for the "self reflection" but it wouldn't be very accurate.

Image
Image

^^ Also the above image has a "sparkle" shader, which I assume operates like any other sparkle shader, by randomly overlaying sparkle sprites over bright specular.

You can see a lot of these effects in this video.
(Depth-based light attenuation, heavy rim lighting, light scattering/extinction, sparkle shader)


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

Lastly, has Skyrim engine been stripped completely of POM? Skyrim actually was a downgrade in several ways, removing POM and object water reflections. I know regular parallax mapping was barely even working, since you fixed that. According to the NIFs for Skyrim, there are many references to parallax occlusion...

Parallax:
Image

Parallax Occlusion:
Image

I have tried the Parallax Occlusion settings, and they do absolutely nothing visible in game, regardless of the Scale / Num Passes settings. I of course expected as much.

Offline
User avatar
*blah-blah-blah maniac*
Posts: 17525
Joined: 27 Dec 2011, 08:53
Location: Rather not to say

Re: TES Skyrim 0.231

I don't want to program parallax occlusion mapping for hundreds of shaders combinations, classic parallax is more or less good already (and any parallax bring awful bugs of uv "edges").
Sun scatter in water absolutely useless, i've tried various math, it can't look good on flat water, only at perfect camera angles and sun this reminds what should be, but just focusing eyes on something else in the scene, can't see effect again, is it strange lit waves or scattering - no way to understand. Accenting by height map do not change things much, still flat. I even tried real parallax for water yesterday, of course it look much better, but performance for sampling 3 height maps is awful.
Data for properties of wet surfaces is unavailable.
Don't want to touch underwater, it's drawed after all effects and post processing to back buffer, unimportant thing which require too much effort.
Dropped reflections for water, don't want to do them in nearest future.
Unique identification of 3d space in the game is not a problem, but i prefer idea to place manually fog instead of linking to locations or world spaces.
_________________
i9-9900k, 64Gb RAM, RTX 3060 12Gb, Win7

Offline
Posts: 90
Joined: 03 Aug 2012, 19:03

Re: TES Skyrim 0.231

Re: Light scattering

I disagree, at least in regard to the flatness mattering. It looked quite stunning with OBGE / Liquid Water, even with flat water surfaces.

These are from forever ago, and with my own water texture which I never released:

Image
Image
Image
Data for properties of wet surfaces is unavailable.
Correct. It's not going to tell you everything wet without first looking for it... However the Havok materials are surely available. You mentioned needing to know the material types, so I offered a solution. You had implied that it was easy to make everything look equally wet, but some materials should not be wet.
I don't want to program parallax occlusion mapping for hundreds of shaders combinations, classic parallax is more or less good already (and any parallax bring awful bugs of uv "edges")
UV seams and geometry edges are always going to be a problem with POM. But if programming it is not combinatorially viable, then so be it. I personally feel the standard parallax implementation is useless, and is way too subtle. I've even tried my own custom parallax maps, and you can hardly notice it. Thus it's just not worth the effort of creating height maps to implement it.


Edit:

Re: Underwater. It's just unfortunate that Oblivion has better underwater too. Not to mention OBGE / Liquid Water stuff.

Here are caustics and chromatic aberration, and a fake wobbly distortion effect I implemented back before "Liquid Water" was released on its own:

www.youtube.com/watch?v=JCoSw7hGAF8

Offline
*blah-blah-blah maniac*
Posts: 1509
Joined: 20 Mar 2012, 08:37

Re: TES Skyrim 0.231

Wow under water caustics, yeah it's crazy partly Oblivion with it's modifications looks better but some things don't blend well, you get the feeling from you pictures that some stuff is ultra realistic but other stuff looks odd around and falls apart :)
That shallow underwater depth rendering is also awesome :)
Did it look by default like the Skyrim one currently ?

Underwater i have several issues

Need to balance blur
Heavy Aliasing :( (Temporal AA fails)

Current ENB Render Result:

i recently changed the Nvidia Drivers though newest official WHQL 331.65 i will use this result now as a test scene for further evaluation

Image
Image
Image
Image
_________________
85% of graphics research is about who can finally make Sponza look good.
Jasper Bekkers EA/DICE

Perfection is the greatest enemy of photorealism.
Jorge Jimenez Activision Blizzard

Offline
User avatar
*blah-blah-blah maniac*
Posts: 572
Joined: 23 Aug 2013, 21:59
Location: United States

Re: TES Skyrim 0.231

jrista
I'm aware of downsampling and OGSSAA and that it's the only really true way of removing aliasing. However, as you can see in my signature, I simply don't have the hardware for it. Maybe if I can convince my wife to let me buy a new Radeon R9 290(X) I'll give it a try, but as it is right now, I can't really get the performance for quality to pay off. I play the game to play the game more than screenarchery (though I do have quite a few good screenshots just from running across them) so having a playable framerate while maintaining good quality is more important to me.

Now, while all anti-aliasing blurs the image to some point, some does more than others. From my experience from blurriest to least (of the techniques I've used) are: FXAA, AMD Driver MLAA, SMAA, MSAA, ENB Temporal AA, SSAA. MSAA and TAA are pretty close and, for whatever reason, my video card is very good at enabling MSAA or SSAA with minimal performance hit. However, because of the deferred rendering MSAA or SSAA (through game launcher or drivers) isn't a viable option, leaving TAA as the best option available to me. That said, ENB also has downsampling available but this is left to strict multipliers of the frame (x2, x3, etc.) and not fractions. I did enable 3840x2160 once. I only had 13 fps though. Now I could lower my resolution to, say 1280x720 and downsample from 2560x1440 but since I'm downsampling to a lower resolution, my image may not be as aliased but it's going to be lower quality. Also, my monitor is only 60hz, so as far as downsampling goes, I'm fairly limited. It's also a little hard to do on an AMD system through drivers, but still very possible. I just don't have enough graphics processing muscle to pull it off. Now, with all that said, if Temporal AA can be done, that's the best option for myself and many others. With it enabled I have an fps drop of MAYBE 1-2 frames, so it's negligible. I also think that my system is more or less on par with most mainstream gaming systems (not enthusiast or high end, but middle of the road gaming machines) so the effect that most people will see will be similar to mine. And there are a LOT of people who don't know what downsampling actually is, not to mention knowing how to do it, so it's not a mainstream solution.

Regarding the weather, I'm using Opethfeldt 7 ENB. Opeth has made his own weather mod for it and is using ENB weathers, so I'm not using CoT. I used to use CoT but I started using Opeth's config around the time that patch came out so I haven't really had a chance to take a look at it, thus I can't say much about it. Opeth has some amazing weathers, you might wanna check it out.

Oh and a quick note on the Nexus being down a lot... they're working on the stability and the Skyrim Nexus is their guinea pig for stability right now because it has the highest traffic. If you can get to the main page there's an article about it right up top. I haven't noticed it being down often, but maybe I'm just lucky. I get the occasional 502 Gateway error, but other than that it's been stable for me.

Anyways, thanks for your insight, it's appreciated! Most of those options just aren't going to work for my system (I've tried =P ) Crossing my fingers for TAA! :)
_________________
AMD Ryzen 5 3600 6C/12T @4.4GHz // 16GB G.Skill Ripjaws V DDR4 3600MHz // ASRock AMD Radeon 5700XT Taichi X 8GB OC+// Samsung 850 Evo 256GB and 500GB SSD // 4 TB Seagate Barracuda // Windows 10 x64
Lumen ENB
My Flickr

Offline
*master*
Posts: 119
Joined: 11 Sep 2013, 20:19

Re: TES Skyrim 0.231

@Jafin:

Aye, I understand about the hardware (didn't check your sig earlier). It really does take a lot of power. Even a pair of GeForce GTX 760's in SLI are barely up to the task, so I generally play at strait up 1920x1200. If you play to play, then its best going for an alternative AA method. Out of curiosity, how are you using SMAA? You should check out the SweetFX config in Oyama's K ENB, maybe see if you can port that to your ENB config. I use Kountervibe, which is a more vanilla-esque version of K ENB, along with some tweaks of my own to make it more CoT friendly. I use Oyama's SMAA settings, and they are VERY good. At 1920x1200, I use a LOD bias of -0.125 in the driver, which results in a nice balance between AA edges, texture detail, and not too much texture shimmering in the distance. At higher resolutions (2560x1600, which I use for screenshots), I tend to push LOD bias to -0.375 as the downscaling I do on each screenshot cleans things up even more.

All that said, you have an AMD card. I haven't used an AMD card in quite a number of years (actually, they were probably still called ATI), so I honestly can't say how MSAA, Temporal AA, or any other driver mode AA compares to NVidia options. Most of my answer was based on my experience with a borrowed 1920x1080 screen that I tested out downsampling with some months back (really need to pick up a nice high quality 120hz/3D 1920x1080 screen so I can actually do some real downsampling...I honestly cannot WAIT until true 4k (3840x2160) screens are cheap enough to be realistic for desktop/gaming use!! With four time as many pixels, I suspect SMAA alone would be enough in most games.) I've used AA compatibility code 0x000010C1 in nVidia Inspector to force 2x2 SSAA + 4x SGSSAA in the drivers, with a negative LOD bias of -0.625 (or more...SGSSAA can really soften), and gotten some phenomenal results at 2560x1600. It's the closest thing I can get to full downsampled OGSSAA, but still not quite as good (my Apple screen simply won't support any non-standard resolutions). Any form of MSAA (and there are a LOT on nvida cards) forced through drivers doesn't look good at all with Skyrim, however apparently AMD's MSAA is better.

If TAA/TXAA (assuming it supports multiple cards) turns out that good, I might give it a try. I'd like an AA option that nicely cleans up edges without requiring a negative LOD bias. The thing that annoys me more than just jagged edges is the shimmering you get along edges and within complex objects at a moderate to greater distance (like the fences in Riverwood...those things, even with heavy SMAA, shimmer like mad, and it drives me mad!) The only time that seemed to be mostly cleaned up was with downsampling. SSAA+SGSSAA helps, but for whatever reason, it doesn't seem to look as good as OGSSAA (and you have the whole deferred rendering issue).

As for Opethfeldt, I'll have to give it a try. I have not tried any other weather mods except CoT for some time (before I used ENB I had tried others). CoT has some of the best sunrises/sunsets around, IMO...very realistic. Combined with the fog mod, the game takes on a very atmospheric look and feel. I've had consistent freezing problems with my game (used to freeze every five minutes...got it down to freezing once every 47 minutes to several hours, but still frequent enough that I really can't get any good game time in, and I'm CONSTANTLY worried about losing my game so I spend almost as much time saving as I do playing...really gotta figure out my freezing problem.) If I can get my game stable, I have wanted to give a number of ENBs a try and see how they look. I'll add Opethfeldt 7 to the list.
_________________
Win 8.1 x63 | i7 920@4.35Ghz/12Gb RAM | ASUS Rampage II Ext. | EVGA 760 4gb (2-way SLI) | OCZ Agility II 128Gb SSD
Kountervibe ENB Extensive (CoT tweaks) (0.243) | Uber SMAA+1.0 SSAO+DOF @ 4k 2160p (20fps)/1440p (35-45fps+)/1080p (40-90fps)

Offline
User avatar
*blah-blah-blah maniac*
Posts: 17525
Joined: 27 Dec 2011, 08:53
Location: Rather not to say

Re: TES Skyrim 0.231

As you can see on the shot, water is awful flat and only specular give information to brain where sun is, but without it ...
Image
_________________
i9-9900k, 64Gb RAM, RTX 3060 12Gb, Win7

Offline
User avatar
*sensei*
Posts: 316
Joined: 12 Aug 2013, 18:55
Location: Scotland

Re: TES Skyrim 0.231

I actually like the look of the water you posted. Skyrim's water is already flat to begin with, so it's no biggie. Maybe add tesselation for the water? Don't know how difficult that would be; probably involves wrapping to OpenGL.
_________________
Intel i7 6700k | AMD Vega 56 8GB | 2x16GB DDR4 @ 3000mhz | Windows 7 64bit | Creative Soundblaster X-Fi Titanium Fatal1ty Pro | Asus z170 Pro Gaming

Offline
User avatar
*blah-blah-blah maniac*
Posts: 572
Joined: 23 Aug 2013, 21:59
Location: United States

Re: TES Skyrim 0.231

Is tessellation even possible with Skyrim's engine?
_________________
AMD Ryzen 5 3600 6C/12T @4.4GHz // 16GB G.Skill Ripjaws V DDR4 3600MHz // ASRock AMD Radeon 5700XT Taichi X 8GB OC+// Samsung 850 Evo 256GB and 500GB SSD // 4 TB Seagate Barracuda // Windows 10 x64
Lumen ENB
My Flickr

Offline
User avatar
Posts: 30
Joined: 12 Sep 2012, 21:48

Re: TES Skyrim 0.231

@jonwd7
All that you say it's correct, I tried myself to get a proper map for parallax to work with Skyrim, I failed with the limitation of actual .nif format knowledge, don't speak about some nexus modder, they wrong the kind of map and also they make fun about ENB as excuse (imho) from doing something of real instead of the same boringness texturing process of normal and diff, this for me is sad but true.
I hope that the "old guard" modders will put an eye on Skyrim world, Liquid Water for Skyrim will be a dream.
Post Reply