Commit Graph

26 Commits

Author SHA1 Message Date
robert manuszewski
f8a812a32f Converting hardcoded short class/enum names to pathnames ahead of ANY_PACKAGE removal
#rb trivial
#jira UE-99463
#preflight 6288fd998828ea88c8aef3d0

#ROBOMERGE-OWNER: robert.manuszewski
#ROBOMERGE-AUTHOR: robert.manuszewski
#ROBOMERGE-SOURCE: CL 20314896 via CL 20314897 via CL 20314903 via CL 20314904
#ROBOMERGE-BOT: UE5 (Release-Engine-Staging -> Main) (v948-20297126)

[CL 20315214 by robert manuszewski in ue5-main branch]
2022-05-22 10:30:02 -04:00
lucas dower
3ab4f1d404 Organise anim assets into subcategories and add or fix tooltips
#jira UE-139412
#rb thomas.sarkanen
#preflight 627d322462656a7b7e31a679

[CL 20179330 by lucas dower in ue5-main branch]
2022-05-13 07:12:03 -04:00
Jeremy Moore
e8920ab8c0 ComputeFramework: Add the concept of bindings to the UComputeGraph. Now each graph declares some bindings, and maps those to its data interfaces 1->N.
Optimus: Fix up data interfaces for new binding pardigm. Deformer creates one mesh component binding for all its data interfaces. This can be modified later to register mutliple bindings.
#preflight 627ad0571e749933433ceebe
#fyi halfdan.ingvarsson

[CL 20129715 by Jeremy Moore in ue5-main branch]
2022-05-10 17:14:13 -04:00
Stu McKenna
f707c92be7 - Move ShaderParameterMetadataBuilder into RenderCore
#rb zach.bethel, jeremy.moore
#jira none
#rnx
#preflight 626ad0f4a5009ff191bb6bf6

[CL 19969680 by Stu McKenna in ue5-main branch]
2022-04-28 17:33:51 -04:00
christopher waters
911b63dfe8 Fixing nonunity build errors.
#jira none
#rb halfdan.ingvarsson
#preflight 625641403e1d412540e86ea6

[CL 19734298 by christopher waters in ue5-main branch]
2022-04-12 23:45:57 -04:00
Jeremy Moore
2854971af3 ComputeFramework: Move all graph render data into render proxy. Ownership is now nice and explicit.
Made data interface parameter naming more flexible so that things look cleaner in RenderDoc.
This change meant that we need to track name string allocations correctly. Added an allocation container for this and also use it for shader param metadata nested structs which were leaking before.
#preflight 6254a7125906374e73e9d698
#rnx

[CL 19712875 by Jeremy Moore in ue5-main branch]
2022-04-11 18:20:51 -04:00
Jeremy Moore
ab938b0316 ComputeFramework: Marshal usful names to profiling tags.
#rnx
#preflight 62506bf00b762eb51e4ee79a

[CL 19690102 by Jeremy Moore in ue5-main branch]
2022-04-08 13:12:10 -04:00
Jeremy Moore
5ff8e31534 ComputeFramework: Add support for data provider contribution to shader hash. Will now trigger recompilation if data provider source or dependencies change.
#preflight 624f700170773560e4f41e59

[CL 19681395 by Jeremy Moore in ue5-main branch]
2022-04-07 19:25:21 -04:00
Jeremy Moore
640f086689 ComputeFramework: Fix non-deterministic DDC key for shader. Was causing slow start up time due to shader recompilation.
#preflight 624dc739a64871f1a1231b7b

[CL 19650554 by Jeremy Moore in ue5-main branch]
2022-04-06 13:22:45 -04:00
Jeremy Moore
70fc9f26d5 ComputeFramework: Add API for FShaderFunctionDefinition that makes it declaration of functions in data interfaces clearer and more concise.
Optimus: Tidy up data interface function definitions.
#rnx
#preflight 624b0125f4217035fab5eeb8

