Commit Graph

395 Commits

Author SHA1 Message Date
daniel wright
0daeb7fe49 Fixed MeshCards not getting generated when a mesh has DistanceFieldResolutionScale = 0, breaking CitySample HLOD1
Instead of clearing RadiosityAtlas and skipping Radiosity when switching Lumen to SWRT, voxelize the direct lighting that's been calculated so far and keep the existing Radiosity atlas
#preflight 621f057e257fd6e099457e56
#jira UE-144367
#rb Krzysztof.Narkowicz
#lockdown Juan.Canada

#ROBOMERGE-AUTHOR: daniel.wright
#ROBOMERGE-SOURCE: CL 19219209 in //UE5/Release-5.0/... via CL 19219356
#ROBOMERGE-BOT: UE5 (Release-Engine-Staging -> Main) (v921-19075845)

[CL 19227351 by daniel wright in ue5-main branch]
2022-03-02 15:19:12 -05:00
krzysztof narkowicz
f38e756567 Lumen - generate surface cache on small elements and decrease min card world space size. No noticeable performance issues in CitySample or Reverb.
#jira none
#lockdown Juan.Canada
#rb Daniel.Wright
#preflight 62194603783beeaf8a0fc2fa

#ROBOMERGE-AUTHOR: krzysztof.narkowicz
#ROBOMERGE-SOURCE: CL 19157447 in //UE5/Release-5.0/... via CL 19159834
#ROBOMERGE-BOT: UE5 (Release-Engine-Staging -> Main) (v921-19075845)

[CL 19161485 by krzysztof narkowicz in ue5-main branch]
2022-02-25 19:47:27 -05:00
charles bloom
38b1d2e51f Mark up more ParallelFor scopes for Insights
#rb none
#preflight 6216cd82647bb7debf703367

[CL 19105606 by charles bloom in ue5-main branch]
2022-02-23 19:25:03 -05:00
charles bloom
67ef10a399 mark up most of the ParallelFors used in cook with named scopes for Insights
#rb arne.schober
#preflight none

[CL 18966875 by charles bloom in ue5-main branch]
2022-02-11 19:32:06 -05:00
fred kimberley
7fbfaf57c8 Require explicit constructors/casts when converting between FVector, FVector3d, and FVector3f.
#jira UE-122078
#rb Andrew.Davidson, Colin.McGinley
#preflight standard build

#ROBOMERGE-AUTHOR: fred.kimberley
#ROBOMERGE-SOURCE: CL 18817999 in //UE5/Release-5.0/... via CL 18818012 via CL 18822871
#ROBOMERGE-BOT: UE5 (Release-Engine-Test -> Main) (v910-18824042)

[CL 18824721 by fred kimberley in ue5-main branch]
2022-02-02 07:59:31 -05:00
andrew davidson
3debbbd465 Fix FVector2D variant casts
Submitted on behalf of fred.kimberley
#rb andy.davidson
#preflight 61f8719ea6632a34f35e654b

#ROBOMERGE-AUTHOR: andrew.davidson
#ROBOMERGE-SOURCE: CL 18801709 in //UE5/Release-5.0/... via CL 18802160 via CL 18821533
#ROBOMERGE-BOT: UE5 (Release-Engine-Test -> Main) (v908-18788545)

[CL 18821619 by andrew davidson in ue5-main branch]
2022-02-02 01:45:23 -05:00
andrew davidson
a687bd02ed Merge //UE5/Dev-LWCRendering[at]18755967
LWC: Serialize LWC double types as double. Enable double bulk serialization for all bulk-serializable-as-float LWC types.
#lockdown marc.audy
#rb marc.audy
#preflight 61f83517114ec25fe0ad5f15

#ROBOMERGE-AUTHOR: andrew.davidson
#ROBOMERGE-SOURCE: CL 18795077 in //UE5/Release-5.0/... via CL 18795472 via CL 18797572
#ROBOMERGE-BOT: UE5 (Release-Engine-Test -> Main) (v908-18788545)

[CL 18798048 by andrew davidson in ue5-main branch]
2022-01-31 16:44:37 -05:00
andrew davidson
f089ae83f4 FMatrix explicit cast fixes
#preflight 61f277cbaf74b68515c0bd64

