Commit Graph

11041 Commits

Author SHA1 Message Date
sebastien lussier
9064272e2e World Partition - HLOD: Fix HLODs not showing up for maps created from the template map
* Removed the world name from cells names
* Strip the world name from AWorldPartitionHLOD::SourceCellName upon loading
#rb jeanfrancois.dube

[CL 21929825 by sebastien lussier in ue5-main branch]
2022-09-09 18:16:19 -04:00
devin doucette
a96c036ccd Fixed a missing #include in WindowsPlatformMisc.cpp
Symbols from psapi.h are needed even when FORCE_ANSI_ALLOCATOR=1.

#jira UE-163289
#preflight 631b8614ec45fbf3d783b4de
#rb none
#rnx

[CL 21927559 by devin doucette in ue5-main branch]
2022-09-09 16:34:31 -04:00
zach bethel
b1b031829f Fix for ensure when using RDG clobber resources.
#jira UE-156315
#preflight trivial

[CL 21924352 by zach bethel in ue5-main branch]
2022-09-09 13:51:29 -04:00
dmytro vovk
7c8a1a48e5 Fixed NEON version of VectorRound
#jira none
#rb Martins.Mozeiko
#preflight 631a5144354826f8b37c1ab9

[CL 21922113 by dmytro vovk in ue5-main branch]
2022-09-09 11:51:49 -04:00
david parton
6f7605482d Serialization function for TVariants and addition of TVariant unit tests
In order for a TVariant to be serializable, each type in its template parameter pack must:
    1. Have a default constructor. This is required because when reading the type from an archive, it must be default constructed before being loaded.
    2. Implement the `FArchive& operator<<(FArchive&, T&)` function. This is required to serialize the actual type that's stored in TVariant.

#preflight 631a806ea20b67673bb614ba, 631a84cfd135b61bc535bd87
#rb steve.robb
[FYI] johan.duparc

[CL 21921639 by david parton in ue5-main branch]
2022-09-09 11:35:39 -04:00
Andriy Tylychko
572e7cf810 added copy/move constructor and assignment operators for MTAccessDetector so it can be used in copyable/moveable types
#preflight 631b4db3304480f8f8acc298

[CL 21920724 by Andriy Tylychko in ue5-main branch]
2022-09-09 10:45:06 -04:00
marc audy
7a197a6e66 Fix include path
#horde 209999
[FYI] Bryan.Sefcik

[CL 21916312 by marc audy in ue5-main branch]
2022-09-09 01:57:29 -04:00
justin marcus
a3edb20a8f Add InsertPlatformFile to FPlatformFileManager to support adding an IPlatformFile after initial startup (for example, from a plugin)
[REVIEW] [at]Graeme.Thornton [at]Mitchell.Fisher [at]Daniel.Lamb

#preflight https://horde.devtools.epicgames.com/job/6319f901967ffc68fbd7a05e

[CL 21916052 by justin marcus in ue5-main branch]
2022-09-09 00:55:01 -04:00
bryan sefcik
07894f4a07 Removed redundant private include paths from build.cs files.
Fixed include paths to be relative to the private or public folders.
Hid or removed includes that reached into other private module folders.
Updated PublicInclude paths when necessary.

#jira
#preflight 631a717cec45fbf3d74d4ba7

[CL 21916033 by bryan sefcik in ue5-main branch]
2022-09-09 00:53:22 -04:00
rob krajcarski
603b260a79 Add an error the niagara hlsl translator catching cases where conflicting symbol names would be created for unique parameters
#preflight 6319fd3ff448dc6e58aae76c
#rb stu.mckenna

[CL 21910445 by rob krajcarski in ue5-main branch]
2022-09-08 21:27:48 -04:00
jeanmichel dignard
0b3a565a00 Reverted cl 21893507 to fix CIS issues: Serialization function for TVariants and addition of TVariant unit tests
#preflight 631a3a1bec45fbf3d73e6a89

[CL 21909351 by jeanmichel dignard in ue5-main branch]
2022-09-08 20:48:39 -04:00
johan duparc
9b0144e3d4 Fix Issue 209713: Static analyzer warnings in TVariantMeta.h
#rb David.Parton
#preflight none: tested locally

[CL 21908757 by johan duparc in ue5-main branch]
2022-09-08 20:28:18 -04:00
rune stubbe
0500d58507 Made imposter building optional with cvar: r.Nanite.Builder.Imposters (default off)
Better heuristics for when to use parent-relative encoding. Instead of only enabling parent-relative encoding from a certain level of the tree, it is now allowed at all levels.
To avoid excessively long dependency chains, direct encoding is forced whenever the chain becomes longer than a certain threshold.
This can be a significant (relative) win for smaller meshes that would otherwise have a large percentage of pages above the level threshold for parent-relative encoding.

#preflight 6319d80ad31788ea3a2fe2a3

#rb brian.karis
[FYI] graham.wihlidal, jamie.hayes

[CL 21908286 by rune stubbe in ue5-main branch]
2022-09-08 20:11:51 -04:00
johan duparc
ee037bc958 Serialization function for TVariants and addition of TVariant unit tests
In order for a TVariant to be serializable, each type in its template parameter pack must:
    1. Have a default constructor. This is required because when reading the type from an archive, it must be default constructed before being loaded.
    2. Implement the `FArchive& operator<<(FArchive&, T&)` function. This is required to serialize the actual type that's stored in TVariant.

author: David.Parton
#rb Steve.Robb
#preflight 6319f04f2b7fe03eb6a97ed2

[CL 21908176 by johan duparc in ue5-main branch]
2022-09-08 20:08:57 -04:00
paul chipchase
8d77e84166 Refactor the VA pushing API so that we only need to implement a single path
#rb Per.Larsson
#jira UE-163103
#rnx
#preflight 6318989c2b7fe03eb664e9f0