[CL 19608988 by Jeremy Moore in ue5-main branch]
2022-04-04 10:45:23 -04:00
Jeremy Moore
8c6f7f5d42 ComputeFramework: Replaced ThreadCount with GroupSize to support full 3D dispatch.
Added concept of execution data interface which can provide the invocation count and full 3D thread count per invocation.
Each kernel requires one and only one execution data interface.
Optimus: Implemented SkinnedMesh execution data interface which can dispatch per vertex or per triangle according to settings. Will next add some simple maths on that to allow n threads per vert or n verts per thread etc.
#fyi halfdan.ingvarsson
#preflight 6244e92a3a5a4c1622c831a7

[CL 19567014 by Jeremy Moore in ue5-main branch]
2022-03-30 20:19:38 -04:00
halfdan ingvarsson
e7c8563911 Optimus: Add support for resource nodes to provide transient data interfaces.
#jira UE-125022
#preflight 621733e4335015645d9036bb
#fyi jeremy.moore

[CL 19110874 by halfdan ingvarsson in ue5-main branch]
2022-02-24 03:07:06 -05:00
Jeremy Moore
8715d50590 ComputeFramework: Associate shadermaps with assets to enable shader loading priority support.
#rnx
#preflight 62163c93104496cff8910b4a

[CL 19090113 by Jeremy Moore in ue5-main branch]
2022-02-23 08:58:36 -05:00
Jeremy Moore
265d94a623 Optimus: Add a graph data interface that marshals the variables and constants for the graph.
Add variables on the graph instance so taht they can be set per instance from blueprint.
Push graph constant changes directly to data provider for visual update without graph compilation.
#fyi halfdan.ingvarsson
#rnx
#preflight 62163a54c152c67496d4888a

[CL 19090009 by Jeremy Moore in ue5-main branch]
2022-02-23 08:48:41 -05:00
Jeremy Moore
a4fbc47427 ComputeFramework: Fix ref count race condition.
#rnx
#preflight 621638e4104496cff88fb5fa

[CL 19089942 by Jeremy Moore in ue5-main branch]
2022-02-23 08:42:51 -05:00
Jeremy Moore
5c2bc8c5b2 Move ShaderMetaDataBuilder code into ComputeFramework which is the only place using it.
Preliminary to adding better support for nested structs.
#rnx
#preflight 62155451dc0170cfb36dfc69

[CL 19081188 by Jeremy Moore in ue5-main branch]
2022-02-22 16:34:35 -05:00
Jeremy Moore
708d2cf122 ComputeFramework: Reduce allocations in FComputeGraphTaskWorker. Changes API for FComputeDataProviderRenderProxy so that it can be called once for all sub invocations.
Optimus: Implementation of full permutations for bones/morph targets/cloth.
#preflight 620d7a7c7948a1e5e4c18936
#fyi halfdan.ingvarsson

[CL 19024868 by Jeremy Moore in ue5-main branch]
2022-02-16 17:43:20 -05:00
Jeremy Moore
ddc3242992 #jira UE-125023
ComputeFramework: First pass for kernel permutation support.
Multiple shaders built and correct permutation selected.
Optimus: implementation of some basic permutations. But still needs to select permutation based on skinned mesh setup.
#preflight 620c3fe587771cd5d8efabb4

[CL 19008314 by Jeremy Moore in ue5-main branch]
2022-02-15 20:05:47 -05:00
Arciel Rekman
3bd3e1e4c3 Fix overflow in frozen memory pointers (UE-138667).
#jira UE-138667
[REVIEW] [at]Ben.Ingram, [at]Jason.Nadro
#preflight 61fc91ee51378325c31b073d
#lockdown Cristina.Riveron

#ROBOMERGE-OWNER: Arciel.Rekman
#ROBOMERGE-AUTHOR: arciel.rekman
#ROBOMERGE-SOURCE: CL 18860341 in //UE5/Release-5.0/... via CL 18860350 via CL 18860416
#ROBOMERGE-BOT: UE5 (Release-Engine-Test -> Main) (v910-18824042)
#ROBOMERGE-CONFLICT from-shelf