#ROBOMERGE-AUTHOR: andrew.davidson
#ROBOMERGE-SOURCE: CL 18751911 in //UE5/Release-5.0/... via CL 18751924 via CL 18752067
#ROBOMERGE-BOT: UE5 (Release-Engine-Test -> Main) (v903-18687472)

[CL 18752076 by andrew davidson in ue5-main branch]
2022-01-27 06:25:37 -05:00
zak middleton
36c99f6887 #ue5 - LWC: FVector4f <-> FVector4d conversion is now explicit.
FLinearColor has also been modified to make any double->float conversions explicit. Previously all 3D TVector versions were allowed to be implicit and thus could convert TVector<double> => FLinearColor => TVector4<float>.

Fixed up all engine and game casts. Added "//LWC_TODO: precision loss" around any explicit casts that previously were silently explicit and we may need to revisit for precision loss analysis.

#jira UE-122085
#rb Ben.Ingram, Andrew.Davidson
#preflight 61f24af473238441cb7bb0f1

#ROBOMERGE-AUTHOR: zak.middleton
#ROBOMERGE-SOURCE: CL 18751249 in //UE5/Release-5.0/... via CL 18751253 via CL 18751319
#ROBOMERGE-BOT: UE5 (Release-Engine-Test -> Main) (v903-18687472)

[CL 18751326 by zak middleton in ue5-main branch]
2022-01-27 03:30:41 -05:00
marc audy
6553e6cd0a Remove as much C++ deprecation as possible up to 4.17 (along with a few scattered removals from beyond)
#preflight 61eefc77ba69a4fdb220bf23

#ROBOMERGE-AUTHOR: marc.audy
#ROBOMERGE-SOURCE: CL 18712765 in //UE5/Release-5.0/... via CL 18712784 via CL 18713147
#ROBOMERGE-BOT: UE5 (Release-Engine-Test -> Main) (v903-18687472)

[CL 18713191 by marc audy in ue5-main branch]
2022-01-24 15:07:48 -05:00
alexis matte
6fb8917a56 Fix a lock issue in CopyStructure, bulkdata are not playing well with thread so I prefer not using them for such small amount of editor data.
Removing them remove the following debug assert in LinkerLoad.h that happen when we copy FSkeletalMeshLODModel structure.

checkSlow(FPlatformTLS::GetCurrentThreadId() == OwnerThread);

It should also prevent a crash with file handle since we cannot lock two different bulk data in separate thread if the two bulk data are store in the same package since they will share a file handle

#jira UE-137959
#rb danny.couture
#rnx
#preflight 61d86521430de36baa5c471f

#ROBOMERGE-OWNER: alexis.matte
#ROBOMERGE-AUTHOR: alexis.matte
#ROBOMERGE-SOURCE: CL 18558758 in //UE5/Release-5.0/... via CL 18558826
#ROBOMERGE-BOT: STARSHIP (Release-Engine-Staging -> Release-Engine-Test) (v899-18417669)

[CL 18558834 by alexis matte in ue5-release-engine-test branch]
2022-01-10 08:51:57 -05:00
alexis matte
94f7c4797e [Backout] - CL18545668
[FYI] Alexis.Matte
Original CL Desc
-----------------------------------------------------------------
Fix a lock issue in CopyStructure, bulkdata are not playing well with thread so I prefer not using them for such small amount of editor data.
Removing them remove the following debug assert in LinkerLoad.h that happen when we copy FSkeletalMeshLODModel structure.

checkSlow(FPlatformTLS::GetCurrentThreadId() == OwnerThread);

It should also prevent a crash with file handle since we cannot lock two different bulk data in separate thread if the two bulk data are store in the same package since they will share a file handle

#jira UE-137959
#rb danny.couture
#rnx
#preflight 61d86521430de36baa5c471f

#ROBOMERGE-AUTHOR: alexis.matte
#ROBOMERGE-SOURCE: CL 18548323 in //UE5/Release-5.0/... via CL 18548343
#ROBOMERGE-BOT: STARSHIP (Release-Engine-Staging -> Release-Engine-Test) (v899-18417669)

