Maybe workaround another Apple/AMD internal compiler error - the safe_array code was causing the AMD driver compiler to fail but simplifying the code seems to work. May have unintended consequences on iOS.
#rb none
#jira UE-72812
#ROBOMERGE-OWNER: ryan.vance
#ROBOMERGE-AUTHOR: mark.satterthwaite
#ROBOMERGE-SOURCE: CL 5923534 in //UE4/Main/...
#ROBOMERGE-BOT: DEVVR (Main -> Dev-VR)
[CL 5938437 by mark satterthwaite in Dev-VR branch]
#rb none
#ROBOMERGE-OWNER: ryan.vance
#ROBOMERGE-AUTHOR: mark.satterthwaite
#ROBOMERGE-SOURCE: CL 5808821 via CL 5808822 via CL 5808823 via CL 5812117 via CL 5812326
#ROBOMERGE-BOT: DEVVR (Main -> Dev-VR)
[CL 5842790 by mark satterthwaite in Dev-VR branch]
#rb none
#ROBOMERGE-OWNER: ryan.vance
#ROBOMERGE-AUTHOR: mark.satterthwaite
#ROBOMERGE-SOURCE: CL 5691957 via CL 5691961 via CL 5691963 via CL 5696013 via CL 5696965 via CL 5697149
#ROBOMERGE-BOT: DEVVR (Main -> Dev-VR)
[CL 5704402 by mark satterthwaite in Dev-VR branch]
#rb none
#ROBOMERGE-OWNER: ryan.vance
#ROBOMERGE-AUTHOR: mark.satterthwaite
#ROBOMERGE-SOURCE: CL 5659739 via CL 5659747 via CL 5659748 via CL 5659749 via CL 5659823 via CL 5659843
#ROBOMERGE-BOT: DEVVR (Main -> Dev-VR)
[CL 5666893 by mark satterthwaite in Dev-VR branch]
- Texture*Array.Load needs to split the array index out of the vector coordinate for Metal.
- The GetDimensions function needs to support the array-length/depth output argument.
- RemovePackedVarReferences was inserting new variables at the top of the function, not the same scope as the source variable, which won't compile in cases where structs are used as temporaries and not function arguments.
#rb none
#ROBOMERGE-OWNER: ryan.vance
#ROBOMERGE-AUTHOR: mark.satterthwaite
#ROBOMERGE-SOURCE: CL 5502462 via CL 5503115 via CL 5535524
#ROBOMERGE-BOT: DEVVR (Main -> Dev-VR)
[CL 5538907 by mark satterthwaite in Dev-VR branch]
Package Metal shader source into a zip file rather than a tgz so it can be done on Windows builds too and do this asynchronously while generating the Metal libraries. This file is stored in the MetaData folder so should be moved out of the content and not get packaged. Must be unzipped at the command-line for some reason, but it works.
#rb none
#ROBOMERGE-OWNER: ryan.vance
#ROBOMERGE-AUTHOR: mark.satterthwaite
#ROBOMERGE-SOURCE: CL 5333983 via CL 5333997
#ROBOMERGE-BOT: DEVVR (Main -> Dev-VR)
[CL 5386495 by mark satterthwaite in Dev-VR branch]
- Brings over the necessary engine changes for embedding UE4 mobile as a dylib/so in native mobile app
- Various changes for facial animation, screen recording, others
- ARKit and ARCore plugins were removed, as deemed "not ready"
#rb many people
#ROBOMERGE-OWNER: ryan.vance
#ROBOMERGE-AUTHOR: josh.adams
#ROBOMERGE-SOURCE: CL 5201138 via CL 5203024 via CL 5226277
#ROBOMERGE-BOT: DEVVR (Main -> Dev-VR)
[CL 5244512 by josh adams in Dev-VR branch]
Remove obsolete alternative Metal shader frequency table that was causing PVS to spit out an invalid error.
#rb none
#jira UE-69379
#ROBOMERGE-OWNER: ryan.vance
#ROBOMERGE-AUTHOR: mark.satterthwaite
#ROBOMERGE-SOURCE: CL 4860561 in //UE4/Main/...
#ROBOMERGE-BOT: DEVVR (Main -> Dev-VR)
[CL 4860568 by mark satterthwaite in Dev-VR branch]
All macOS Metal shader formats must use Metal 2.0 or later now, I no longer support Metal 1.2 for desktop.
#rb none
#jira UE-67151
#lockdown nick.penwarden
#ROBOMERGE-OWNER: jason.bestimt
#ROBOMERGE-AUTHOR: mark.satterthwaite
#ROBOMERGE-SOURCE: CL 4628516 in //UE4/Main/...
#ROBOMERGE-BOT: DEVVR (Main -> Dev-VR)
[CL 4628519 by mark satterthwaite in Dev-VR branch]