myspace / Lua /Config /render.lua
sirnii's picture
Upload 1816 files
b6a38d7 verified
raw
history blame
8.57 kB
if not FirstLoad then return end
hr.TrimParticles = 1
hr.MaxVisHeight = 25
hr.EnablePostProcRadialBlur = 0
hr.EnablePostProcDistanceBlur = 0
hr.EnableScreenSpaceAmbientObscurance = 0
hr.EnablePostProcAA = 1
hr.Shadowmap = 1
hr.ShadowPCFSize = 3
hr.ShadowCSMCascades = (Platform.ps4 or Platform.xbox_one and not Platform.xbox_one_x) and 3 or 4
hr.ShadowCSMRangeMinimum = 30
hr.ShadowCSMRangeMultiplier = 200
hr.ShadowSDSMEnable = true
hr.SSRZThickness = 0.07
hr.SSRZThicknessCoef = 0.005
hr.EnableDeposition = 1
-- Trails
hr.MaxTrails = 128
hr.GrassFadeRangeMin = 80
hr.GrassFadeRangeMax = 120
-- camera default parameters
hr.FarZ = 2048*1414 -- diagonal of 2048 map
hr.NearZ = 500
hr.CameraMaxZoomSlow = "0.05"
hr.CameraMaxZoomSpeed = "0.5"
hr.CameraMaxPanSpeed = 3
hr.CameraMaxPanSpeedFast = 40
hr.CameraMaxClampZ = 1200000
hr.CameraMaxClampXY = 700000
ShadingConst = {}
SetupVarTable(ShadingConst, "ShadingConst.")
SetVarTableLock(ShadingConst, true)
ShadingConst.ConstructionStage0Color = RGBA(40, 125, 130, 30)
ShadingConst.ConstructionStage1Color = RGBA(50, 70, 130, 30)
ShadingConst.ConstructionStage2Color = RGBA(45, 185, 25, 30)
-- ==== Shadowmap bias and rendering settings ===
ShadowBias = {
Small = {
clamp = "0.0",
slope = "0.0",
offset = "0.0",
},
Medium = {
clamp = "0.0",
slope = "0.0",
offset = "0.0",
},
Large = {
clamp = "0.0",
slope = "0.0",
offset = "0.0",
},
LowSlope = {
clamp = "0.0",
slope = "0.0",
offset = "0.0",
},
Terrain = {
clamp = "0.0",
slope = "0.0",
offset = "0.0",
}
}
hr.ShadowmapSize = 4096
hr.LightShadowsSize = 4096
hr.NumberOfLightsWithShadows = 64
if Platform.neo or Platform.scorpio then
hr.UIL_TextureWidth = 4096
hr.UIL_TextureHeight = 4096
else
hr.UIL_TextureWidth = 2048
hr.UIL_TextureHeight = 2048
end
hr.FovAngle = 70*60
hr.FovAngleAutoMinY = 40
hr.FovAngleAutoMaxY = 60
hr.FovAngleAutoLimits = 0
hr.HorizonWaterRange = 3000000
hr.ShadowFrustumNearCapOffset = 130
ShaderLists = {}
hr.ShadowFadeOutRangePercent = 30 -- shadows will fade more sharply, but keep their strength at longer distances
hr.ForceRefractionCopy = 1
hr.EnableShaderCompilation = 1
-- Setup for the sun path. Times assume 24h Earth day
hr.TODSunriseTime = 3*60 + 50
hr.TODSunriseAzi = 114*60
hr.TODSunsetTime = 20*60 + 10
hr.TODSunsetAzi = 246*60
hr.TODSunMaxElevation = 60*60
hr.TODSunShadowMinAltitude = 15*60
-- Change the celestial pole for a different planet
-- Coords are in Equatorial coordinate system, see Wiki
-- Defaults are for the pole on Earth (near Polaris). Example for Sirius:
-- hr.SkyCelestialPoleRightAscension = CSphereRA(6, 45, 9)
-- hr.SkyCelestialPoleDeclination = CSphereDec(-16, 42, 58)
const.MovieCorrectionDesaturation = 0
const.MovieCorrectionGamma = 1700
hr.ShadowSDSMReadbackLatency=1
if Platform.xbox then
hr.EnableShaderCompilation = 0
end
InsertProceduralMeshShaders({
-- Define project specific mesh shaders.
{ shaderid = "RangeContours.fx", defines = {"RANGE_CONTOUR"}, name = "range_contour", topology = const.ptTriangleList, cull_mode = const.cullModeNone,
blend_mode = const.blendNormal, depth_test = "always" },
{ shaderid = "RangeContours.fx", defines = {"RANGE_CONTOUR_DEFAULT"}, name = "range_contour_default", topology = const.ptTriangleList, cull_mode = const.cullModeNone,
blend_mode = const.blendNormal, depth_test = "always" },
{ shaderid = "RangeContours.fx", defines = {"INSIDE_BORDER"}, name = "inside_border_active", topology = const.ptTriangleList, cull_mode = const.cullModeNone,
blend_mode = const.blendNormal, depth_test = "always" },
{ shaderid = "RangeContours.fx", defines = {"COMBAT_BORDER"}, name = "combat_border", topology = const.ptTriangleList, cull_mode = const.cullModeNone,
blend_mode = const.blendNormal, depth_test = "runtime" },
{ shaderid = "RangeContours.fx", defines = {"INSIDE_BORDER", "INACTIVE"}, name = "inside_border_inactive", topology = const.ptTriangleList, cull_mode = const.cullModeNone,
blend_mode = const.blendNormal, depth_test = "always" },
{ shaderid = "RangeContours.fx", defines = {"INSIDE_BORDER", "INACTIVE"}, name = "enemy_aware_range", topology = const.ptTriangleList, cull_mode = const.cullModeNone,
blend_mode = const.blendNormal, depth_test = "never" },
{ shaderid = "RangeContours.fx", defines = {"RANGE_CONTOUR"}, name = "path_contour", topology = const.ptTriangleList, cull_mode = const.cullModeNone,
blend_mode = const.blendNormal, depth_test = "runtime" },
{ shaderid = "RangeContours.fx", defines = {"CENTERED_LINE"}, name = "centered_line", topology = const.ptTriangleList, cull_mode = const.cullModeNone,
blend_mode = const.blendNormal, depth_test = "runtime" },
{ shaderid = "RangeContours.fx", defines = {"VISION_LINE"}, name = "vision_line", topology = const.ptTriangleList, cull_mode = const.cullModeNone,
blend_mode = const.blendNormal, depth_test = "runtime" },
{ shaderid = "RangeContours.fx", defines = {"EXIT_ZONE"}, name = "exit_zone", topology = const.ptTriangleList, cull_mode = const.cullModeNone,
blend_mode = const.blendNormal, depth_test = "always" },
{ shaderid = "RangeContours.fx", defines = {"CONE"}, name = "cone", topology = const.ptTriangleList, cull_mode = const.cullModeNone,
blend_mode = const.blendNormal, depth_test = "runtime" },
{ shaderid = "RangeContours.fx", defines = {"MAP_BORDER"}, name = "map_border", topology = const.ptTriangleList, cull_mode = const.cullModeNone,
blend_mode = const.blendNormal, depth_test = "always" },
{ shaderid = "RangeContours.fx", defines = {"GROUND_STROKES"}, name = "ground_strokes", topology = const.ptTriangleList, cull_mode = const.cullModeNone,
blend_mode = const.blendNormal, depth_test = "runtime" },
{ shaderid = "RangeContours.fx", defines = {"DEPLOYMENT_GRID"}, name = "deployment_grid", topology = const.ptTriangleList, cull_mode = const.cullModeNone,
blend_mode = const.blendNormal, depth_test = "always" },
{ shaderid = "Overwatch.fx", defines = {"AOE_TILES_SECTOR"}, name = "aoe_tiles_sector", topology = const.ptTriangleList, cull_mode = const.cullModeNone,
blend_mode = const.blendNormal, depth_test = "always" },
{ shaderid = "Overwatch.fx", defines = {"OVERWATCH_WALLS"}, name = "overwatch_lines", topology = const.ptTriangleList, cull_mode = const.cullModeNone,
blend_mode = const.blendNormal, depth_test = "always" },
{ shaderid = "Overwatch.fx", defines = {"GRENADE_SPHERE"}, name = "grenade_sphere", topology = const.ptTriangleList, cull_mode = const.cullModeNone,
blend_mode = const.blendNormal, depth_test = "always" },
{ shaderid = "Overwatch.fx", defines = {"GRENADE_AOE_TILES_SPHERE"}, name = "grenade_aoe_tiles_sphere", topology = const.ptTriangleList, cull_mode = const.cullModeNone,
blend_mode = const.blendNormal, depth_test = "always" },
{ shaderid = "RangeContours.fx", defines = {"MELEE_AOE_TILES"}, name = "melee_aoe_tiles", topology = const.ptTriangleList, cull_mode = const.cullModeNone,
blend_mode = const.blendNormal, depth_test = "always" },
{ shaderid = "RangeContours.fx", defines = {"AOE_TILES_CIRCLE"}, name = "aoe_tiles_circle", topology = const.ptTriangleList, cull_mode = const.cullModeNone,
blend_mode = const.blendNormal, depth_test = "always" },
{ shaderid = "RangeContours.fx", defines = {"AOE_TILES_CYLINDER"}, name = "aoe_tiles_cylinder", topology = const.ptTriangleList, cull_mode = const.cullModeNone,
blend_mode = const.blendNormal, depth_test = "always" },
{ shaderid = "RangeContours.fx", defines = {"AWARENESS_INDICATOR"}, name = "awareness_indicator", topology = const.ptTriangleList, cull_mode = const.cullModeNone,
blend_mode = const.blendNormal, depth_test = "always" },
})
-- Hair Parameters initial values for testing purposes
hr.HairRoughness = 100
hr.HairMetallic = 50
function LimitTextureMips()
local resources = {
{res = "UI/SatelliteView/SatView.dds", MinLevel = 1},
{res = "Textures/2216029.dds", MinLevel = 2},
}
local folders = {
"UI/Mercs/",
"UI/Enemies/",
"UI/NPCs/",
}
for _,folder in ipairs(folders) do
local err, files = AsyncListFiles(folder, "*", "")
for _,file in ipairs(files) do
resources[#resources+1] = {res = file, MinLevel = 1}
end
end
for _,res in ipairs(resources) do
local updated = ResourceManager.SetMetadataField(ResourceManager.GetResourceID(res.res), "MinLevel", res.MinLevel)
assert(updated)
end
end
function OnMsg.Start()
if Platform.ps4 and not Platform.ps4_pro or Platform.xbox_one and not Platform.xbox_one_x then
LimitTextureMips()
end
end