Commit Graph

155 Commits

Author SHA1 Message Date
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
andrew davidson
57beb335f2 Merging //UE5/Dev-LargeWorldCoordinates [at] 17581892 to //UE5/Main
#ROBOMERGE-AUTHOR: andrew.davidson
#ROBOMERGE-SOURCE: CL 17595295 in //UE5/Main/...
#ROBOMERGE-BOT: STARSHIP (Main -> Release-Engine-Test) (v871-17566257)

[CL 17595306 by andrew davidson in ue5-release-engine-test branch]
2021-09-22 10:01:48 -04:00
ben ingram
d4e0953afb Refactor/cleanup surrounding material parameters.
Primary goal is to reduce amount of code duplicated across different parameter types, and reduce amount of boilerplate required to add new parameters
The main part are new types FMaterialParameterValue, and FMaterialParameterMetadata (both in MaterialTypes.h).  FMaterialParameterValue is a tagged union/variant type, that can represent any material parameter value.  FMaterialParameterMetadata contains a value, along with various editor-only fields that describe how that value is used.
Using this new type, many places that previously included separate APIs for each parameter type collapse to a single API that operates on a FMaterialParameterValue/FMaterialParameterMetadata.  Code that previously had a block copy/pasted for each parameter type can be replaced with a loop that iterates over all parameter types.
Also includes some API cleanup that should improve (editor) performance.  Previously we had APIs GetAllScalarParameters, GetAllVectorParameters, etc, which would return a list of FMaterialParameterInfos for each parameter of the given type.  Code would often query all parameters, then loop over the results and lookup each parameter value.  Now there's a new API, GetAllParametersOfType, which returns a list of all FMaterialParameterMetadata of a given type.  It's easy to just collect the values at the time we're building the list of parameters, so this saves the work of looking up each value individually.
#jira none
#rb lauren.barnes
[FYI] zousar.shaker

#ROBOMERGE-SOURCE: CL 17360722 in //UE5/Main/...
#ROBOMERGE-BOT: STARSHIP (Main -> Release-Engine-Test) (v865-17346139)

[CL 17360730 by ben ingram in ue5-release-engine-test branch]
2021-08-30 18:53:14 -04:00
ray tran
ff37e88a07 This CL adds "bVisibleInRayTracing" flag to skeletal mesh sections and exposes it in the editor - fixes UE-105223 and partially addresses MH-4066
#jira UE-105223, MH-4066
#rb Juan.Canada, Josie.Yang, Alexis.Matte
[FYI] jarl.ostensen, per.karefelt, James.Golding

#ROBOMERGE-SOURCE: CL 17233677 in //UE5/Main/...
#ROBOMERGE-BOT: STARSHIP (Main -> Release-Engine-Test) (v855-17104924)

[CL 17233682 by ray tran in ue5-release-engine-test branch]
2021-08-19 10:09:40 -04:00
andriy tylychko
6bf3101dcd deprecated FTicker and family and replaced by thread-safe FTSTicker
#jira UE-120090
#rb francis.hurteau


#ROBOMERGE-SOURCE: CL 17176325 in //UE5/Main/...
#ROBOMERGE-BOT: STARSHIP (Main -> Release-Engine-Test) (v855-17104924)

[CL 17176374 by andriy tylychko in ue5-release-engine-test branch]
2021-08-16 11:09:22 -04:00
dmytro vovk
fe6369b9ca Fixed SSE Math double precision issues
#jira none
#rb Zak.Middleton

#ROBOMERGE-SOURCE: CL 17033934 in //UE5/Main/...
#ROBOMERGE-BOT: STARSHIP (Main -> Release-Engine-Test) (v846-17029325)

[CL 17035634 by dmytro vovk in ue5-release-engine-test branch]
2021-08-03 14:44:57 -04:00
aurel cordonnier
dc4bf61540 Merge from Release-Engine-Staging @ 17030559 to Release-Engine-Test
This represents UE4/Main @ 17030256 and Dev-PerfTest @ 17030553

[CL 17031509 by aurel cordonnier in ue5-release-engine-test branch]
2021-08-03 11:56:47 -04:00
sebastien lussier
1ca8052222 Allow the use of alternate names for flattening material params
#jira UE-115794
#rb patrick.enfedaque

#ROBOMERGE-SOURCE: CL 16888386 in //UE5/Main/...
#ROBOMERGE-BOT: STARSHIP (Main -> Release-Engine-Test) (v836-16769935)