[CL 18860648 by Arciel Rekman in ue5-main branch]
2022-02-04 00:27:13 -05:00
halfdan ingvarsson
b73e7f3d87 Optimus: Add support for more shader parameter types.
#jira none
[FYI] jeremy.moore
#preflight 61f8d4cb80608c7029ab89b1
#rnx

#ROBOMERGE-AUTHOR: halfdan.ingvarsson
#ROBOMERGE-SOURCE: CL 18805871 in //UE5/Release-5.0/... via CL 18807993 via CL 18821773
#ROBOMERGE-BOT: UE5 (Release-Engine-Test -> Main) (v908-18788545)

[CL 18822134 by halfdan ingvarsson in ue5-main branch]
2022-02-02 02:20:23 -05:00
aurel cordonnier
416e5b1905 No unity fixes
#rnx

#ROBOMERGE-AUTHOR: aurel.cordonnier
#ROBOMERGE-SOURCE: CL 18726589 via CL 18726605 via CL 18726622 via CL 18727515 via CL 18727652
#ROBOMERGE-BOT: UE5 (Release-Engine-Test -> Main) (v903-18687472)

[CL 18727672 by aurel cordonnier in ue5-main branch]
2022-01-25 15:46:37 -05:00
jeremy moore
90f509d1d3 Optimus: Add an enable/disable scalability CVar.
#preflight 61eac3dfc12be595d17a071e

#ROBOMERGE-AUTHOR: jeremy.moore
#ROBOMERGE-SOURCE: CL 18689215 in //UE5/Release-5.0/... via CL 18689237 via CL 18689270
#ROBOMERGE-BOT: UE5 (Release-Engine-Test -> Main) (v903-18687472)

[CL 18689354 by jeremy moore in ue5-main branch]
2022-01-21 10:04:34 -05:00
jeremy moore
b13fd32b40 #jira UE-125021
ComputeFramework: Refactor ComputeGraphComponent to separate out logic for other components that may want to queue work
Optimus: Implement UMeshDeformer interface to allow directly applying deformer graphs to skinned mesh.
This temporarily adds an indirection asset to point at a OptimusDeformer asset when binding to a skinned mesh.
Soon the functionality will be combined, so that the indirection asset will no longer be needed.
Implement SkinnedMeshWrite data interface to support deformers that don't use skin cache.
Removed SkinCacheWrite data interface.
Removed ComputeGraphComponent Broker.
MLDeformer: Use UOptimusMeshDeformer interface to apply deformers in edit view.
#prefilght 61b173025c61dba07b0dd491
[FYI] halfdan.ingvarsson
[FYI] john.vanderburg

#ROBOMERGE-AUTHOR: jeremy.moore
#ROBOMERGE-SOURCE: CL 18419060 in //UE5/Release-5.0/... via CL 18419073
#ROBOMERGE-BOT: STARSHIP (Release-Engine-Staging -> Release-Engine-Test) (v897-18405271)

[CL 18419083 by jeremy moore in ue5-release-engine-test branch]
2021-12-09 10:07:40 -05:00
mark lintott
e6d8c5d578 Non-Unity fixes
#rb none
#jira none
#preflight 61a63350d87e4a573f61e32a

#ROBOMERGE-AUTHOR: mark.lintott
#ROBOMERGE-SOURCE: CL 18324393 in //UE5/Release-5.0/... via CL 18324399
#ROBOMERGE-BOT: STARSHIP (Release-Engine-Staging -> Release-Engine-Test) (v895-18170469)

[CL 18324405 by mark lintott in ue5-release-engine-test branch]
2021-11-30 09:39:27 -05:00
jeremy moore
81f7f45322 Add missing include.
#preflight 61a5118ac3287aab2778c7ce

#ROBOMERGE-AUTHOR: jeremy.moore
#ROBOMERGE-SOURCE: CL 18312943 in //UE5/Release-5.0/... via CL 18313263
#ROBOMERGE-BOT: STARSHIP (Release-Engine-Staging -> Release-Engine-Test) (v895-18170469)

[CL 18313539 by jeremy moore in ue5-release-engine-test branch]
2021-11-29 14:10:44 -05:00