[CL 18548359 by alexis matte in ue5-release-engine-test branch]
2022-01-07 13:37:19 -05:00
alexis matte
3d90733bc5 Fix a lock issue in CopyStructure, bulkdata are not playing well with thread so I prefer not using them for such small amount of editor data.
Removing them remove the following debug assert in LinkerLoad.h that happen when we copy FSkeletalMeshLODModel structure.

checkSlow(FPlatformTLS::GetCurrentThreadId() == OwnerThread);

It should also prevent a crash with file handle since we cannot lock two different bulk data in separate thread if the two bulk data are store in the same package since they will share a file handle

#jira UE-137959
#rb danny.couture
#rnx
#preflight 61d86521430de36baa5c471f

#ROBOMERGE-AUTHOR: alexis.matte
#ROBOMERGE-SOURCE: CL 18545668 in //UE5/Release-5.0/... via CL 18545691
#ROBOMERGE-BOT: STARSHIP (Release-Engine-Staging -> Release-Engine-Test) (v899-18417669)

[CL 18545711 by alexis matte in ue5-release-engine-test branch]
2022-01-07 11:33:39 -05:00
krzysztof narkowicz
bbc28ea8b9 Lumen surface cache generation changes in order to fix surface coverage issues
* First mesh is voxelized by tracing rays in every voxel
* Then voxel faces are clustered in parallel to build continuos cards. Clustering follows voxel distance, card ratio, density and other metrics
* Finally a specificied number of cards is selected per mesh (user parameter). This allows to tradeoff between coverage and runtime overhead

Other:
* Added surface cache coverage view mode for debugging coverage issues - r.Lumen.Visualize.Mode 6
* Fixed r.LumenScene.SurfaceCache.CardMinResolution to be able to go below 2

#preflight 61d478acdb0309127dfaf8ec
#rb Daniel.Wright

#ROBOMERGE-AUTHOR: krzysztof.narkowicz
#ROBOMERGE-SOURCE: CL 18519098 in //UE5/Release-5.0/... via CL 18519102
#ROBOMERGE-BOT: STARSHIP (Release-Engine-Staging -> Release-Engine-Test) (v899-18417669)

[CL 18519115 by krzysztof narkowicz in ue5-release-engine-test branch]
2022-01-05 10:30:05 -05:00
alexis matte
ac5ce98304 Fix issue with inline reduction and postload usersectiondata correction.
#jira UE-132645
#rb richard.talbotwatkin
#preflight 61bb7a96dc58e54b333fc934
#rnx

#ROBOMERGE-AUTHOR: alexis.matte
#ROBOMERGE-SOURCE: CL 18478217 via CL 18479499 via CL 18479503 via CL 18480103 via CL 18481554
#ROBOMERGE-BOT: STARSHIP (Release-Engine-Staging -> Release-Engine-Test) (v899-18417669)

[CL 18481826 by alexis matte in ue5-release-engine-test branch]
2021-12-16 19:57:37 -05:00
Marc Audy
0c3be2b6ad Merge Release-Engine-Staging to Test @ CL# 18240298
[CL 18241953 by Marc Audy in ue5-release-engine-test branch]
2021-11-18 14:37:34 -05:00
aurel cordonnier
fc542f6cfd Merge from Release-Engine-Staging @ 18081189 to Release-Engine-Test
This represents UE4/Main @18073326, Release-5.0 @18081140 and Dev-PerfTest @18045971

[CL 18081471 by aurel cordonnier in ue5-release-engine-test branch]
2021-11-07 23:43:01 -05:00
aurel cordonnier
a6e741e007 Merge from Release-Engine-Staging @ 17915896 to Release-Engine-Test
This represents UE4/Main @17911760, Release-5.0 @17915875 and Dev-PerfTest @17914035

[CL 17918595 by aurel cordonnier in ue5-release-engine-test branch]
2021-10-25 20:05:28 -04:00
krzysztof narkowicz
f0221b15cb Fixed crash (check firing) in Lumen when importing certain meshes. Check was firigin because of LWC automatic FVector type promotion to double, which caused a mismatch between float and double calculations.
#ROBOMERGE-AUTHOR: krzysztof.narkowicz
#ROBOMERGE-SOURCE: CL 17871833 in //UE5/Main/...
#ROBOMERGE-BOT: STARSHIP (Main -> Release-Engine-Test) (v883-17842818)
#ROBOMERGE[STARSHIP]: UE5-Release-Engine-Staging Release-5.0