### VirtualizationSystem/VirtualizationManager
- Added an overload of ::Push taking just one FPUshRequest so that people don't have to keep adding MakeArrayView boiler plate when pushing a single request
- Change the order of the last two parameters for the raw ::Push call as this will group all of the payload specific parameters together and leave the target storage type at the end. It is unlikely that anyone is calling the older version but it has been deprecated for safety.

### IVirtualizationBackend
- The none FPushRequest overload of ::PushData is no longer virtual, it just converts the parameters to FPushRequest and calls that overload instead. In this way we now only have one pushing code path in our backends. We could probably look into removing this overload at this point (since the higher level IVirtualizationSystem will now convert all push requests into a FPushRequest form) but it is not considered worth it at the moment when the simple overload covers our needs.
- Removed EPushResult in favour of just returning true/false for the overall operation.If the caller needs a more detailed breakdown then they will have to use an overload that takes an FPushRequest over raw parameters.
-- At the moment FPushRequest does not contain a full breakdown of what happened, so with this submit we are effectively losing the ability to find out if the payload was already in the backends or not, however the batch version of push was already not returning this info so it is not a big loss. Fixing FPushRequest to return a better break down of what happened will be done in UE-160942
- Removed the none batch Push paths from the source control and ddc backends as they already supported batch pushing.
- File backend needed to be converted to supporting batch pushing, which is pretty much the same code as before except we need to iterate over the container of FPushRequests.
-- The backend does not early out on error as it tends to be quite fast. We might want to consider an official policy for the VA system, if we should early out of errors or not.

[CL 21907558 by paul chipchase in ue5-main branch]
2022-09-08 19:35:36 -04:00
Brandon Schaefer
8c481a0e46 Fix using FPaths::DirectoryExists in crash handling code as it depends on a global which may be dead at time of crash/assert
Also move to less allocations, and a static buffer. We still use TCHAR_TO_UTF8 allocations but will look at fixing up later

#jira UE-163043
#rb James.Singer, Zack.Neyland
#fyi Chris.Constantinescu
#preflight 631a0ee8d31788ea3a46f4cc

[CL 21898347 by Brandon Schaefer in ue5-main branch]
2022-09-08 14:11:11 -04:00
Zak Middleton
ac2cb421f4 #ue5 - Fix type truncation warnings in misc Engine files.
#jira UE-160823
#rb Andrew.Davidson
#preflight 630e8c6fe54ec9d58193596f

[CL 21897606 by Zak Middleton in ue5-main branch]
2022-09-08 13:39:02 -04:00
Josh Adams
5b2f23198f - Allow staging/packaging of programs (requires the program have a basic .uproject, see the new SlateUGS.uproject)
- Added code to patch paths for handling Programs having source in /Engine/Source/Programs/XYZ, their config fies, etc in /Engine/Programs/XYZ, and staging using /XYZ
- Mac can now apply -specifiedarchitecture to UAT builds of programs
- Added support to SlateUGS to load Pak files (programs have to opt-in to it in their main Build.cs)
#rb brandon.schaefer,david.harvey
#preflight 631a03202b7fe03eb6b0f16a

[CL 21894674 by Josh Adams in ue5-main branch]
2022-09-08 11:22:00 -04:00
Andriy Tylychko
92e81df015 config-related delegates made thread-safe as they are accessed concurrently during async config loading
#rb josh.adams
#preflight 6319e52aa20b67673b86cc9d

[CL 21892479 by Andriy Tylychko in ue5-main branch]
2022-09-08 09:07:01 -04:00
Andriy Tylychko
e45bb1e84a fixed MTAccessDetector usage in TScriptDelegate
#preflight 6319d313ec45fbf3d727bfdd

[CL 21891706 by Andriy Tylychko in ue5-main branch]
2022-09-08 07:49:25 -04:00
charles lefebvre
f172283f6d TOptional<TNonNullPtr>: Add support for NullOpt
#rb andy.sonnenburg

[CL 21891346 by charles lefebvre in ue5-main branch]
2022-09-08 07:10:30 -04:00
Michael Forot
780a0a5251 Fix hair instabilities
#rb charles.derousiers
#jira MH-7117, MH-7116, UE-161538
#preflight 6318abdb980179553e7558e3

[CL 21889938 by Michael Forot in ue5-main branch]
2022-09-08 06:11:57 -04:00
Devin Doucette
2d6866d2ec DDC: Set UnsafeTypeCastWarningLevel to Error
#preflight 631907e2a20b67673b513de6
#rb Zousar.Shaker
#rnx

[CL 21871353 by Devin Doucette in ue5-main branch]
2022-09-07 22:45:29 -04:00
rob krajcarski
185c871694 Couple of fixes for attribute trimming with niagara particle scripts
-parameters to an impure function that were using the StackContext namespace weren't being properly included in the dependency chain
-custom HLSL nodes which internally used impure DI functions wouldn't necessarily have their inputs marked as dependents (in the case where a dummy output variable was being used, which itself got trimmed)
#jira UE-151858, FORT-490351
#rb stu.mckenna
#preflight 6318a478f448dc6e585c21d9

[CL 21864850 by rob krajcarski in ue5-main branch]
2022-09-07 18:10:24 -04:00
rune stubbe
bd86bf40d8 Fix for potential DDC corruption issue where meshes with NaniteEnabled set generate incorrect normals/tangets in projects that have Nanite disabled.
Tangent generation now also respects the Nanite project setting, not just the per-mesh setting.
#lockdown marc.audy

[CL 21862271 by rune stubbe in ue5-main branch]
2022-09-07 17:01:12 -04:00