Commit Graph

346 Commits

Author SHA1 Message Date
jonathan bard
08586534f9 Made ULandscapeInfo members properly set outside of editor and for PIE worlds
#tests UEENGQA-71560
#jira UE-149384
#preflight 62a3a1c1945c4467b54e93a0
#rb aurel.cordonnier
#lockdown

#ROBOMERGE-OWNER: jonathan.bard
#ROBOMERGE-AUTHOR: jonathan.bard
#ROBOMERGE-SOURCE: CL 20675719 in //UE5/Release-5.0/... via CL 20680564
#ROBOMERGE-BOT: UE5 (Release-Engine-Staging -> Main) (v955-20579017)

[CL 20681013 by jonathan bard in ue5-main branch]
2022-06-16 01:02:57 -04:00
Patrick Enfedaque
e20019f09a Check for !IsRunningCookCommandlet() and use ForEachIntersectingActorDesc
#jira UE-156645
#rb jeanfrancois.dube
#preflight 62a9c9122a1103ff5fb7888e
#rnx

[CL 20668263 by Patrick Enfedaque in ue5-main branch]
2022-06-15 08:07:56 -04:00
Matt Peters
7957668383 Landscape: Fix missing nullcheck for WorldPartition.
#fyi JeanFrancois.Dube, Patrick.Enfedaque
#rb None, Trivial
#rnx
#preflight None, Trivial

[CL 20662752 by Matt Peters in ue5-main branch]
2022-06-14 20:58:57 -04:00
JeanFrancois Dube
eb2667b085 Fix crash when cooking maps with Landscape.
#jira UE-156645
#rb none
#fyi patrick.enfedaque
#preflight none
#rnx

[CL 20659565 by JeanFrancois Dube in ue5-main branch]
2022-06-14 18:33:30 -04:00
Patrick Enfedaque
f5545aa360 New "AffectsLandscape" ActorDesc property: Implemented for Water, PatchComponent and LandscapeSplineActor
- Deprecated LandscapeSplineActorDesc as it is no longer needed with this property

#jira none
#rb jeanfrancois.dube, richard.malo
#preflight 62a8c041a43e20b293533548

[CL 20654038 by Patrick Enfedaque in ue5-main branch]
2022-06-14 14:28:12 -04:00
jonathan bard
daaed042d6 * Fixed data caching function used in Smooth and flatten tool when using combined layers
* Added visual logs for when the cache data is accessed and when the cache is expanded
* These operations being expensive, align the cache area on whole landscape to avoid expanding the cache when expanding the cached area within the limits of an already sampled landscape component

#rb semion.piskarev
#jira UE-154066
#robomerge FNMain
#preflight 62a72c642a70e8deaccf5516

[CL 20625549 by jonathan bard in ue5-main branch]
2022-06-13 08:33:43 -04:00
graham wihlidal
10f753fd63 Refactored Landscape Nanite rebuilds to (by default) only occur during saving, cooking, or explicitly clicking the "Rebuild Data" button on the top level Landscape actor. This makes the sculpting/editing tools usable without massive rebuild hitches. By default now, any edits will invalidate Nanite and fall back to regular landscape rendering until the representation is updated again. This is a hopefully short term approach until we have proper asynchronous builds happening without user involvement. Live rebuilds (with hitching) can be re-enabled now with the landscape.LiveRebuildNaniteOnModification cvar.
[FYI] jonathan.bard, ola.olsson, brian.karis
#preflight 629eae3958032863432ffeba

#ROBOMERGE-AUTHOR: graham.wihlidal
#ROBOMERGE-SOURCE: CL 20581139 via CL 20581834 via CL 20582434
#ROBOMERGE-BOT: UE5 (Release-Engine-Staging -> Main) (v955-20579017)

[CL 20585495 by graham wihlidal in ue5-main branch]
2022-06-09 17:58:16 -04:00
Andrew Davidson
8d844cd4a6 Improve support for an extended WORLD_MAX
#rb various, trivial
#preflight 62a1cb46f73a01bd981b9978