[CL 17871864 by krzysztof narkowicz in ue5-release-engine-test branch]
2021-10-20 08:48:24 -04:00
aurel cordonnier
a12d56ff31 Merge from Release-Engine-Staging @ 17791557 to Release-Engine-Test
This represents UE4/Main @17774255, Release-5.0 @17791557 and Dev-PerfTest @17789485

[CL 17794212 by aurel cordonnier in ue5-release-engine-test branch]
2021-10-12 21:21:22 -04:00
alexis matte
87489e4552 Make sure we use FVector3f in meshutilities
#jira none
#rb richard.talbotwatkin
#rnx
#preflight 61570fad7b2a6200016d5add

#ROBOMERGE-AUTHOR: alexis.matte
#ROBOMERGE-SOURCE: CL 17691969 in //UE5/Main/...
#ROBOMERGE-BOT: STARSHIP (Main -> Release-Engine-Test) (v875-17642767)

[CL 17691990 by alexis matte in ue5-release-engine-test branch]
2021-10-01 11:01:19 -04:00
alexis matte
6865ce62e6 Remove original reduction data. Use the source data and the build instead.
#jira UE-123770
#rb richard.talbotwatkin, danny.couture
#rnx
#preflight 614a2277b4b2fb0001a3e833

#ROBOMERGE-AUTHOR: alexis.matte
#ROBOMERGE-SOURCE: CL 17587301 in //UE5/Main/...
#ROBOMERGE-BOT: STARSHIP (Main -> Release-Engine-Test) (v871-17566257)

[CL 17587359 by alexis matte in ue5-release-engine-test branch]
2021-09-21 16:06:32 -04:00
josie yang
742d1c2a03 Morph target engine modifications for 3rd party plugin
[FYI] alexis.matte, brian.white, christopher.waters, mihnea.balta, rolando.caloca, will.damon, halfdan.ingvarsson, kevin.ortegren

#ROBOMERGE-AUTHOR: josie.yang
#ROBOMERGE-SOURCE: CL 17444191 in //UE5/Main/...
#ROBOMERGE-BOT: STARSHIP (Main -> Release-Engine-Test) (v870-17433530)

[CL 17444481 by josie yang in ue5-release-engine-test branch]
2021-09-07 10:20:14 -04:00
krzysztof narkowicz
368847f1fb Lumen - fixed a bug, where incorrect card direction could be serialized causing an assert to fire at rumtime
#ROBOMERGE-SOURCE: CL 16900162 via CL 16917756
#ROBOMERGE-BOT: STARSHIP (Main -> Release-Engine-Test) (v836-16769935)

[CL 16917910 by krzysztof narkowicz in ue5-release-engine-test branch]
2021-07-21 19:12:47 -04:00
krzysztof narkowicz
b2397588bc New Lumen surface cache card generation:
* Generate surfels directly from the triangles instead of relying on ray tracing, to fix coverage issues on some meshes
* Surfels which are inside meshes (surrounded by back faces) or are too close to geometry are discarded
* New surfel clustering algorithm, which inserts one seed after another and tries to iteratively grow clusters in order to find the best set of seeds. Final step is to reset all clusters and grow all simultaneously from previously selected seeds.
* Cluster growing is based on normal, distance and surfel visibility (don�t cluster surfels near geometry first, as it can cause algorithm to be stuck in a local minimum)
* Runtime sampling has strict culling based on the angle and card AABB. Additionally, the tri-planar blending zone was tightened. This improves performance. 0.62-0.5 ms.
* Added various visualizations and CVars for card generation debugging
* Fixed card visibility bug, where card could influence outside of it�s range due to negative shadow map visibility

[FYI] Daniel.Wright, Patrick.Kelly

#ROBOMERGE-SOURCE: CL 16897632 via CL 16916104
#ROBOMERGE-BOT: STARSHIP (Main -> Release-Engine-Test) (v836-16769935)

[CL 16916378 by krzysztof narkowicz in ue5-release-engine-test branch]
2021-07-21 18:05:08 -04:00