Commit Graph

157 Commits

Author SHA1 Message Date
zach bethel
29f735f4a3 Modified scene proxy GetDynamicMeshElements calls to take a local command list instead of relying on the immediate command list and defer uniform expression cache invalidations.
- Calls to FRHICommandListImmediate::Get() replaced with Collector.GetRHICommandList()

#jira UE-194426

[CL 27813729 by zach bethel in ue5-main branch]
2023-09-12 18:32:22 -04:00
tiago costa
bdd2a715c3 Refactor RayTracingGeometry initalization in a few proxies to not modify FRayTracingGeometry::Initializer directly.
- some foundation work towards making FRayTracingGeometry::Initializer private.

#rb aleksander.netzel

[CL 27688695 by tiago costa in ue5-main branch]
2023-09-07 17:03:52 -04:00
bryan sefcik
64f140d78d Added shader.build.cs file.
Updated build.cs files to use new shader module.

#jira
#rb Joe.Kirchoff and guillaume.abadie

[CL 26664107 by bryan sefcik in ue5-main branch]
2023-07-27 22:53:25 -04:00
zach bethel
aa1b0c680f Deprecated non-command list RHI methods.
- RHICreate{Vertex, Index, Structured}Buffer
 - RHICreate{ShaderResource, UnorderedAccess}View
 - RHIUpdateUniformBuffer
 - Various initialization / locking methods for helper buffer types in RHIUtilities.h

The goal is to continue to force resource creation through command lists to avoid surprises with moving things off the render thread.

#rb christopher.waters

[CL 26183242 by zach bethel in ue5-main branch]
2023-06-22 11:08:27 -04:00
zach bethel
a9a5fa39db Deprecated non-command list variant of InitResource and UpdateResource. Patched the engine to pass command lists through. Follow-up CL's will refactor individual locations to thread command lists through the various callstacks, but that was done very judiciously in this CL to reduce risk.
#rb mihnea.balta, christopher.waters

[CL 25953623 by zach bethel in ue5-main branch]
2023-06-13 11:46:40 -04:00
Ryan Kautzman
4dc1f0ace9 Add command for creating selections of tetrahedra. Current supported critera includes by volume less than threshold, by aspect ratio greater than threshold, and by X/Y/Z coordinate less than or greater than some specified number. Command also supports authoring a TSet of tetrahedra on the Flesh component to skip during rendering.
#rb: Brice.Criswell
#fyi: Brice.Criswell, Yushan.Han, Yizhou.Chen
#preflight: 6414ebed691c5ebc15c21f91

[CL 24700316 by Ryan Kautzman in ue5-main branch]
2023-03-17 20:07:01 -04:00
henrik karlsson
3c9aacb1ad [Engine/Plugins]
* Updated public headers for ~170 engine plugins using iwyu to remove includes not needed. Removed includes are still available behind UE_ENABLE_INCLUDE_ORDER_DEPRECATED_IN_5_2

#preflight 63c08f4a2a6acaf1622bcc73
#rb none

[CL 23674775 by henrik karlsson in ue5-main branch]
2023-01-13 01:54:01 -05:00
henrik karlsson
68e1306935 [Engine/Plugins]
* Removed more includes using iwyu and marked up includes that is removed because of bugs in iwyu.

#preflight 63bfc8696c4f5668eb3a3cbd
#rb none

[CL 23666746 by henrik karlsson in ue5-main branch]
2023-01-12 13:53:03 -05:00
henrik karlsson
2f78497e67 [Engine/Plugins]
* Updated private files with IWYU for all plugins which had 3 or less changes made in ue5 main since last integration to fn

#preflight 63bf8d8b577437afe607dc72
#rb none

[CL 23659643 by henrik karlsson in ue5-main branch]
2023-01-12 01:48:34 -05:00
christopher waters
8fd10b0e13 Dependency cleanup around some Rendering headers.
#preflight 63b893e547321b9d895924b0

[CL 23605570 by christopher waters in ue5-main branch]
2023-01-06 18:57:09 -05:00
christopher waters
f8abec7a8e Material header dependency cleanup
- Removing MaterialAttributeDefinitionMap and MaterialRenderProxy from MaterialShared.h
- Removing MaterialShared from Material.h

#preflight 639cbb35776b61ba3b82f03e

[CL 23541603 by christopher waters in ue5-main branch]
2022-12-16 16:24:02 -05:00
christopher waters
7215f7d4ec Fully moving MaterialDomain to its own header.
#jira none
#preflight 639b4dc335203bc7aa695078

[CL 23531533 by christopher waters in ue5-main branch]
2022-12-15 16:01:51 -05:00
tiantian xie
70c2dba8c0 Move RayTracingInstance.h and RayTracingInstance.cpp from Engine module the Renderer module.
* Remove the need to call BuildInstanceMaskAndFlags(), BuildRayTracingInstanceMaskAndFlags() manually in GetXXRayTracingInstance(). They will be called in the renderer module. All functions manually called has been removed.
* Remove the RENDER_API public api for those functions, as they cause link error in the Engine module (where the header is included in the Engine build file for static library link. the RENDERER_API is interpreted as dllimport, which will not link the functions in RayTracingInstance.cpp) and there is no need to call them outside of renderer module.
* A callback function is added to FRayTracingInstance, use it for RaytracingInstanceMaskandFlags caching.