[CL 16888405 by sebastien lussier in ue5-release-engine-test branch]
2021-07-19 16:26:07 -04:00
sebastien lussier
3299f86f25 #jira UE-115630
Fixed static analysis warning
#rb patrick.enfedaque

#ROBOMERGE-SOURCE: CL 16841160 in //UE5/Main/...
#ROBOMERGE-BOT: STARSHIP (Main -> Release-Engine-Test) (v836-16769935)

[CL 16841178 by sebastien lussier in ue5-release-engine-test branch]
2021-07-13 15:26:20 -04:00
jamie dale
3271de479f Ensure that the ISMC created from Merge Actors is transactional and supports per-instance editing
#rb Sebastien.Lussier, Ryan.Schmidt

#ROBOMERGE-SOURCE: CL 16704233 in //UE5/Main/...
#ROBOMERGE-BOT: STARSHIP (Main -> Release-Engine-Test) (v835-16672529)

[CL 16704237 by jamie dale in ue5-release-engine-test branch]
2021-06-17 10:03:24 -04:00
sebastien lussier
c61ff6edd8 Added HLODBatchingPolicy (enum) member to UPrimitiveComponent
* Replaces the confusing bUseMaxLODAsImposter & bBatchImpostersAsInstances
* Modified ALODActor::IsBuilt() to avoid pulling on editoronly data
#rb luc.eygasier

#ROBOMERGE-SOURCE: CL 16699482 via CL 16699489
#ROBOMERGE-BOT: STARSHIP (Main -> Release-Engine-Test) (v835-16672529)

[CL 16699499 by sebastien lussier in ue5-release-engine-test branch]
2021-06-16 20:50:26 -04:00
sebastien lussier
d651c15e87 FMeshMergeHelpers::ExportStaticMeshLOD() - Added missing Register() call
* Fixes a crash accessing some of the attributes later on
#rb luc.eygasier

#ROBOMERGE-SOURCE: CL 16699479 via CL 16699480
#ROBOMERGE-BOT: STARSHIP (Main -> Release-Engine-Test) (v835-16672529)

[CL 16699484 by sebastien lussier in ue5-release-engine-test branch]
2021-06-16 20:49:27 -04:00
sebastien lussier
412cf1d7a1 MaterialBaking - Use correct linear bake for all texture property by default
Providing a new flatten material with the correct texture samplers.
Retrieve texture properties from the default textures in the material (linear vs srgb, compression, vt enabled, lod group...)

Previously generated material instances are unchanged.
All MergeActor engine tests pass successfully.

#rb patrick.enfedaque

#ROBOMERGE-SOURCE: CL 16484038 in //UE5/Private-Frosty/...
#ROBOMERGE-BOT: STARSHIP (Private-Frosty -> Main) (v823-16466674)

[CL 16484318 by sebastien lussier in ue5-main branch]
2021-05-27 10:31:36 -04:00
sebastien lussier
66d4dbf5e7 WorldPartition - Non-unity build fixes
#rb trivial

#ROBOMERGE-OWNER: sebastien.lussier
#ROBOMERGE-AUTHOR: sebastien.lussier
#ROBOMERGE-SOURCE: CL 16413559 in //UE5/Private-Frosty/...
#ROBOMERGE-BOT: STARSHIP (Private-Frosty -> Main) (v804-16311228)
#ROBOMERGE-CONFLICT from-shelf

[CL 16413689 by sebastien lussier in ue5-main branch]
2021-05-20 21:08:55 -04:00
aurel cordonnier
4c1f424cec no unity fixes
#rb jeanfrancois.dube

[CL 16389788 by aurel cordonnier in ue5-main branch]
2021-05-19 14:05:12 -04:00
Andrew Davidson
3ddc3a4da3 Merge up from //UE5/Dev-LargeWorldCoordinates
#rb none

[CL 16211417 by Andrew Davidson in ue5-main branch]
2021-05-05 15:07:25 -04:00
Sebastien Lussier
4ab1a29beb Added Nanite Proxy Percent option to MeshMergeSettings / MeshProxySettings
#rb patrick.enfedaque

[CL 16202021 by Sebastien Lussier in ue5-main branch]
2021-05-04 21:13:05 -04:00
Sebastien Lussier
e8c74f62ab #jira UE-114024
Fixed test failure - ActorMerging_SingleLODMaterialBaking

Corrected bad conversion from EMaterialProperty to EFlattenMaterialProperties using array indexing... now using a map.
Fixed slight delta in ground truth images as the floor pattern moved a bit (irrelevant to the actor merging test)
#rb patrick.enfedaque

