增加视野距离【减少/无模型突然加载】

0 点赞
深海迷航
转载

无需模组即可让地形和植物在远处保持可见的方法。也就是提升绘制距离/LOD。(说的就是你,100米外就消失的蘑菇生物群系)这是一个非常简单、对新手友好的指南,只需编辑游戏的几个文件。注意:此方法适用于游戏的“大型更新”之后的版本,不适用于旧版游戏。根据你的系统配置,预计帧率会下降约10-20%(我的帧率从约80 FPS降至约65-70 FPS)。新增:提供高度优化的复制粘贴版本!对比图片

Step 1: Getting to the files → program files (x86) → Steam Now search "Subnautica" →Subnautica_Data → StreamingAssets → SNUnmanagedData [you'll find these in file explorer on your hardrive, just to be clear] (If your install location is different, just search "subnautica_Data" Wait till your PC finds it, and continue from there) Now: you'll see 3 Files called "clipmaps-high.json" "clipmaps-medium.json" And "clipmaps-low.json" Copy all three into a backup folder before editing. this lets you restore the originals if you make a mistake. Now you may skip past steps 2, 3, 4, to the new copy-paste section, or continue the original way Step 2: Increasing draw distance Now, Lets start with clipmaps-high.json Double click and open in notepad. Here you'll see a bunch of confusing code. (trust the process) Find: "chunksPerSide" & chunksVertically" They appear 5 times in each file. Now, Simply double the number next to it: Example 7 to 14. 8 to 16. 4 to 8. 1 to 2 etc. Do this in each file You just increased the draw distance from 112meters to 224! This is plenty. Step 3 Adjusting the flora budget In those same 3 files is "maxVerts" & "maxTris" They have 10000. Change it to 40000 (Just change the 1 to a 4, to be sure you don't add an extra zero) Explanation: Doubling our view distance both directions, means there's 4 times as much world loaded. And Verts Tris are a "budget" for plant-life to exist. so you're adjusting the budget to match You're almost done!!! Step 4 Final step! Step 4 is finding "reduction" (Its right above maxVerts) it reduces plant quantity at set distances This is the most resource hungry change, And doesn't need to be adjusted to the exact numbers, But it's recommended. These changes are specific to each file, don't blanket apply them Starting in High.json: Set reduction to 0.12 for all but the one at 0.0 Next Medium.json: Set reduction to 0.18 Last Low.json Set reduction to 0.24 IMPORTANT! one will have 0.9 reduction, only lower that to 0.5 and change the Verts Tris directly under, back to 10000 That code is for very far away plants, and giving it too much budget is a waste of processing power. Press Ctrl S to save changes, then press x on each of the 3 notes If it asks if you want to save, then press yes, cuz that means Ctrl s didn't save! Annnnnnd... YOU'RE DONE! CONGRATS, enjoy! New Copy-Paste Optimized Version Below! Easier and even better See Step 1 to locate the files. then replace them with the new contents below. Notice: Don't miss the brackets while copying. they are important! these things → { { [ Copy-Paste Over Contents Of: clipmaps-high.json { "chunkMeshRes":16, "numSlices":16, "maxWorkspaces":16, "maxMeshQueue":20, "maxThreads":16, "vertexBucketStride":300, "triangleBucketStride":175, "levels": [ { "chunksPerSide":14, "chunksVertically":14, "colliders":true, "downsamples":0, "maxBlockTypes":32, "grass":true, "entities":true, "debug":false, "castShadows":true, "highPriority":true, "visual": { "useLowMesh":false, "simplify": { "maxError":0.01, "antiSliverWeight":0.0005 } }, "grassSettings": { "reduction":0.0, "maxVerts":40000, "maxTris":40000 } }, { "chunksPerSide":14, "chunksVertically":14, "colliders":false, "downsamples":0, "maxBlockTypes":8, "grass":true, "entities":true, "debug":false, "castShadows":true, "highPriority":false, "visual": { "useLowMesh":false, "simplify": { "maxError":0.1, "antiSliverWeight":0.0005 } }, "grassSettings": { "reduction":0.10, "maxVerts":30000, "maxTris":30000 } }, { "chunksPerSide":14, "chunksVertically":14, "colliders":false, "downsamples":1, "maxBlockTypes":2, "meshOverlap":1, "grass":false, "entities":true, "debug":false, "castShadows":false, "highPriority":false, "visual": { "useLowMesh":false, "simplify": { "maxError":1.0, "antiSliverWeight":0.0005 } }, "grassSettings": { "reduction":0.18, "maxVerts":22000, "maxTris":22000 } }, { "chunksPerSide":16, "chunksVertically":8, "colliders":false, "downsamples":2, "ignoreMeshes":false, "meshOverlap":0, "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.35, "maxVerts":12000, "maxTris":12000 } }, { "chunksPerSide":1, "chunksVertically":1, "colliders":false, "downsamples":4, "ignoreMeshes":true, "maxBlockTypes":1, "grass":false, "entities":false, "debug":false, "castShadows":false, "highPriority":false, "fadeMeshes":false, "visual": { "useLowMesh":true, "simplify": { "maxError":10.0, "antiSliverWeight":0.0005 } }, "grassSettings": { "reduction":0.55, "maxVerts":10000, "maxTris":10000 } } ] } Copy-Paste Over Contents Of: clipmaps-medium.json { "chunkMeshRes":16, "numSlices":16, "maxWorkspaces":8, "maxMeshQueue":20, "maxThreads":8, "vertexBucketStride":300, "triangleBucketStride":175, "levels": [ { "chunksPerSide":14, "chunksVertically":14, "colliders":true, "downsamples":0, "maxBlockTypes":8, "grass":true, "entities":true, "debug":false, "castShadows":true, "highPriority":true, "visual": { "useLowMesh":true, "simplify": { "maxError":0.01, "antiSliverWeight":0.0005 } }, "grassSettings": { "reduction":0.8, "maxVerts":40000, "maxTris":40000 } }, { "chunksPerSide":14, "chunksVertically":14, "colliders":false, "downsamples":1, "maxBlockTypes":4, "meshOverlap":2, "grass":true, "entities":true, "debug":false, "castShadows":false, "highPriority":false, "visual": { "useLowMesh":true, "simplify": { "maxError":0.1, "antiSliverWeight":0.0005 } }, "grassSettings": { "reduction":0.14, "maxVerts":40000, "maxTris":40000 } }, { "chunksPerSide":14, "chunksVertically":14, "colliders":false, "downsamples":2, "maxBlockTypes":2, "grass":false, "entities":true, "debug":false, "castShadows":false, "highPriority":false, "visual": { "useLowMesh":true, "simplify": { "maxError":1.0, "antiSliverWeight":0.0005 } }, "grassSettings": { "reduction":0.22, "maxVerts":40000, "maxTris":40000 } }, { "chunksPerSide":16, "chunksVertically":8, "colliders":false, "downsamples":3, "ignoreMeshes":false, "meshOverlap":0, "maxBlockTypes":1, "grass":false, "entities":true, "debug":false, "castShadows":false, "highPriority":false, "fadeMeshes":true, "visual": { "useLowMesh":true, "simplify": { "maxError":10.0, "antiSliverWeight":0.0005 } }, "grassSettings": { "reduction":0.35, "maxVerts":10000, "maxTris":10000 } }, { "chunksPerSide":1, "chunksVertically":1, "colliders":false, "downsamples":4, "ignoreMeshes":true, "maxBlockTypes":1, "grass":false, "entities":false, "debug":false, "castShadows":false, "highPriority":false, "fadeMeshes":false, "visual": { "useLowMesh":true, "simplify": { "maxError":10.0, "antiSliverWeight":0.0005 } }, "grassSettings": { "reduction":0.6, "maxVerts":10000, "maxTris":10000 } } ] } Copy-Paste Over Contents Of: clipmaps-low.json { "chunkMeshRes":16, "numSlices":16, "maxWorkspaces":8, "maxMeshQueue":20, "maxThreads":4, "vertexBucketStride":300, "triangleBucketStride":175, "levels": [ { "chunksPerSide":10, "chunksVertically":10, "colliders":true, "downsamples":0, "maxBlockTypes":8, "grass":true, "entities":true, "debug":false, "castShadows":false, "highPriority":true, "visual": { "useLowMesh":true, "simplify": { "maxError":0.01, "antiSliverWeight":0.0005 } }, "grassSettings": { "reduction":0.28, "maxVerts":40000, "maxTris":40000 } }, { "chunksPerSide":14, "chunksVertically":14, "colliders":false, "downsamples":1, "maxBlockTypes":4, "meshOverlap":2, "grass":true, "entities":true, "debug":false, "castShadows":false, "highPriority":false, "visual": { "useLowMesh":true, "simplify": { "maxError":0.1, "antiSliverWeight":0.0005 } }, "grassSettings": { "reduction":0.85, "maxVerts":20000, "maxTris":20000 } }, { "chunksPerSide":10, "chunksVertically":10, "colliders":false, "downsamples":2, "maxBlockTypes":2, "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.55, "maxVerts":12000, "maxTris":12000 } }, { "chunksPerSide":16, "chunksVertically":8, "colliders":false, "downsamples":3, "ignoreMeshes":true, "meshOverlap":0, "maxBlockTypes":1, "grass":false, "entities":true, "debug":false, "castShadows":false, "highPriority":false, "fadeMeshes":false, "visual": { "useLowMesh":true, "simplify": { "maxError":10.0, "antiSliverWeight":0.0005 } }, "grassSettings": { "reduction":0.65, "maxVerts":8000, "maxTris":8000 } }, { "chunksPerSide":1, "chunksVertically":1, "colliders":false, "downsamples":4, "ignoreMeshes":true, "maxBlockTypes":1, "grass":false, "entities":false, "debug":false, "castShadows":false, "highPriority":false, "fadeMeshes":false, "visual": { "useLowMesh":true, "simplify": { "maxError":10.0, "antiSliverWeight":0.0005 } }, "grassSettings": { "reduction":0.75, "maxVerts":4000, "maxTris":4000 } } ] } Final words It took quite a few hours to research and test everything, So if this guide helped improve your experience, i'd love to hear about it! And as they say~ sharing is caring. So feel free to click that Helpful button, so more folks find it ❤️ Happy Swimming.