You've already forked UnrealEngineUWP
mirror of
https://github.com/izzy2lost/UnrealEngineUWP.git
synced 2026-03-26 18:15:20 -07:00
#lockdown Nick.Penwarden #rb none ========================== MAJOR FEATURES + CHANGES ========================== Change 3170391 on 2016/10/21 by Ben.Woodhouse Remove the wait on end of frame ensure, because we can't rely on all the the underlying codepaths to never miss a call to flush RHI resources. The consequences of missing a flush on a given frame are not serious now, since we enforce the synchronisation with a fence, preventing the rendering thread from getting too far ahead. We will simply accumulate resources for an additional frame when this happens. #jira UE-37437 #fyi rolando.caloca, marcus.wassmer Change 3170659 on 2016/10/21 by Rolando.Caloca DR - vk - Prep work for state key changes Change 3170676 on 2016/10/21 by Rolando.Caloca DR - vk - Reworked blend state keys - Added depth/stencil to pipeline key Change 3170848 on 2016/10/21 by Daniel.Wright Level viewport 'show stats' option is now enabled by default, which avoids confusion with artists thinking lighting is built, when really the message is hidden. Change 3170849 on 2016/10/21 by Daniel.Wright Split FProjectedShadowInfo::RenderProjection into smaller functions which make the algorithm structure clear Change 3170995 on 2016/10/21 by Rolando.Caloca DR - vk - Show object on vulkan validation msgs Change 3171085 on 2016/10/21 by Rolando.Caloca DR - vk - Fix pipelines being used with incompatible renderpasses Change 3171159 on 2016/10/21 by Rolando.Caloca DR - vk - Fix layout when reading textures on CPU Change 3171167 on 2016/10/21 by Rolando.Caloca DR - vk - compile fix Change 3172462 on 2016/10/24 by Daniel.Wright Added a warning about shader compile times to the material tooltip Change 3172463 on 2016/10/24 by Daniel.Wright Reduced MinUnoccludedFraction to avoid artitfacts when a stationary light touches only a tiny part of a mesh Change 3172716 on 2016/10/24 by Brian.Karis Fix for crash UE-37369 when reimporting over a generated LOD. Change 3172967 on 2016/10/24 by Rolando.Caloca DR - vk - Fix writing buffers while GPU was using them Change 3174187 on 2016/10/25 by Olaf.Piesche UE-37020 Change 3174718 on 2016/10/26 by Rolando.Caloca DR - vk - Remove old timestamp queries, increase occlusion queries per pool to 4k Change 3175960 on 2016/10/26 by Rolando.Caloca DR - Added support for hlslcc header to have custom parsing Change 3176611 on 2016/10/27 by David.Hill DrawWireCone confusion: In response to a UDN, I'm updating confusing parameter names and comments for DrawWireCone() and DrawWireSphereCappedCone() Change 3177111 on 2016/10/27 by Rolando.Caloca DR - vk - Fix timestamps for frame Change 3177192 on 2016/10/27 by Arne.Schober DR - DitherLOD refactor - moved computation of the DepthStencil state out of SetMeshRenderState into GetDitheredLODTransitionState this is a prerequisite of further PSO work where we want to move up State setting in a similar war and reuse FMeshDrawingRenderState Change 3177278 on 2016/10/27 by Olaf.Piesche UE-37484 Change 3177297 on 2016/10/27 by Rolando.Caloca DR - vk - Enable GRHISupportsBaseVertexIndex Change 3177607 on 2016/10/27 by Rolando.Caloca DR - vk - SM4 UB prep Change 3178052 on 2016/10/28 by Arne.Schober DR - fix WebGL - the WebGL compiler is very picky on double underscores and does want the presission to be defined before any function definition. Change 3178156 on 2016/10/28 by Rolando.Caloca DR - vk - Added query timer - Fixed inline issues Change 3178158 on 2016/10/28 by Rolando.Caloca DR - vk - Fixes for out of stencil bits Change 3178462 on 2016/10/28 by Rolando.Caloca DR - vk - Fixes for Elemental Change 3179131 on 2016/10/28 by Rolando.Caloca DR - vk - Fix for r.Vulkan.UseRealUBs Change 3179139 on 2016/10/28 by Rolando.Caloca DR - vk - Move UB ring buffer to context Change 3179145 on 2016/10/28 by Rolando.Caloca DR - vk - Fix buffer barriers Change 3179888 on 2016/10/31 by Rolando.Caloca DR - vk - Align buffers to 16 bytes as we sometimes write to them with SIMD Change 3179923 on 2016/10/31 by Rolando.Caloca DR - vk - Wait for swapchain counter Change 3180430 on 2016/10/31 by Rolando.Caloca DR - vk - Properly wait for occlusion queries/cmd buffer - Actual log error if trying to use occlusion queries out of order Change 3180746 on 2016/10/31 by Rolando.Caloca DR - vk - Undo some waiting as it was on the wrong thread Change 3182115 on 2016/11/01 by Rolando.Caloca DR - hlslcc Linux path fix Change 3182118 on 2016/11/01 by Daniel.Wright Fixed global distance field seam artifacts from landscapes with no subsections Change 3182368 on 2016/11/01 by Daniel.Wright Dynamic Indirect Shadows for static meshes using distance fields * These Distance Field indirect shadows use the same tile culled and downsampled framework that capsule shadows use, with similar GPU cost * Individual StaticMesh assets can enable bGenerateMeshDistanceField to compute a distance field, without the memory cost of enabling for the whole project * New StaticMeshComponent properties bCastDynamicIndirectShadow and DynamicIndirectShadowMinVisibility * New WorldSettings property DynamicIndirectShadowsSelfShadowingIntensity which replaces the cvar * The GBuffer now stores HasDynamicIndirectShadowCasterRepresentation instead of HasHeightfieldRepresentation * DFAO from landscape is now done through the global distance field entirely. Landscape contribution to the global distance field is deferred to attempt to workaround texture streaming issues. Change 3182408 on 2016/11/01 by Rolando.Caloca DR - vk - Reworked occlusion queries, fixes flickering on AMD Change 3182585 on 2016/11/01 by Daniel.Wright PS4 compile fix Change 3183151 on 2016/11/02 by Rolando.Caloca DR - vk - Fix issue when processing super quick cmd buffers Change 3183160 on 2016/11/02 by Rolando.Caloca Dr - vk - Call reset queries outside render pass Change 3183182 on 2016/11/02 by Rolando.Caloca DR - Switch clear Change 3183194 on 2016/11/02 by Rolando.Caloca DR - Try to catch crash ahead of time Change 3183268 on 2016/11/02 by Rolando.Caloca DR - vk - Rename RenderPassState to TransitionState Change 3183440 on 2016/11/02 by Daniel.Wright Renamed 'Dynamic Indirect Shadow' to 'Distance Field Indirect Shadow' Change 3183793 on 2016/11/02 by Daniel.Wright Added ShadowResolutionScale to lightcomponent Change 3183796 on 2016/11/02 by Daniel.Wright Improved bSimulatePhysics comment, with info on why it might be greyed out Change 3183797 on 2016/11/02 by Daniel.Wright Precomputed shadowmaps no longer enable Force2To1Aspect, which is only needed for lightmaps. Improves shadowmap utilization. Change 3183915 on 2016/11/02 by Rolando.Caloca DR - vk - Remove redundant renderpasses Change 3183991 on 2016/11/02 by Daniel.Wright Added r.ReflectionEnvironmentLightmapMixLargestWeight, useful for restricting lightmap mixing to darkening only Change 3184001 on 2016/11/02 by Daniel.Wright Better draw event for IndirectCapsuleShadows in stereo Change 3184096 on 2016/11/02 by Chris.Bunner HDR for D3D11 - NVAPI toggle and encoding, UI compositing. Removed some outdated tonemamping cvars and modes. Change 3184399 on 2016/11/02 by Daniel.Wright Static analysis workaround Change 3184455 on 2016/11/02 by Mark.Satterthwaite Fix missing log10 from FCompositePS on hlslcc shader platforms so that QA can continue their integration. #jira UE-38164 Change 3184953 on 2016/11/03 by Chris.Bunner Fixing CIS warnings. [CL 3186011 by Marcus Wassmer in Main branch]
250 lines
8.8 KiB
INI
250 lines
8.8 KiB
INI
; These are tweaked defaults for various lightmass solver and export settings
|
|
; Artist-oriented lightmass settings are in the editor UI
|
|
; Documentation for all of these is in UnrealLightmass/Public/SceneExport.h
|
|
; This ini is reloaded every time a lighting build begins, no need to restart
|
|
|
|
[DevOptions.StaticLighting]
|
|
bAllowMultiThreadedStaticLighting=True
|
|
ViewSingleBounceNumber=-1
|
|
bUseBilinearFilterLightmaps=True
|
|
bCompressLightmaps=True
|
|
bUseConservativeTexelRasterization=True
|
|
bAccountForTexelSize=True
|
|
bUseMaxWeight=True
|
|
MaxTriangleLightingSamples=8
|
|
MaxTriangleIrradiancePhotonCacheSamples=4
|
|
bAllow64bitProcess=True
|
|
DefaultStaticMeshLightingRes=32
|
|
bAllowCropping=False
|
|
bGarbageCollectAfterExport=True
|
|
bRebuildDirtyGeometryForLighting=True
|
|
bUseEmbree=true
|
|
bVerifyEmbree=false
|
|
|
|
[DevOptions.StaticLightingSceneConstants]
|
|
StaticLightingLevelScale=1
|
|
VisibilityRayOffsetDistance=.1
|
|
VisibilityNormalOffsetDistance=3
|
|
VisibilityNormalOffsetSampleRadiusScale=.5
|
|
VisibilityTangentOffsetSampleRadiusScale=.8
|
|
SmallestTexelRadius=.1
|
|
; Tweaked for a good tradeoff between 'Cache Indirect Photon Paths' time and Indirect photon emitting 'Sampling Lights' time
|
|
LightGridSize=100
|
|
AutomaticImportanceVolumeExpandBy=500
|
|
MinimumImportanceVolumeExtentWithoutWarning=10000.0
|
|
|
|
[DevOptions.StaticLightingMaterial]
|
|
bUseDebugMaterial=False
|
|
ShowMaterialAttribute=None
|
|
; Material export sizes default to very small to keep exports fast
|
|
EmissiveSampleSize=128
|
|
DiffuseSampleSize=128
|
|
SpecularSampleSize=128
|
|
TransmissionSampleSize=256
|
|
NormalSampleSize=256
|
|
; Terrain materials default to much higher resolution since each material typically covers a large area in world space
|
|
TerrainSampleScalar=4
|
|
DebugDiffuse=(R=0.500000,G=0.500000,B=0.500000)
|
|
EnvironmentColor=(R=0.00000,G=0.00000,B=0.00000)
|
|
|
|
[DevOptions.MeshAreaLights]
|
|
bVisualizeMeshAreaLightPrimitives=False
|
|
; Only emissive texels above .01 will be used to create mesh area lights
|
|
EmissiveIntensityThreshold=.01
|
|
MeshAreaLightGridSize=100
|
|
MeshAreaLightSimplifyNormalAngleThreshold=25
|
|
MeshAreaLightSimplifyCornerDistanceThreshold=.5
|
|
MeshAreaLightSimplifyMeshBoundingRadiusFractionThreshold=.1
|
|
MeshAreaLightGeneratedDynamicLightSurfaceOffset=30
|
|
|
|
[DevOptions.PrecomputedDynamicObjectLighting]
|
|
bVisualizeVolumeLightSamples=False
|
|
bVisualizeVolumeLightInterpolation=False
|
|
NumHemisphereSamplesScale=2
|
|
SurfaceLightSampleSpacing=300
|
|
FirstSurfaceSampleLayerHeight=50
|
|
SurfaceSampleLayerHeightSpacing=250
|
|
NumSurfaceSampleLayers=2
|
|
DetailVolumeSampleSpacing=300
|
|
VolumeLightSampleSpacing=3000
|
|
; Clamp the number of volume samples generated to ~15mb
|
|
MaxVolumeSamples=250000
|
|
bUseMaxSurfaceSampleNum=True
|
|
; Approximately clamp the number of surface samples generated to ~30mb (only for Landscape currently)
|
|
MaxSurfaceLightSamples=500000
|
|
|
|
[DevOptions.PrecomputedVisibility]
|
|
bVisualizePrecomputedVisibility=False
|
|
bCompressVisibilityData=True
|
|
bPlaceCellsOnOpaqueOnly=True
|
|
NumCellDistributionBuckets=800
|
|
CellRenderingBucketSize=5
|
|
NumCellRenderingBuckets=5
|
|
PlayAreaHeight=220
|
|
MeshBoundsScale=1.2
|
|
VisibilitySpreadingIterations=1
|
|
MinMeshSamples=14
|
|
MaxMeshSamples=40
|
|
NumCellSamples=24
|
|
NumImportanceSamples=40
|
|
|
|
[DevOptions.PrecomputedVisibilityModeratelyAggressive]
|
|
MeshBoundsScale=1
|
|
VisibilitySpreadingIterations=1
|
|
|
|
[DevOptions.PrecomputedVisibilityMostAggressive]
|
|
MeshBoundsScale=1
|
|
VisibilitySpreadingIterations=0
|
|
|
|
[DevOptions.VolumeDistanceField]
|
|
VoxelSize=75
|
|
VolumeMaxDistance=900
|
|
NumVoxelDistanceSamples=800
|
|
; Clamp the size of the volume distance field generated to ~15mb
|
|
MaxVoxels=3992160
|
|
|
|
[DevOptions.StaticShadows]
|
|
; Using area shadows by default instead of filtering in texture space
|
|
bUseZeroAreaLightmapSpaceFilteredLights=False
|
|
NumShadowRays=8
|
|
NumPenumbraShadowRays=8
|
|
NumBounceShadowRays=1
|
|
bFilterShadowFactor=True
|
|
ShadowFactorGradientTolerance=0.5
|
|
bAllowSignedDistanceFieldShadows=True
|
|
MaxTransitionDistanceWorldSpace=50
|
|
ApproximateHighResTexelsPerMaxTransitionDistance=50
|
|
MinDistanceFieldUpsampleFactor=3
|
|
MinUnoccludedFraction=.0005
|
|
StaticShadowDepthMapTransitionSampleDistanceX=100
|
|
StaticShadowDepthMapTransitionSampleDistanceY=100
|
|
StaticShadowDepthMapSuperSampleFactor=2
|
|
; Clamp the number of shadow samples generated to ~8mb for huge levels
|
|
StaticShadowDepthMapMaxSamples=4194304
|
|
|
|
[DevOptions.ImportanceTracing]
|
|
bUseCosinePDF=False
|
|
bUseStratifiedSampling=True
|
|
NumHemisphereSamples=16
|
|
MaxHemisphereRayAngle=89
|
|
bUseAdaptiveSolver=true
|
|
NumAdaptiveRefinementLevels=2
|
|
AdaptiveBrightnessThreshold=1
|
|
AdaptiveFirstBouncePhotonConeAngle=4
|
|
|
|
[DevOptions.PhotonMapping]
|
|
bUsePhotonMapping=True
|
|
bUseFinalGathering=True
|
|
bUsePhotonDirectLightingInFinalGather=False
|
|
bVisualizeCachedApproximateDirectLighting=False
|
|
bUseIrradiancePhotons=True
|
|
bCacheIrradiancePhotonsOnSurfaces=True
|
|
bVisualizePhotonPaths=False
|
|
bVisualizePhotonGathers=True
|
|
bVisualizePhotonImportanceSamples=False
|
|
bVisualizeIrradiancePhotonCalculation=False
|
|
bEmitPhotonsOutsideImportanceVolume=False
|
|
ConeFilterConstant=1
|
|
; 400 gives a smooth enough result without requiring a very large search
|
|
NumIrradianceCalculationPhotons=400
|
|
; Allocating most final gather samples towards importance samples gives a good result as long as there are enough first bounce photons
|
|
FinalGatherImportanceSampleFraction=.6
|
|
; 10 degrees is a good tradeoff between capturing high frequency incident lighting at final gather points and covering the whole incident lighting domain with a limited number of importance directions
|
|
FinalGatherImportanceSampleConeAngle=10
|
|
IndirectPhotonEmitDiskRadius=200
|
|
IndirectPhotonEmitConeAngle=30
|
|
MaxImportancePhotonSearchDistance=2000
|
|
MinImportancePhotonSearchDistance=20
|
|
; Preview uses a very small number of importance directions
|
|
NumImportanceSearchPhotons=10
|
|
OutsideImportanceVolumeDensityScale=.0005
|
|
DirectPhotonDensity=350
|
|
; Same as DirectPhotonDensity, since currently direct photons are only used to create irradiance photons
|
|
DirectIrradiancePhotonDensity=350
|
|
DirectPhotonSearchDistance=200
|
|
IndirectPhotonPathDensity=5
|
|
; Need a very high indirect photon density since first bounce photons are used to guide the final gather
|
|
IndirectPhotonDensity=600
|
|
IndirectIrradiancePhotonDensity=300
|
|
IndirectPhotonSearchDistance=200
|
|
PhotonSearchAngleThreshold=.5
|
|
IrradiancePhotonSearchConeAngle=10
|
|
CachedIrradiancePhotonDownsampleFactor=2
|
|
|
|
[DevOptions.IrradianceCache]
|
|
bAllowIrradianceCaching=True
|
|
bUseIrradianceGradients=False
|
|
bShowGradientsOnly=False
|
|
bVisualizeIrradianceSamples=True
|
|
RecordRadiusScale=.8
|
|
InterpolationMaxAngle=20
|
|
PointBehindRecordMaxAngle=10
|
|
; Increase distance and angle constraints in the shading pass, which filters the interpolated result without losing too much detail.
|
|
DistanceSmoothFactor=4
|
|
AngleSmoothFactor=4
|
|
; Sky occlusion has less noise than normal GI, don't blur away details
|
|
SkyOcclusionSmoothnessReduction=.5
|
|
; Enforce a minimum sample rate on surfaces with no nearby occluders
|
|
MaxRecordRadius=1024
|
|
CacheTaskSize=64
|
|
InterpolateTaskSize=64
|
|
|
|
[DevOptions.StaticLightingMediumQuality]
|
|
NumShadowRaysScale=2
|
|
NumPenumbraShadowRaysScale=4
|
|
ApproximateHighResTexelsPerMaxTransitionDistanceScale=3
|
|
MinDistanceFieldUpsampleFactor=3
|
|
NumHemisphereSamplesScale=2
|
|
NumImportanceSearchPhotonsScale=1
|
|
NumDirectPhotonsScale=2
|
|
DirectPhotonSearchDistanceScale=.5
|
|
NumIndirectPhotonPathsScale=1
|
|
NumIndirectPhotonsScale=2
|
|
NumIndirectIrradiancePhotonsScale=2
|
|
RecordRadiusScaleScale=.75
|
|
InterpolationMaxAngleScale=1
|
|
IrradianceCacheSmoothFactor=.75
|
|
NumAdaptiveRefinementLevels=3
|
|
AdaptiveBrightnessThresholdScale=.5
|
|
AdaptiveFirstBouncePhotonConeAngleScale=1
|
|
|
|
[DevOptions.StaticLightingHighQuality]
|
|
NumShadowRaysScale=4
|
|
NumPenumbraShadowRaysScale=8
|
|
ApproximateHighResTexelsPerMaxTransitionDistanceScale=6
|
|
MinDistanceFieldUpsampleFactor=5
|
|
NumHemisphereSamplesScale=4
|
|
NumImportanceSearchPhotonsScale=2
|
|
NumDirectPhotonsScale=2
|
|
DirectPhotonSearchDistanceScale=.5
|
|
NumIndirectPhotonPathsScale=2
|
|
NumIndirectPhotonsScale=4
|
|
NumIndirectIrradiancePhotonsScale=2
|
|
RecordRadiusScaleScale=.75
|
|
InterpolationMaxAngleScale=.75
|
|
IrradianceCacheSmoothFactor=.75
|
|
NumAdaptiveRefinementLevels=3
|
|
AdaptiveBrightnessThresholdScale=.25
|
|
AdaptiveFirstBouncePhotonConeAngleScale=2
|
|
|
|
[DevOptions.StaticLightingProductionQuality]
|
|
NumShadowRaysScale=8
|
|
NumPenumbraShadowRaysScale=32
|
|
ApproximateHighResTexelsPerMaxTransitionDistanceScale=6
|
|
MinDistanceFieldUpsampleFactor=5
|
|
NumHemisphereSamplesScale=8
|
|
NumImportanceSearchPhotonsScale=3
|
|
NumDirectPhotonsScale=4
|
|
; Decrease direct photon search distance so that we will have more accurate shadow transitions. This requires a higher density of direct photons.
|
|
DirectPhotonSearchDistanceScale=.5
|
|
NumIndirectPhotonPathsScale=2
|
|
; Need a lot of indirect photons since we have increased the number of first bounce photons to use for final gathering with NumImportanceSearchPhotonsScale
|
|
NumIndirectPhotonsScale=8
|
|
NumIndirectIrradiancePhotonsScale=2
|
|
; Decreasing the record radius results in more records, which increases quality
|
|
RecordRadiusScaleScale=.5625
|
|
InterpolationMaxAngleScale=.75
|
|
IrradianceCacheSmoothFactor=.75
|
|
NumAdaptiveRefinementLevels=3
|
|
AdaptiveBrightnessThresholdScale=.25
|
|
AdaptiveFirstBouncePhotonConeAngleScale=2.5 |