Subnautica

Subnautica

View Stats:
Increase Draw/View Distance Mod (guide)
!!! UPDATE BELLOW IN THE THREAD !!!

First you must run the game on High graphic setting.

Open {pathtosubnautica}\Subnautica\SNUnmanagedData\clipmaps-high.json (with notepad or Notepad++).

In each of the four section modify the value of chunksPerSide

I've use those value to get the result in the screenshot:
"chunksPerSide":10,
"chunksPerSide":12,
"chunksPerSide":14,
"chunksPerSide":16,

The impact on performance is extreme (get 45 to 70 depending on the biome) but will greatly reduce the pop-in of everything.

Default Value
http://steamcommunity.com/sharedfiles/filedetails/?id=1279639954

With chunksPerSide Modification (look at the vine)
http://steamcommunity.com/sharedfiles/filedetails/?id=1279640052
Last edited by ActionOfLost; Jan 24 @ 12:32pm
< >
Showing 1-15 of 41 comments
If you found this usefull... You can always drop a like on the guide :steamhappy:

http://steamcommunity.com/sharedfiles/filedetails/?id=1279642367
This works excelent for me. It is or was slow at first but once I played for about an hour I barely noticed any stuttering. Just once in a while when moving to another area, though that was happening before anyways. Thanks for this:)
Thanks for the feedback, I did not had a lot of time to test everything.

I'll continue to look at the config file because I think it's possible to get the same result with less performance impact, will update if I found anything.


To everyone else, currently I modify the streaming file of High graphic, but if anyone need an explaination on how to proceed for Low graphic, it will be my pleasure to help (did not did it only because it required to start the game a lot of time and I've figure that since it has a big impact on the performance if you already have issue playing it, this won't help)
Last edited by ActionOfLost; Jan 24 @ 6:15am
Been testing new value for the loading of chunk and got result with way less impact, I think that by modifying the threading and the size of the chunk we might be able to minimize the impact.

I'll play today for a couple of hours and see if I'm able to get better result.

I've also taken new screenshot that show in a field that the distance the object load are past the fog of war... Might be to far can't say for sure.

Default Value
http://steamcommunity.com/sharedfiles/filedetails/?id=1279938581

With chunksPerSide Modification (look at the rock formation and the grass)
http://steamcommunity.com/sharedfiles/filedetails/?id=1279938550
Originally posted by Yonder Gander:
This works excelent for me. It is or was slow at first but once I played for about an hour I barely noticed any stuttering. Just once in a while when moving to another area, though that was happening before anyways. Thanks for this:)

If you get the chance to test it out (don't have a lot of time today) and tell me if you see improvement.


I've increase the value and the loading in memory seem to be faster, the initial impact on performance is still there (until everything load), but it got to a stable point faster:

FROM :
"numSlices":16,
"maxWorkspaces":8,
"maxMeshQueue":20,
"maxThreads":2,

To :
"numSlices":32,
"maxWorkspaces":16,
"maxMeshQueue":40,
"maxThreads":8,
Last edited by ActionOfLost; Jan 24 @ 7:20am
I defentaly will. I was playing around with the other lines that I figured might help. Have nothing to base it off of so I don't really know what it did. I had the idea of maxThreads as well, changed it to 4 to start but was too tired to go back in to see anything. I will try your suggestion though:)
I tried this and it actually has a big impact. Thanks a lot!!

My fps dropped to 40-60 but there was a definite improvement. The only point where it completely fails is when view is directly downwards for 150 - 200m, but this woud be almost impossible to fix with the problems the game has right now.

Excellent thread.
You can fix the view directly downwards or upwards, by changing "chunksVertically" but so far it crush my performance when I did it.

I'm working on making performance better for now, since fixing this would allow to load more vertically and have the current impact.

EDIT: I've also notice the longer you pass in the game the less impact on performance, wonder if I could for the load of object at the start.

EDIT 2: Also I'm trying different value because I think the game load to far low poly object (could improve performance if I can find the right value)
Last edited by ActionOfLost; Jan 24 @ 10:41am
I wonder if it wouldn't be a better idea to apply the changes to the medium setting .. so that a minimum framerate of 60 fps is in the cards.

Originally posted by ActionOfLost:
EDIT: I've also notice the longer you pass in the game the less impact on performance, wonder if I could for the load of object at the start.

It seems the time is needed for instanciating the objects not rendering which shows where the problem lies. The game would work ok if they could have the entire map in memory, but initialization at runtime is too slow.

So in general, anything could help that loads as much data as far ahead as possible, without completely butchering the framerate. The LOD system in the game seems counterproductive as it only needlessly reduces the amount of data that the player can see, when the real problem is that it should actually reduce the time of initializing new objects.
Last edited by Burning Bridges; Jan 24 @ 10:55am
Did not even think of that, your right that is a really good idea... I'll try to see if modifying the low & medium get better overall result
Chain Jan 24 @ 10:50am 
*Sub to your topic

Spending some fps to decrease the pop in would be really nice. (You got also a 'like' to your guide). At the moment I have no time to play subnautica.The only thing I can do is to just wish you the best on the project! :)
Last edited by Chain; Jan 24 @ 10:53am
Ok I don't have time to format the change but here are the change I've made that allow for better performance (5 to 15 more FPS depending on the zone) and fix the downward view distance (can see down hole WAY more that you use to be, not perfect but better)

