Shadows

Everything about development and the OpenMW source code.
User avatar
lysol
Posts: 1513
Joined: 26 Mar 2013, 01:48
Location: Sweden

Re: Shadows

Post by lysol »

Yup. I also tried updating to the latest branch, with 5 extra frames per second. Still only 15 then of course.. I'm gonna try deactivating shadows alltogether on sunday, to see if it is the shadows or something else that gives the problem.
User avatar
lysol
Posts: 1513
Joined: 26 Mar 2013, 01:48
Location: Sweden

Re: Shadows

Post by lysol »

Damn. This isn't supposed to happen. This is even with shadows off. So I don't even know why I'm posting this in the shadows thread...

https://imgur.com/cE5DJNJ
ajira2
Posts: 55
Joined: 30 Oct 2017, 14:27

Re: Shadows

Post by ajira2 »

I would consider patreoning AnyOldName3, but after shadows are merged, what you will do after that in OpenMW?

Post-processing effects?
User avatar
AnyOldName3
Posts: 2666
Joined: 26 Nov 2015, 03:25

Re: Shadows

Post by AnyOldName3 »

Post-processing is one thing I'm considering, and it's probably the lowest hanging fruit in terms of graphical stuff added per unit work.
User avatar
Br0ken
Posts: 243
Joined: 02 Apr 2012, 05:54
Location: Siberia

Re: Shadows

Post by Br0ken »

AnyOldName3 wrote: 10 Sep 2018, 12:33 Post-processing is one thing I'm considering, and it's probably the lowest hanging fruit in terms of graphical stuff added per unit work.
Or maybe proper distant land? ;)
User avatar
AnyOldName3
Posts: 2666
Joined: 26 Nov 2015, 03:25

Re: Shadows

Post by AnyOldName3 »

The distant land is proper. I don't see how it could be done better except for unloading cells way beyond the view distance so Tamriel Rebuilt didn't need so much RAM.

Are you meaning distant statics instead? There are a bunch of complications with that beyond just drawing all statics no matter how far away.
JDGBOLT
Posts: 21
Joined: 05 Apr 2018, 19:52

Re: Shadows

Post by JDGBOLT »

Yeah, likely meaning Distant Statics, as without the statics the experience isn't nearly the same as what you can get with MGEXE, also that unloading of distant land outside of the view distance would also probably be a big help, since if you do run with TR it definitely does cause hitching as it tries to generate all of that land, and also is there really any reason it needs to be done each and every time the game is loaded, I would think that you could get away with a generate once and cache it, and only invalidate that when the load order changes. Also would it be helpful at all to see what MGEXE does when it generates the distant statics, as far as what it does to the nif files to simplify them or whatever, and whether that is better than the options built into OSG, not sure, just a thought.
User avatar
AnyOldName3
Posts: 2666
Joined: 26 Nov 2015, 03:25

Re: Shadows

Post by AnyOldName3 »

Unloading stuff won't reduce hitching and stutters (and may even increase it if you decide to jump all the way from Morrowind to High Rock in one go). There was just a guy on Discord who had to buy a bunch of extra RAM to make TR work.

With how simple the actual generation seems to be, I'm not sure pre-generating or caching it to disk would help. You'd just end up with a big file that still needs processing before it can be displayed. That said, it's possible that storing terrain data in a quadtree might be much more efficient than however it's held in an ESP, so it could turn out that that should be how we store it in post-1.0 OMWAddon files.

Before implementing distant statics, I'll definitely do a range of research. I'd never even started up the original engine when I started on shadows, and it would have helped to have known what vanilla and MGE XE were capable of beforehand so I knew where to set the goalposts.
Chris
Posts: 1625
Joined: 04 Sep 2011, 08:33

Re: Shadows

Post by Chris »

AnyOldName3 wrote: 12 Sep 2018, 02:30 Before implementing distant statics, I'll definitely do a range of research. I'd never even started up the original engine when I started on shadows, and it would have helped to have known what vanilla and MGE XE were capable of beforehand so I knew where to set the goalposts.
Vanilla shadows were completely different. They were developed with really early 2000s hardware in mind. There would be no benefit to looking at them. And of course, vanilla didn't have distant statics.

MGE XE shadows may be worth taking a look at, though keep in mind they're designed for D3D and intended to fit in the original renderer. It may have some useful things to look at, but a number of things to not worry about (IIRC, actor shadows are still handled by the vanilla shadow implementation).

MGE XE's distant statics I believe are handled partly by an external tool to pre-generate meshes for distant land. I'm not sure there'll be too much there to look at since for OpenMW we want to handle it automatically at run-time (so adding and removing mods automatically updates distant terrain and statics without having to rerun a generator tool, and objects disabled or enabled by scripts automatically affects its distant counterpart). This may mean additions to the game data that have to be modded in to make use of; e.g. LOD object meshes, and flags in the object definition to say its suitable to be LOD'd in the distance.
User avatar
akortunov
Posts: 899
Joined: 13 Mar 2017, 13:49
Location: Samara, Russian Federation

Re: Shadows

Post by akortunov »

Chris wrote: 12 Sep 2018, 04:23 I'm not sure there'll be too much there to look at since for OpenMW we want to handle it automatically at run-time.
I still do not get how we want to "handle it automatically at run-time". If we will generate LODs automatically every launch, cells loading speed will be awful. Also I dout we can find a simplification algorithm that will be suitable for every mesh (IIRC, MGE uses different settings for different types of objects and white/black lists for special cases).
So we will need an ability to use pre-generated LODs in some way (from special nodes of Nif files, for example) and a tool to generate them since existing meshes do not have LODs.

P.S. I suggest to move several last posts to another thread.
Post Reply