[CL 16184268 by Sebastien Lussier in ue5-main branch]
2021-05-03 11:09:54 -04:00
Rune Stubbe
9dbd92093b New Nanite vertex quantization code that replaces the cluster-relative coordinates with quantization to an absolute po2-sized grid centered around the mesh center.
The scheme solves issues where meshes would no longer align properly after converting them to Nanite. It also solves the precision issues in clusters with triangles of non-uniform size.
By default the precision is heuristically selected by Nanite, but the user also has the ability to override with an explicit precision to solve issues or optimize for disk size.
Clusters store the coordinate components using the minimal number of bits required to span the range of values in the cluster.
Apart from fixing issues, the default quality seems no worse than before and is typically ~5-10% smaller than before.

Added Position Precision to the top left of Mesh viewer along with the other mesh stats.
Added Position Precision dropdown to Nanite import settings.
Added debug mode "r.nanite.visualize PositionBits" that shows the vertex position bit sizes for clusters.
New quantization code now updates float positions and cluster bounds to reflect the quantized coordinates.

#rb brian.karis, graham.wihlidal
#JIRA UE-102722
#preflight 607d56774df3b60001ef477c

[CL 16049335 by Rune Stubbe in ue5-main branch]
2021-04-19 06:58:00 -04:00
christopher waters
688c029803 Tessellation Removal: Removing Tessellation specific material parameters.
#jira UE-94564
#rb ben.ingram, sebastien.hillaire, arciel.rekman, jason.nadro
#preflight 6078b15161a9060001161a4c

[CL 16034000 by christopher waters in ue5-main branch]
2021-04-16 10:46:28 -04:00
sebastien lussier
25be01902a Avoid renderdata of HLOD being recomputed during cook package save because of non-deterministic guid
- Preserve guid during save if static mesh bulkdata content hasn't changed to avoid triggering unnecessary rebuilds
  - Make sure the next HLOD generation is going to use the HashAsGuid feature to avoid recompiling staticmesh that are generated if they are exactly the same as before

  - 31m10s to 14m15s to cook P_Construct_WP with a warmed-up DDC

#rb Matt.Peters, Sebastien.Lussier, Yuriy.ODonnell, Danny.Couture

#ushell-cherrypick of 15755322 by danny.couture
#lockdown simon.tourangeau

#ROBOMERGE-SOURCE: CL 15965125 in //UE5/Release-5.0-EarlyAccess/...
#ROBOMERGE-BOT: STARSHIP (Release-5.0-EarlyAccess -> Main) (v787-15839533)

[CL 15981275 by sebastien lussier in ue5-main branch]
2021-04-12 15:18:55 -04:00
sebastien lussier
4fca75067f Allow the creation of virtual textures when baking HLODs
* Specifying a flatten material that use VT samplers will automatically create textures of the correct type
* Moved default flatten material to config
* Default is now to use VT for HLOD
#rb jeremy.moore
#jira none
#lockdown simon.tourangeau

#ROBOMERGE-SOURCE: CL 15947766 in //UE5/Release-5.0-EarlyAccess/...
#ROBOMERGE-BOT: STARSHIP (Release-5.0-EarlyAccess -> Main) (v787-15839533)

[CL 15950281 by sebastien lussier in ue5-main branch]
2021-04-07 22:20:44 -04:00
sebastien lussier
8bc113f6ba ProxyLOD - Added support for providing instances transforms rather than having to build a gigantic FMeshDescription that include all instances
#rb jeanfrancois.dube

#ROBOMERGE-SOURCE: CL 15875370 in //UE5/Release-5.0-EarlyAccess/...
#ROBOMERGE-BOT: STARSHIP (Release-5.0-EarlyAccess -> Main) (v786-15839533)

[CL 15875374 by sebastien lussier in ue5-main branch]
2021-03-31 10:52:22 -04:00
danny couture
95600e2d31 Avoid renderdata of HLOD being recomputed during cook package save because of non-deterministic guid
- Preserve guid during save if static mesh bulkdata content hasn't changed to avoid triggering unnecessary rebuilds
  - Make sure the next HLOD generation is going to use the HashAsGuid feature to avoid recompiling staticmesh that are generated if they are exactly the same as before

  - 31m10s to 14m15s to cook P_Construct_WP with a warmed-up DDC

#fyi Richard.TalbotWatkin
#rb Matt.Peters, Sebastien.Lussier, Yuriy.ODonnell

[CL 15755322 by danny couture in ue5-main branch]
2021-03-20 20:01:33 -04:00