Commit Graph

185 Commits

Author SHA1 Message Date
Stu McKenna
7f92ea8185 - Fix for broken Grid 3D Functions
#rb rob.krajcarski
#jira none
#rnx
#preflight 629556e1fb0fca7e58224594

[CL 20438069 by Stu McKenna in ue5-main branch]
2022-05-31 11:59:51 -04:00
Rune Stubbe
1539f7895a Improved Nanite partitioning heuristics to produce fewer multi-material clusters
Locality links are now only added between elements with the same material
#rb brian.karis
#preflight 6290cee5dd2be751aeda4a71

[CL 20392408 by Rune Stubbe in ue5-main branch]
2022-05-27 09:30:52 -04:00
Stu McKenna
6a5eb11e9b - Add back in packing to external cbuffer as some platforms don't adhere to the same rules
#rb shaun.kime, rob.krajcarski
#jira none
#rnx
#preflight 628facc974630984fd42ea93

[CL 20380888 by Stu McKenna in ue5-main branch]
2022-05-26 12:51:40 -04:00
Stu McKenna
9513a1a072 - Move constant buffers into loose parameters, with the exception of the external cbuffer
- Parameter binding is now enabled when possible, i.e. no legacy data interfaces / external cbuffer / view uniform buffer

#rb rob.krajcarski
#jira UE-151234
#preflight 62844015f669ec5902688727

[CL 20266965 by Stu McKenna in ue5-main branch]
2022-05-18 15:48:43 -04:00
andrew firth
039c3a9f96 [Niagara] - nudge the DDC version for niagara scripts until Stu can dig into the core issue
[REVIEW] [at]stu.mcKenna
#rb stu.mcKenna

#ROBOMERGE-AUTHOR: andrew.firth
#ROBOMERGE-SOURCE: CL 20172592 via CL 20172652 via CL 20172687
#ROBOMERGE-BOT: UE5 (Release-Engine-Staging -> Main) (v943-19904690)

[CL 20173563 by andrew firth in ue5-main branch]
2022-05-12 18:54:27 -04:00
robert millar
949ed7ba3a Insert dummy values into memory images for names like vtable pointers.
#rb ben.ingram

#ROBOMERGE-AUTHOR: robert.millar
#ROBOMERGE-SOURCE: CL 20115901 via CL 20115948 via CL 20115961 via CL 20115990
#ROBOMERGE-BOT: UE5 (Release-Engine-Staging -> Main) (v943-19904690)

[CL 20117747 by robert millar in ue5-main branch]
2022-05-09 23:27:24 -04:00
Stu McKenna
222e2fc9bd - Convert Spline DI to Shader Parameters
- Object Reader conversion to use shader structures
- Neighbor Grid 3D conversion to use shader structures

#rb michael.galetzka
#jira none
#preflight 6275a329f77c9c2b5440dfc9

[CL 20115249 by Stu McKenna in ue5-main branch]
2022-05-09 20:49:45 -04:00
Stu McKenna
015b56fd32 - Convert MeshRendererInfo DI to Shader Parameters
- Convert VectorField DI to Shader Parameters
- Convert CurlNoise DI to Shader Parameters
- Convert Camera DI to Shader Parameters
- Convert Occlusion DI to Shader Parameters

#rb simon.tovey, rob.krajcarski
#jira none
#preflight 627468a3f9623aee676a827b

[CL 20077368 by Stu McKenna in ue5-main branch]
2022-05-06 11:57:30 -04:00
Stu McKenna
04d91075ba - Convert Grid2D data interface to use template & parameter structure binding
- Convert Grid3D data interface to use template & parameter structure binding
- Convert all RW data interface to use correct formatting for shader parameters

#rb rob.krajcarski
#jira none
#preflight 6274132b683f48589329ef96

[CL 20062008 by Stu McKenna in ue5-main branch]
2022-05-05 14:29:40 -04:00
Johan Torp
c33a0ca780 Fix FName debug visualizers on certain clang platforms where the 19725380 fix didn't work
#rb rob.millar,brandon.schaefer
#preflight ok

[CL 20055361 by Johan Torp in ue5-main branch]
2022-05-05 03:18:14 -04:00
Stu McKenna
c7f658da96 - Fix for inconsistent string sanitization between GPU data interface HLSL symbol and function generation
#rb rob.krajcarski
#jira UE-151073, UE-151043
#rnx
#preflight 6272bf2d365de864c49f121c

[CL 20047546 by Stu McKenna in ue5-main branch]
2022-05-04 15:55:43 -04:00
Stu McKenna
8b7b008c01 - Bump version to flush out compile errors
#rb trivial
#jira none
#rnx
#preflight 6271c71019620bf660e53f88

[CL 20035917 by Stu McKenna in ue5-main branch]
2022-05-03 20:40:52 -04:00
Stu McKenna
509ed6fe21 - Remove loose parameter bindings from main Niagara parameters
- Data Interface should now opt into the new binding path by setting UseLegacyShaderBindings to false
- BuildShaderParameters / SetShaderParameters replaces BindParameters / SetParameters / UnsetParameters
- CreateShaderStorage / GetShaderStorageType replaces CreateComputeParameters / GetComputeParametersTypeDesc.
- Shader storage should no longer be required for the majority of cases, only those which require data based on bound functions will need additional data, everything else should be statically set.

#rb michael.galetzka
#jira none
#preflight 627061b1220f89f0ad5aff22

[CL 20027313 by Stu McKenna in ue5-main branch]
2022-05-03 12:27:50 -04:00
rob krajcarski
7a09b57154 Fix for niagara component renderer bound attributes getting trimmed
#rb michael.galetzka
#preflight 62704d8e592316675c272b41

