Veltoss Posted December 6, 2013 Posted December 6, 2013 This is for the papyrus people for the most part. I've been having a terrible time optimizing an exterior which is particularly object heavy. I don't want to sacrifice detail for performance, but I also don't want to sacrifice performance for detail. I have been using occlusion planes and multibounds, which has helped tremendously. However, there are still several areas that can't be optimized very well using that technique. So my idea was this: give a script to objects to cause them to render after a certain amount of time has passed since the player started rendering the area. For example, let's say the player is fast traveling to an area where he/she will be facing a lot of objects in the open which can't be blocked with occlusion. But some of these objects are small, or maybe just not real noticeable at first for whatever reason. To prevent CTDs or freezes from too many objects rendering at once, some of these objects that the player might not notice at first could be rendered after the non-scripted objects. Is this possible? Does anyone have any idea of how to do this, or at least where to begin? Is the idea crazy and impossible to do without actually modifying the engine itself?
Veltoss Posted December 7, 2013 Author Posted December 7, 2013 I figure I'll try one bump during the day to see if I can get any hits for this. From what research I've done, I'm still not sure if this is possible or if there might be something similar that can be done.
snapmoderator Posted December 9, 2013 Posted December 9, 2013 Hey, glad to still see Saviik City is being worked on. Without completely knowing, I'd say asking to "render" an object on the fly (after load up) is probably not possible. You might be able to hide it (make invisible) but it would probably still be loaded, thus no performance difference. Also if you were to succeed with this method, you are only really delaying all the objects to be rendered, so eventually it will the same problem after awhile of running around, unless you also unload other objects further away. I think if it was doable in the way that you want it, the game creators would have developed it for the engine. In a way they have with LOD. Of course LOD is used for larger objects at bigger distances, but same theory that you can have low detail turn into higher detail as you get closer. There is nothing to stop modders from making invisible lod models so that they pop into existence up close, but we cannot determine the distances that this happens. Obviously this methodology was never intended for smaller objects like clutter.
Recommended Posts