[CL 20573655 by Andrew Davidson in ue5-main branch]
2022-06-09 07:03:13 -04:00
graham wihlidal
c8e45f52de Fixed Landscape Nanite not working properly in cooked builds (SetNaniteActive would never fire), and also added code to keep lighting and shadowing properties on the Nanite representation in sync with the Landscape proxy (like casting shadows).
#rb jonathan.bard
[FYI] ola.olsson
#preflight 62a10aea3f1e313c6ad86d70

#ROBOMERGE-AUTHOR: graham.wihlidal
#ROBOMERGE-SOURCE: CL 20563818 via CL 20563863 via CL 20563894
#ROBOMERGE-BOT: UE5 (Release-Engine-Staging -> Main) (v954-20466795)

[CL 20567286 by graham wihlidal in ue5-main branch]
2022-06-08 19:06:03 -04:00
dmitriy dyomin
178c58b146 VK: Added a workaround for AFBC to reduce uncompressed textures memory requirements
Changed how we apply compression for mobile landscape weightmap textures, so it works with mesh and heightmap based landscape
#rb jack.porter

#ROBOMERGE-OWNER: dmitriy.dyomin
#ROBOMERGE-AUTHOR: dmitriy.dyomin
#ROBOMERGE-SOURCE: CL 20556429 via CL 20556450 via CL 20556605 via CL 20556618
#ROBOMERGE-BOT: UE5 (Release-Engine-Staging -> Main) (v954-20466795)

