Code Vein — улучшение визуализации

Это позволит улучшить внешний вид игры, загрузив более качественные активы за счет производительности.

Предисловие

Прежде чем мы начнем говорить о том, как это сделать, надо упомянуть, что также произойдут некоторые нежелательные вещи.

  • Текстуры будут иметь эффект «мерцания». Это просто потому, что мы принудительно устанавливаем максимальное разрешение для текстуры. На самом деле, она не мерцает, просто слишком много деталей. Этот эффект может быть снижен при дальнейшей настройке.
  • Производительность будет резко снижена, особенно если ваш графический процессор имеет небольшой объем памяти.

Пример такой конфигурации:

До первого примера
Code Vein

Освещение заметно лучше, текстуры имеют более плотные детали.
Code Vein

До второго примера
Code Vein

Заметно более резкие текстуры, многие мелкие модели находятся в самых высоких деталях уровнях детализации.

Code Vein

Код

Зайдите в:
%localappdata%/CodeVein/Saved/Config/WindowsNoEditor/Scalability.ini

Замените на это:

; Low corresponds to FXAA
[AntiAliasingQuality@0]
r.DefaultFeature.AntiAliasing=1
r.PostProcessAAQuality=1
r.Tonemapper.Sharpen=0
r.ScreenPercentage=100.000000
r.TemporalAASamples=0
r.MSAA.CompositingSampleCount=0

; High corresponds to TAA
[AntiAliasingQuality@2]
r.DefaultFeature.AntiAliasing=2
r.PostProcessAAQuality=6 ; Cinematic AA quality
r.TemporalAASamples=16 ; Slightly increase TAA Sample count
r.TemporalAACatmullRom=1 ; Enable Catmull-Rom algorithm for TAA
r.Tonemapper.Sharpen=1 ; Sharpen the result to make it DRASTICALLY less blurry.
r.ScreenPercentage=104.000000 ; Slight natural AA
r.MSAA.CompositingSampleCount=0

; Highest corresponds to MSAA
[AntiAliasingQuality@3]
r.DefaultFeature.AntiAliasing=0
r.PostProcessAAQuality=6
r.MSAA.CompositingSampleCount=8
r.Tonemapper.Sharpen=0
r.ScreenPercentage=104.000000 ; Slight natural AA
r.TemporalAASamples=0

[ViewDistanceQuality@3]
r.ViewDistanceScale=10.0 ; See more
r.SkeletalMeshLODBias=-10 ; Animations scale further
r.StaticMeshLODDistanceScale=0.001 ; Static meshes always load best LOD
r.ForceLOD=-1
b.LevelStreamingMaxLODLevel=3
b.LevelStreamingDistanceRatioForLOD=1.0
b.NetMoveEnableByDistance=-1

[ShadowQuality@3]
; Mostly inherited from default scalability settings for «Cinematic»
r.LightFunctionQuality=1
r.ShadowQuality=5
r.Shadow.CSM.MaxCascades=10
r.Shadow.RadiusThreshold=0
r.Shadow.DistanceScale=1.0
r.Shadow.CSM.TransitionScale=1.0
r.Shadow.PreShadowResolutionFactor=1.0
r.DistanceFieldShadowing=1
r.DistanceFieldAO=1
r.VolumetricFog=1
r.VolumetricFog.GridPixelSize=4
r.VolumetricFog.GridSizeZ=128
r.VolumetricFog.HistoryMissSupersampleCount=16
r.CapsuleShadows=1
r.Shadow.MaxResolution=4096 ; This seems to be the engine max
r.Shadow.MaxCSMResolution=4096 ; This seems to be the engine max
r.Shadow.DynamicInsetShadowEnable=1
r.Shadow.DynamicInsetShadowRange=16384
r.Shadow.TexelsPerPixel=16 ; Going any higher seems unreasonable
r.Shadow.GridToCSM=2
r.Shadow.GridTextureSize=4096 ; Going any higher seems unreasonable

[PostProcessQuality@3]
; Default scalability settings for «Cinematic»
r.MotionblurQuality=4
r.AmbientOcclusionMipLevelFactor=0.4
r.AmbientOcclusionMaxQuality=100
r.AmbientOcclusionLevels=0
r.AmbientOcclusionSampleSetQuality=1
r.AmbientOcclusionRadiusScale=1.0
r.AOAsyncBuildQueue=1
r.AOMaxViewDistance=16384
r.AOMinLevel=0
r.AOScatterInterpolation=1
r.DistanceFieldAO=1
r.DistanceFieldGI=1
r.DepthOfFieldQuality=4
r.RenderTargetPoolMin=4096
r.LensFlareQuality=3
r.SceneColorFringeQuality=1
r.EyeAdaptationQuality=2
r.BloomQuality=5
r.FastBlurThreshold=100
r.Upscale.Quality=3
r.Tonemapper.GrainQuantization=1
r.LightShaftQuality=1
r.Filter.SizeScale=1
r.Tonemapper.Quality=5
r.LightShaftNumSamples=512
r.ReflectionEnvironment=2

[TextureQuality@3]
r.TextureStreaming=0 ; Disable texture streaming
r.MaxAnisotropy=16 ; Max anisotropic filtering
; If streamer doesnt get disabled, below apply
r.Streaming.PoolSize=0 ; Give us a infinite pool
r.Streaming.HLODStrategy=2 ; Load all
r.Streaming.HiddenPrimitiveScale=1 ; Try to keep native
r.Streaming.MaxEffectiveScreenSize=0 ; Disregard screen size
r.Streaming.Boost=512 ; Try for max res textures
r.Streaming.MipBias=-15 ; Pick best mips
r.MipMapLodBias=-15 ; Pick best mips, not sure which is right?
r.Streaming.UsePerTextureBias=0 ; Ignore the developers intended mip bias’
r.Streaming.FullyLoadUsedTextures=1 ; Fully load every used texture
r.Streaming.UseAllMips=1 ; Remove resolution limitations
r.Streaming.DefragDynamicBounds=1 ; Remove dynamic bounds from update loop
r.Streaming.LimitPoolSizeToVRAM=0 ; Remove memory limit
r.Streaming.ScaleTexturesByGlobalMyBias=0 ; Ignore global mip bias
r.HighQualityLightMaps=1

[EffectsQuality@3]
; Default scalability settings for «Cinematic»
r.TranslucencyLightingVolumeDim=64 ; Going any higher seems unreasonable
r.RefractionQuality=3
r.SSR.Quality=4
r.SceneColorFormat=4
r.DetailMode=2
r.TranslucencyVolumeBlur=1
r.MaterialQualityLevel=1
r.SSS.HalfRes=0
r.SSS.Scale=1
r.SSS.SampleSet=2
r.SSS.Quality=1
r.EmitterSpawnRateScale=2.0
r.ParticleLightQuality=2

[FoliageQuality@3]
; Doesn’t seem to be used, but if it is, make it very nice
foliage.DensityScale=8.0
grass.DensityScale=8.0
r.ViewFoliageDistance=800000.0

Убедитесь, что файл установлен на Только Чтение, чтобы игра ничего не изменяла.

Это работает на опции «Наивысшая», однако для сглаживания «Самая высокая» соответствует MSAA x8, а «Высокая» — Cinematic Sharpened TAA.

Оставьте комментарий