Commit Graph

16 Commits

Author SHA1 Message Date
Sebastien Lussier
9e487bd467 Support batching components using HLODBatchingPolicy == EHLODBatchingPolicy::Instancing as instanced in the MeshApproximate & MeshSimplify HLOD builders
#rb luc.eygasier
#robomerge private-frosty

[CL 16737956 by Sebastien Lussier in ue5-main branch]
2021-06-21 22:05:11 -04:00
jeanfrancois dube
24bcbde312 Make sure instancing HLOD layer groups components by their RayTracingGroupId field to make sure that information is still available to Lumen.
#rb sebastien.lussier
[FYI] krzysztof narkowicz


#ROBOMERGE-SOURCE: CL 16718111
#ROBOMERGE-BOT: (v835-16672529)

[CL 16718115 by jeanfrancois dube in ue5-main branch]
2021-06-18 08:52:58 -04:00
richard malo
e1a41e2271 Bumped HLOD BaseKey for HLOD Actor to be resaved with texture streaming build data.
#rb sebastien.lussier


#ROBOMERGE-SOURCE: CL 16707138
#ROBOMERGE-BOT: (v835-16672529)

[CL 16707163 by richard malo in ue5-main branch]
2021-06-17 13:57:55 -04:00
sebastien lussier
37d0702096 World Partition HLOD Builder - Only wait for async compilation if necessary
#rb jeanfrancois.dube


#ROBOMERGE-SOURCE: CL 16661403
#ROBOMERGE-BOT: (v834-16658389)

[CL 16661417 by sebastien lussier in ue5-main branch]
2021-06-14 14:15:42 -04:00
sebastien lussier
00f3eac321 World Partition HLODs - Promotion changes
* An HLOD actor can use the "Location" grid placement if all it's source are using this placement option.
* Properly accessing grid placement of source actors using the actor desc view
#rb jeanfrancois.dube


#ROBOMERGE-SOURCE: CL 16646225
#ROBOMERGE-BOT: (v833-16641396)

[CL 16646238 by sebastien lussier in ue5-main branch]
2021-06-11 16:04:51 -04:00
sebastien lussier
d76f7fa374 World Partition HLODs - Added automatic texture size selection based on hints
Supports either:
* From texel density
* From expected mesh screen size
* From expected mesh draw distance

Compute best texture size, taking UV map waste into account.
Currently only supported by the Approximate Actors merge method, to be integrated in the ProxyLOD later.
#rb ryan.schmidt, luc.eygasier


#ROBOMERGE-SOURCE: CL 16635038
#ROBOMERGE-BOT: (v831-16623017)

[CL 16635077 by sebastien lussier in ue5-main branch]
2021-06-10 21:49:51 -04:00
sebastien lussier
3b94495593 World Partition HLODs - Rely on FISMComponentDescriptor to perform batching for Instanced HLODs
#rb richard.malo, jeanfrancois.dube, patrick.enfedaque


#ROBOMERGE-SOURCE: CL 16603616
#ROBOMERGE-BOT: (v828-16531559)

[CL 16605096 by sebastien lussier in ue5-main branch]
2021-06-09 10:39:48 -04:00
sebastien lussier
4c88fc99af Approximate Actors HLOD
* Moved duplicated code that was constructing a IGeometryProcessing_ApproximateActors::FOptions from a FMeshApproximationSettings to FApproximateActorsImpl::ConstructOptions()
* Added mesh generation options
** bAllowDistanceField - on by default
** bSupportRayTracing - on by default
** bGenerateLightmapUVs - off by default

* Disable creation of physics body for HLOD

* Scale texture size based on grid promotion (higher z grid index -> higher area covered) - Only temporary, will probably switch to a texel density option instead

#rb ryan.schmidt, jeanfrancois.dube, luc.eygasier

#ROBOMERGE-SOURCE: CL 16538607 in //UE5/Private-Frosty/...
#ROBOMERGE-BOT: STARSHIP (Private-Frosty -> Main) (v828-16531559)

[CL 16538620 by sebastien lussier in ue5-main branch]
2021-06-02 16:08:31 -04:00
sebastien lussier
86bb362ad2 World Partition HLOD - Add support for nanite meshes & generating virtual textures to the Actors Approximation merge method
* Use the global engine DefaultHLODFlattenMaterial, which expects virtual textures
* Propagate newly added mesh merge options to the IGeometryProcessing_ApproximateActors::FOptions struct
* Added "EmissiveHDRTexture" texture nodes and "UseEmissiveHDR" options to both FlattenMaterial & FlattenMaterial_VT - will be used by the Actor Approx. HLODs
#rb jeanfrancois.dube, ryan.schmidt

#ROBOMERGE-SOURCE: CL 16505841 in //UE5/Private-Frosty/...
#ROBOMERGE-BOT: STARSHIP (Private-Frosty -> Main) (v826-16501804)

[CL 16505847 by sebastien lussier in ue5-main branch]
2021-05-29 21:45:35 -04:00
sebastien lussier
783b045f6f Copy PerInstanceData when creating instanced HLODs
#rb luc.eygasier
#preflight 60afb2473dce58000186efe1

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

[CL 16486301 by sebastien lussier in ue5-main branch]
2021-05-27 11:57:35 -04:00
sebastien lussier
81d6ae77dc Make sure all assets compilation have completed before building an HLOD
#rb patrick.enfedaque

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

[CL 16484321 by sebastien lussier in ue5-main branch]
2021-05-27 10:31:47 -04:00
julien lheureux
0aa52f6cc0 Fixed ISM component AddInstances call that were incorrectly replaced in CL 16329274.
#rb jamie.dale
#rnx

#ROBOMERGE-SOURCE: CL 16417474 in //UE5/Private-Frosty/...
#ROBOMERGE-BOT: STARSHIP (Private-Frosty -> Main) (v811-16416015)

[CL 16417695 by julien lheureux in ue5-main branch]
2021-05-21 09:34:00 -04:00
Jamie Dale
ec9161823d Cleaned-up redundant include of UInstancedStaticMeshComponent
This was being included in a header that is included throughout the engine, resulting in any changes to UInstancedStaticMeshComponent triggering an extensive build (2,500-3,000 actions).
After this change it only triggers a build of ~140 actions (EngineTest).

Code that was relying on this implicit include has been updated to include the header if required.

#fyi Ryan.Schmidt
#preflight 60a298adfe43a700014dd14b

[CL 16359882 by Jamie Dale in ue5-main branch]
2021-05-17 17:49:46 -04:00
Jamie Dale
ed869fce3c Deprecated AddInstanceWorldSpace in favor of AddInstance or AddInstances with bWorldSpace set to true
#preflight 609da75922cce00001b3c1b3, 609dc020423c960001c81e10
#fyi Brooke.Hubert

[CL 16329274 by Jamie Dale in ue5-main branch]
2021-05-14 10:07:23 -04:00
Sebastien Lussier
fec9e8df17 WorldPartition HLOD - First pass at hooking MeshApproximation merge method to HLODs
#rb patrick.enfedaque

[CL 16254621 by Sebastien Lussier in ue5-main branch]
2021-05-10 16:13:14 -04:00
Sebastien Lussier
df9948004e Moved WP HLOD Builder to it's own module, WorldPartitionHLODUtilities
Necessary to avoid dragging more geometry tools directly in the Engine module when the new Mesh Approximation merge method will be integrated to HLOD
#rb jeanfrancois.dube

[CL 16207912 by Sebastien Lussier in ue5-main branch]
2021-05-05 11:27:05 -04:00