sys_spec_Full=2

-- Cap frame rate at 30fps
sys_maxfps=30
r_vsync=1

-- Enable framebufferfetch or pls if applicable
r_EnableGMEMPath=1

-- Skip the native upscale as a second upscale occurs on Metal Present
r_SkipNativeUpscale=1

-- Default of 3 allocates all shaders (potentially >150 MB)
-- 1 is most memory efficient but definitely causes hitches when converting HLSL
-- shaders.  Recommend 1 during dev, and 3 with optimized caches for release.
r_ShadersPreactivate=1


------------------------
-- Job System
------------------------
sys_job_system_enable=0
sys_job_system_max_worker=1

------------------------
-- Streaming
------------------------
sys_streaming_in_blocks=1
sys_streaming_memory_budget=512

------------------------
-- General Rendering
------------------------
r_Flush=0
-- Enabling this will clear the GMEM buffer before the z-pass
r_ClearGMEMGBuffer=2
r_Fur=0

------------------------
-- VisArea / Portals
------------------------
e_PortalsBlend=0
r_GMEMVisAreasBlendWeight=0.5

------------------------
-- Misc. memory buffers
------------------------
e_AutoPrecacheCgf=2
e_AutoPrecacheTerrainAndProcVeget=1
e_GeomCacheBufferSize=0
e_CheckOcclusionQueueSize=512
e_CheckOcclusionOutputQueueSize=1024

------------------------
-- Animation
------------------------
ca_MemoryDefragPoolSize=32
ca_StreamCHR=1

------------------------
-- sys_spec_water
------------------------
e_WaterOcean=2
e_WaterVolumes=2
e_WaterOceanBottom=0


------------------------
-- batching
------------------------
r_Batching = 1
r_BatchType = 0

------------------------
-- geom instancing
------------------------
r_GeomInstancing=1
r_GeomInstancingThreshold=5

------------------------
-- Upscaling
------------------------
--0 point, 1 bilinear, 2 bicubic, 3 lanczos
r_UpscalingQuality=1

------------------------
-- Geometry Cache
------------------------
e_GeomCaches=0


-- Due to performance issues with incremental cached shadow map updates, enable this to prevent us from culling every object in the world vs each cached shadow map each frame. 
-- If no objects are present in the level this will eliminate the need to clear the massive cached textures each frame.
-- Set to 2 to allow distance-based updates along with script-based updates for the cached shadow maps
e_ShadowsCacheRequireManualUpdate = 2

-- Sort ligths since we have limited space in the shadowmap pool texture
r_DeferredShadingSortLights = 3

--Use an optimized pixel format for the lighting rendertargets during the lighting pass. 
r_DeferredShadingLBuffersFmt = 2