[CL 20559686 by dmitriy dyomin in ue5-main branch]
2022-06-08 13:25:01 -04:00
jonathan bard
7fab0a0a4d Landscape fixes :
* Fixed ASan issue with dirty data (weightmap/heightmap texture resolving debugging code) by removing usage of lambda in favor of direct call to the dirty function
* Fixed redundant ifdefs and invalid comments
* Removed overallocation of material instances array (was previously done to account for hardware tessellation which doesn't exist anymore)
* Renamed FLandscapeEditLayerReadbackResult to FLandscapeEditLayerComponentReadbackResult to better match what it actually is and changed the output type of readback results from ResolveLayersTexture from a map to an array, because a map was overkill and it allows to batch-handle readbacks in UpdateForChangedWeightmaps / UpdateForChangedHeightmaps

#rb luc.eygasier
#jira UE-155857
#preflight 629f721485333f26644f8c2b

[CL 20553846 by jonathan bard in ue5-main branch]
2022-06-08 05:53:34 -04:00
graham wihlidal
ca70de9156 Work in progress Nanite support for landscape
#preflight 6297a7f3a660a44a23c0c879
#rb jonathan.bard
[FYI] brian.karis, ola.olsson, michal.valient, rune.stubbe

#ROBOMERGE-AUTHOR: graham.wihlidal
#ROBOMERGE-SOURCE: CL 20490481 via CL 20490493 via CL 20490509
#ROBOMERGE-BOT: UE5 (Release-Engine-Staging -> Main) (v954-20466795)

[CL 20495473 by graham wihlidal in ue5-main branch]
2022-06-03 19:13:16 -04:00
luc eygasier
31bba2a82d Fixes include warning
#preflight none
#rb trivial
#jira UE-155142

#ROBOMERGE-AUTHOR: luc.eygasier
#ROBOMERGE-SOURCE: CL 20395885 via CL 20395901 via CL 20395913 via CL 20395933
#ROBOMERGE-BOT: UE5 (Release-Engine-Staging -> Main) (v949-20362246)

[CL 20398763 by luc eygasier in ue5-main branch]
2022-05-27 16:51:38 -04:00
luc eygasier
a4580ce238 Adds default layer info object setting. Allowing to automatically create Layer Info by cloning the default object when creating a new landscape:
* Unifies the different places creating a Layer Info Object or accessing "sharedassets".
* Fixes UEFN not able to access created LayerInfo objects in the ContentBrowser
* Adds the ability to create Landscape Layer Info Object as a regular asset (ie: without the landscape editor). Needed for example to create a Default LandscapeLayerInfoObject

#preflight 628ff637911f194ea743c6f3
#rb Jonathan.Bard

#ROBOMERGE-AUTHOR: luc.eygasier
#ROBOMERGE-SOURCE: CL 20395352 via CL 20395370 via CL 20395392 via CL 20395403
#ROBOMERGE-BOT: UE5 (Release-Engine-Staging -> Main) (v949-20362246)

[CL 20398733 by luc eygasier in ue5-main branch]
2022-05-27 16:50:43 -04:00
patrick enfedaque
94c6af5840 New Landscapes will always have GridSize in their name
#rb richard.malo, jeanfrancois.dube
#preflight 628e3510eb57f851e2271607

#ROBOMERGE-AUTHOR: patrick.enfedaque
#ROBOMERGE-SOURCE: CL 20364116 via CL 20364141 via CL 20364179
#ROBOMERGE-BOT: UE5 (Release-Engine-Staging -> Main) (v949-20362246)

[CL 20366287 by patrick enfedaque in ue5-main branch]
2022-05-25 12:09:23 -04:00
patrick enfedaque
6e14bf225a Landscape:
- Allow changing bIsSpatiallyLoaded flag on ALandscapeStreamingProxy and ALandscapeSplineActor
- New flag in ALandscape used to set the bIsSpatiallyloaded flags on newly created AlandscapeStreamingProxy and ALandscapeSplineActor (bAreNewLandscapeActorsSpatiallyLoaded)

#rb richard.malo, jeanfrancois.dube
#preflight 628d1404b378b39d419041cf

#ROBOMERGE-AUTHOR: patrick.enfedaque
#ROBOMERGE-SOURCE: CL 20351658 via CL 20351677 via CL 20351695
#ROBOMERGE-BOT: UE5 (Release-Engine-Staging -> Main) (v948-20297126)

[CL 20353647 by patrick enfedaque in ue5-main branch]
2022-05-24 15:21:03 -04:00
dmitriy dyomin
35dc9373cd Fixed: Water surfaces are not aligned between seams across the map on Android
Use Landscape LOD1 for water texture capture. Inline bottom 5 LOD for landscape mesh, similar to texture based landscape which always has 64x64 mip available

#ROBOMERGE-AUTHOR: dmitriy.dyomin
#ROBOMERGE-SOURCE: CL 20339695 via CL 20339785 via CL 20339815 via CL 20340013 via CL 20340045
#ROBOMERGE-BOT: UE5 (Release-Engine-Staging -> Main) (v948-20297126)

[CL 20341634 by dmitriy dyomin in ue5-main branch]
2022-05-23 19:36:03 -04:00
zach bethel
c176b233da Renamed CopyTextureWithTransitions to TransitionAndCopyTexture.
#preflight 6287ddfe8828ea88c8701eea

[CL 20303093 by zach bethel in ue5-main branch]
2022-05-20 17:14:41 -04:00
luc eygasier
8f5e6ffb66 Adds Landscape resolution restriction when in Restricted Mode (example: UEFN), preventing to create landscape if the wanted resolution exceed currently supported safe limits.
Applied to:
* New Landscapes, new imported landscape
* Import Landscape tool
* Add component tool

#jira UE-149015
#preflight 627e98d97c26e247735ca7d1
#rb Michael.Balzer, Jonathan.Bard

#ROBOMERGE-AUTHOR: luc.eygasier
#ROBOMERGE-SOURCE: CL 20187875 via CL 20189504 via CL 20189506 via CL 20189507
#ROBOMERGE-BOT: UE5 (Release-Engine-Staging -> Main) (v943-19904690)

[CL 20191648 by luc eygasier in ue5-main branch]
2022-05-13 18:58:05 -04:00
zach bethel
2156756315 Replaced use of CopyToResolveTarget with CopyTexture.
#preflight 627a90ff7e5f24d1edd73422
#rb luke.thatcher, jason.hoerner

[CL 20127337 by zach bethel in ue5-main branch]
2022-05-10 14:47:34 -04:00
Jason Nadro
fc3dcee397 Restore backed out CL, with fixes.
Also restores follow-up CLs 19973746, 19973782
FStaticParameterSet::MaterialLayers can't be deprecated, since a property with the same name is included via FStaticParameterSetRuntimeData
So instead, FMaterialLayersFunctionsRuntimeData is updated with SerializeFromMismatchedTag, to allow serializing a full FMaterialLayersFunction.
When this happens, the EditorOnly portion is stored in a separate heap allocation, and then transferred to FStaticParameterSet::EditorOnly::MaterialLayers
#preflight 626c3405e31dbb512cef1e98

[Backout] - CL19973745
#fyi bob.tellez
Original CL Desc
-----------------------------------------------------------------
[Backout] - CL19964485
#fyi Ben.Ingram
Original CL Desc
-----------------------------------------------------------------
Add 'Optional' EditorOnly data for UMaterialInterface and UMaterialFunctionInterface
These are separate UObject hierarchies that store editor-only UPROPERTIES, but can be included with cooked content, which allows full editor support.
In principle, all editor-only properties could be moved over.  So far, this has been limited to UMaterialExpressions, and data related to material parameters.
FStaticParameterSet, FMaterialLayersParameters, and FMaterialCachedExpressionData have all been split into separate editor-only/non-editor-only classes,
which allows the editor-only portion to be stored on the optional editor-only UObject.
#preflight 626ab21dad56c0cbbea32dc4
#rb jason.nadro, francis.hurteau
#jira FORT-463329

[CL 20043286 by Jason Nadro in ue5-main branch]
2022-05-04 12:21:52 -04:00
bob tellez
34d8d5badd [Backout] - CL19964485
#fyi Ben.Ingram
Original CL Desc
-----------------------------------------------------------------
Add 'Optional' EditorOnly data for UMaterialInterface and UMaterialFunctionInterface
These are separate UObject hierarchies that store editor-only UPROPERTIES, but can be included with cooked content, which allows full editor support.
In principle, all editor-only properties could be moved over.  So far, this has been limited to UMaterialExpressions, and data related to material parameters.
FStaticParameterSet, FMaterialLayersParameters, and FMaterialCachedExpressionData have all been split into separate editor-only/non-editor-only classes,
which allows the editor-only portion to be stored on the optional editor-only UObject.
#preflight 626ab21dad56c0cbbea32dc4
#rb jason.nadro, francis.hurteau
#jira FORT-463329

[CL 19973745 by bob tellez in ue5-main branch]
2022-04-28 20:08:12 -04:00
Ben Ingram
448b0a9807 Add 'Optional' EditorOnly data for UMaterialInterface and UMaterialFunctionInterface
These are separate UObject hierarchies that store editor-only UPROPERTIES, but can be included with cooked content, which allows full editor support.
In principle, all editor-only properties could be moved over.  So far, this has been limited to UMaterialExpressions, and data related to material parameters.
FStaticParameterSet, FMaterialLayersParameters, and FMaterialCachedExpressionData have all been split into separate editor-only/non-editor-only classes,
which allows the editor-only portion to be stored on the optional editor-only UObject.
#preflight 626ab21dad56c0cbbea32dc4
#rb jason.nadro, francis.hurteau
#jira FORT-463329

[CL 19964485 by Ben Ingram in ue5-main branch]
2022-04-28 12:56:28 -04:00
Julien StJean
175d5f6ab4 Adding elements support for the marquee selection.
Added a new registry to let the objects provide how their elements should be selected when doing a selection by a volume such as a box or a frustum.
Added a some editor only functions for the marquee selection into the world interface.

#jira UETOOL-4797
#rb Brooke.Hubert
#preflight 624cb2dca64871f1a113bf2a

[CL 19727315 by Julien StJean in ue5-main branch]
2022-04-12 15:52:44 -04:00
jonathan bard
0660f91839 Added BP setters for ForcedLOD and LODBias on landscape components. SetLOD can now be called both at runtime and edit-time.
#rb luc.eygasier
[FYI] cody.haskell

#ROBOMERGE-AUTHOR: jonathan.bard
#ROBOMERGE-SOURCE: CL 19720596 via CL 19720629 via CL 19720639 via CL 19720646
#ROBOMERGE-BOT: UE5 (Release-Engine-Staging -> Main) (v938-19570697)

[CL 19721952 by jonathan bard in ue5-main branch]
2022-04-12 11:31:39 -04:00