For clipmaps-high.json ::
{
"chunkMeshRes":16,
"numSlices":32,
"maxWorkspaces":16,
"maxMeshQueue":40,
"maxThreads":8,

"vertexBucketStride":300,
"triangleBucketStride":175,

"levels":
[
{
"chunksPerSide":10,
"chunksVertically":10,
"colliders":true,
"downsamples":0,
"grass":true,
"entities":true,
"debug":false,
"castShadows":true,
"highPriority":true,
"visual":
{
"useLowMesh":false,
"simplify":
{
"maxError":0.001,
"antiSliverWeight":0.005
}
},
"grassSettings":
{
"reduction":0.0,
"maxVerts":10000,
"maxTris":10000
}
},

{
"chunksPerSide":12,
"chunksVertically":12,
"colliders":false,
"downsamples":0,
"grass":true,
"entities":true,
"debug":false,
"castShadows":true,
"highPriority":false,
"visual":
{
"useLowMesh":true,
"simplify":
{
"maxError":0.01,
"antiSliverWeight":0.001
}
},
"grassSettings":
{
"reduction":0.0,
"maxVerts":10000,
"maxTris":10000
}
},

{
"chunksPerSide":14,
"chunksVertically":14,
"colliders":false,
"downsamples":1,
"meshOverlap":1,
"maxBlockTypes":2,
"grass":false,
"entities":true,
"debug":false,
"castShadows":false,
"highPriority":false,
"visual":
{
"useLowMesh":true,
"simplify":
{
"maxError":0.1,
"antiSliverWeight":0.0005
}
},
"grassSettings":
{
"reduction":0.0,
"maxVerts":10000,
"maxTris":10000
}
},

{
"chunksPerSide":16,
"chunksVertically":16,
"colliders":false,
"downsamples":2,
"maxBlockTypes":1,
"grass":false,
"entities":true,
"debug":false,
"castShadows":false,
"highPriority":false,
"fadeMeshes":true,
"visual":
{
"useLowMesh":true,
"simplify":
{
"maxError":1.0,
"antiSliverWeight":0.0005
}
},
"grassSettings":
{
"reduction":0.0,
"maxVerts":10000,
"maxTris":10000
}
}
]
}


For streaming-high.json ::
{
"disableFarColliders":false,
"maxFrameMs":12,
"maxSubFrameMs":12,
"maxInsideFrameMs":8,
"preLoad":1,
"warmupAllShaders":false,
"batchLoadRings":2
}
It's fun to play around with those files. I had spent more time playing around with Skyrim's .ini files than actually playing it haha. Though that was also in part due to never being able to get it looking right:P Also I did notice that it was choppy at first, thought my system was being affected by the changes, but after about 10min it ran pretty good:) Well, time to dive in! (no pun intended, unless you liked it haha).
Last edited by Yonder Gander; Jan 24 @ 2:12pm
Yeah notice the improvement over time, got me to mess around in the loading sequence and so far got it to be stable on launch... after 17 minutes of freaking loading time... I'm sure it can be better but the engine show it's limitation.
Last edited by ActionOfLost; Jan 24 @ 2:23pm
Holy crap, wow the things we will endure through to find the best experience:P I remember reading something I think John Carmack said; You can either create a game, or create an engine. Not both. That made me think, someone should use early access to create an engine so we can help make the perfect one. Though no one can "access" it while they're making it so I guess thats a no haha. Still though, I think its possible to create a game that is quality over quantity. Just speculation, but seeing the ps4 and xbox json files in the same folder has me think that has to be the culprit, that and the whole game only being 13GB.

Anyways, I played it with the newer json file. Its pretty smooth but more often than before it dips to 44fps from 90(have it capped at 93 with nvidia inspector). Too much stutter for me. Im ok with the original setup, but I might be able to make it better by just changing some of the numbers back. I'm sure we will all find a perfect setup eventually.
Last edited by Yonder Gander; Jan 24 @ 4:46pm
< >
Showing 1-15 of 41 comments
Per page: 15 30 50

Date Posted: Jan 23 @ 8:25pm
Posts: 41