#ROBOMERGE-AUTHOR: rob.krajcarski
#ROBOMERGE-SOURCE: CL 20018498 via CL 20018528 via CL 20018546
#ROBOMERGE-BOT: UE5 (Release-Engine-Staging -> Main) (v943-19904690)

[CL 20019490 by rob krajcarski in ue5-main branch]
2022-05-02 21:59:35 -04:00
Johan Torp
ef8e0c4660 Optimize WITH_CASE_PRESERVING_NAME FName loading
LoadDisplayNames() 1.06s -> 0.24s when async loading the name batch in CachedAssetRegistry.bin during editor startup of an internal project

* Introduce FDisplayNameEntryId to avoid cache misses in FName::GetComparisonIdFromDisplayId() lookups
* Force name batch serialization to use display entry ids to help enforce cooking determinism
* Fix determinism problem when loading then saving via FPackageStoreNameMapBuilder
* Inline FNameEntryId::FromUnstableInt()
* Remove slow IsNumbered() check in CreateFromDisplayId when not using 4B FName
* Remove expensive heap sort by sorting up front instead

#rb rob.millar,matt.peters,pj.kack
#preflight 62664bd06968f18d5137d419

[CL 19899104 by Johan Torp in ue5-main branch]
2022-04-25 03:48:33 -04:00
rob krajcarski
45e3a5b018 Resubmit of 19841660 for nicholas.goldstein: Do not error if visiting "known constant" attribute parameter that has type mismatch.
This could occur when evaluating Particles.Position of type Vec3 in graph but the "known constant" is of type Position.

#rb michael.galetzka

#ROBOMERGE-AUTHOR: rob.krajcarski
#ROBOMERGE-SOURCE: CL 19844078 via CL 19859393 via CL 19859444
#ROBOMERGE-BOT: UE5 (Release-Engine-Staging -> Main) (v940-19807014)

[CL 19869417 by rob krajcarski in ue5-main branch]
2022-04-22 14:58:55 -04:00
Rune Stubbe
bcb274c90e Got rid of VectorReciprocalSqrtAccurate in the Nanite builder to get consistent results between Intel and AMD
Converted SIMD calculations from double back to float
#rb brian.karis
#preflight 625f5478dd47b4ad214ff78b

[CL 19824539 by Rune Stubbe in ue5-main branch]
2022-04-19 21:16:13 -04:00
Mateo Egey
821cfa4525 [Backout] - CL19666768
#fyi Mateo.Egey
Original CL Desc
-----------------------------------------------------------------
Added fallback to match pins via name if no pin could be found via persistent guid

#jira UE-148261
#rb frank.fella
#preflight skip

[CL 19667431 by Mateo Egey in ue5-main branch]
2022-04-07 08:50:44 -04:00
Mateo Egey
f812030464 Added fallback to match pins via name if no pin could be found via persistent guid
#jira UE-148261
#rb frank.fella
#preflight skip

[CL 19666768 by Mateo Egey in ue5-main branch]
2022-04-07 07:07:17 -04:00
rob krajcarski
0c3c5c5870 Incorporate type into ordering of the attributes to work around an issue where we can have multiple attributes with the same name, but compatible types (float vs position)
#preflight 624dc0e0a64871f1a1230017
#rb michael.galetzka

#ROBOMERGE-AUTHOR: rob.krajcarski
#ROBOMERGE-SOURCE: CL 19652761 via CL 19652919 via CL 19652964
#ROBOMERGE-BOT: UE5 (Release-Engine-Staging -> Main) (v938-19570697)

[CL 19657533 by rob krajcarski in ue5-main branch]
2022-04-06 18:23:27 -04:00
Shaun Kime
ee8cee14c6 Static variables were depending on pin persistent guids for caching. This is insufficient as some pins are zeroed out for persistent guids. Picking the pin offset and parent guid in that case.
#jira UE-146192
#rb michael.galetzka
#preflight 624da0f6712e7c09a6b20117

[CL 19647274 by Shaun Kime in ue5-main branch]
2022-04-06 10:25:03 -04:00
shawn mcgrath
a5a3936e40 VectorVM: allow dead random instruction to be removed.
Turned new VM back on and bumped the Niagara_LatestScriptCompileVersion.  #JIRA UE-147838 #preflight 624c47478e5ae00f0ab7e7f4 #rb rob.krajcarski

[CL 19627043 by shawn mcgrath in ue5-main branch]
2022-04-05 12:28:07 -04:00
cesar castro
a15d1515a4 Motion Matching - Moved Pose Search Database Search Index to the DDC using lower level DDC api
#rb aaron.cox
#preflight 6245d735292f228e09048ff1

[CL 19574506 by cesar castro in ue5-main branch]
2022-03-31 12:48:04 -04:00
shawn mcgrath
b03432bbb0 New VectorVM optimizer fixes. Fixes some invalid instruction removal bugs as well as incorrect SSA calculation on re-ordered instructions. Also fixed potential external function register alignment bugs. Turned new VectorVM back on by default and bumped the Niagara script compiled version. #preflight 62438337c51908059aa24096 #rb rob.krajcarski
[CL 19551771 by shawn mcgrath in ue5-main branch]
2022-03-29 20:09:16 -04:00
rob krajcarski
b281028c38 Additional support for new experimental VM
-moves optimization pass to the async compilation pipeline (including moving it to it's own file, out of NiagaraSystem)
-splits up the NIAGARA_VM_EXP preprocessor define into VECTORVM_SUPPORTS_LEGACY & VECTORVM_SUPPORTS_EXPERIMENTAL allowing support of one, the other or both (the default)
#rb shawn.mcgrath
#jira none
#preflight 623c85cd1302f69e9aa0b1d7

[CL 19496739 by rob krajcarski in ue5-main branch]
2022-03-24 11:52:03 -04:00