Note: this is a first step to separate the instance mask between RayTracing and PathTracing, where PathTracing uses a totally different instance mask. This cleanup is un-avoidable if we want to keep rendering related code in the renderer module.

#rb Yuriy.ODonnell
#jira UE-172742
#preflight 6399002f2960b732202acc7c

[CL 23514248 by tiantian xie in ue5-main branch]
2022-12-14 13:16:33 -05:00
scott nelson
b2c1e9ff53 Fix issue where Static Mesh's created via animation tool defaulted to Game/Meshes when that may not be a valid folder
#rb Rex.Hill
#preflight 638e8e15255f07df8eb53dbb

[CL 23421931 by scott nelson in ue5-main branch]
2022-12-06 19:50:06 -05:00
Jeremy Moore
a7bbd9125a #jira UE-167164
Make ProceduralComponent honor the bReceivesDecals setting.
#preflight 638128b4170bc34a93c76a01

[CL 23268899 by Jeremy Moore in ue5-main branch]
2022-11-25 15:57:27 -05:00
Robb Surridge
610c467639 Update vendor links for built-in plugins to use secure protocol.
#jira UE-166823
#rb lauren.barnes
#preflight 6352b20b7261e565c476ec3b

[CL 22690089 by Robb Surridge in ue5-main branch]
2022-10-21 11:04:07 -04:00
jimmy andrews
025a94b641 Allow caller to choose whether to perform sRGB conversion for ProceduralMeshComponent's CreateMeshSection and UpdateMeshSection functions.
To keep current results unchanged, set the default behavior for the two functions to be different (Create doesn't convert, Update does)

#rb rinat.abdrashitov
#preflight 6334a2e4f418a1071a2efa56
#jira UE-157225

[CL 22264087 by jimmy andrews in ue5-main branch]
2022-09-30 01:37:22 -04:00
bryan sefcik
50d4fac9e0 Updated ../Engine/Plugins/... to inline gen.cpp files
Before:
3548 unity files
Total CPU Time: 47343.578125 s
Total time in Parallel executor: 494.60 seconds

After:
3445 unity files
Total CPU Time: 46044.671875 s
Total time in Parallel executor: 468.51 seconds

#jira
#preflight 63336159b20e73a098b7f24f

[CL 22218213 by bryan sefcik in ue5-main branch]
2022-09-28 01:06:15 -04:00
Martin Sevigny
e97ebcffd6 Fix formatting of string literals that could crash the engine.
#rb Sebastian.Thomeczek
#preflight none
#jira none

[CL 21486663 by Martin Sevigny in ue5-main branch]
2022-08-22 13:31:54 -04:00
ben zeigler
2b1d13c755 Move some gameplay plugins with blueprint hooks to initialize in PreDefault so they are ready for early blueprint loads
#jira UE-158125
#preflight 62d095a6e468fcfd0b3e4817
#rb david.garza

[CL 21100869 by ben zeigler in ue5-main branch]
2022-07-14 18:47:13 -04:00
Jeremy Moore
ff967b1163 Remove PRIMITIVE_SCENE_DATA_FLAG_DRAWS_VELOCITY and only use PRIMITIVE_SCENE_DATA_FLAG_OUTPUT_VELOCITY.
Tidy up use of FPrimitiveSceneProxy velocity getters.
Now DrawsVelocity() is only for velocity relevance.
And HasDynamicTransform() is for determining if we need to store previous transform state.
VSM caching was using PRIMITIVE_SCENE_DATA_FLAG_DRAWS_VELOCITY so replaced that with PRIMITIVE_SCENE_DATA_FLAG_SHOULD_CACHE_SHADOW which should use the old behavior and can be tweaked in future using ShouldCacheShadow().

A common pattern for determining whether to output velocity now is to check if a previous transform exists, and to OR in AlwaysHasVelocity().
I found some proxy types that don't check for previous transform.
Also I found that the debug physics aggregate types *never* check for previous transform.
These are pre-existing potential bugs for fixing in another pass.

Also I found some proxies that don't currently fill out velocity relevance.
These are pre-existing potential bugs for fixing in another pass.

#preflight 62863f789016c6dd897f1cd2
#fyi andrew.lauritzen

[CL 20279797 by Jeremy Moore in ue5-main branch]
2022-05-19 10:08:15 -04:00
Matt Peters
d64cf41728 AssetRegistry includes (Engine Plugins): change #include "AssetData.h" -> #include "AssetRegistry/AssetData.h", and similar for the other moved AssetRegistry headers.
#rb Zousar.Shaker
#rnx
#preflight 6270563191629533ec2b6f6e

[CL 20017756 by Matt Peters in ue5-main branch]
2022-05-02 18:59:38 -04:00
danny couture
6c39082623 Add support for bodysetup trimesh estimates for all implementation of IInterface_CollisionDataProvider
#rnx
#rb Francis.Hurteau
#preflight 6262f0e0cf17922036d8c942

[CL 19876901 by danny couture in ue5-main branch]
2022-04-22 19:20:37 -04: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
60a1fa84a7 Fix FVector2D variant casts - Plugins
Submitted on behalf of fred.kimberley
#rb andy.davidson
#preflight 61f86c4ca6632a34f35dfbca

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

[CL 18810177 by andrew davidson in ue5-main branch]
2022-02-01 12:08:54 -05:00