1216 Commits

Author SHA1 Message Date
Josh Adams
eb3569c187 - Fixed various blocking issues with making Mac/IOS builds that can be uploaded to AppStore in Xcode
* Missing ThinApp.sh
  * Missing some quotes around a variable in GenerateUniversalDSYM.sh
  * Correctly filter out the stub .app's and such when copying the Staged data directory into the .app
  * Disabled the Mac's Sign To Run Locally option by default, as that causes Xcode's Validation/Upload to not have the team name embedded in it, causing a hassle while pushing up to AppStore/TestFlight
  * Fixed the PRODUCT_NAME for BP projects
  * Made CrashReportClient be a sandboxed app that inherits from parent
  * Fix Hybrid apps to check all platforms before in the project generator, so that if a project needs a temp target for IOS (via a plugin)
  * Disabled the LoginFlow module from OnlineFramework plugin - this was causing issues with having CEF and EpicWebHelper embedded into a sandboxed .app, and LoginFlow isn't seemingly actually used by anything
  * Set the no-encryption setting in the template Mac plist to make uploading to TestFlight/AppStore easier
  * Fixed editor to not compile as universal when using -distribution, only the client should be universal
  * Further improvements to stripping out nested .app's in a final .app (remove them from the staged directory helps)
  * Changed how the Mac app name is displayed, since the .app name itself is shown in the Finder,  unlike IOS where the CFBundleName is shown (the archived .app name in the .xcarchive is named by a project setting, falling back to the .uproject name if not set)
  * Disabled the SignExecutables function on Modern because they attempt to sign the wrong .apps, and one is no longer (previously it was uselessly signing .apps, but now it throws an error due to changes for the third item in this list)
  * Legacy Xcode mode is forced with Window's Remote Mac builds, so use the old legacy code when running under windows
  * Added a third party .cpp file to get copied to remote macs
  * Fix Tools -> Open Xcode not working with modern Xcode

#jira UE-197465

[CL 28723100 by Josh Adams in 5.3 branch]
2023-10-12 15:15:43 -04:00
adam kinge
11980dc023 Required Metal shader compiler changes to support iOS Simulator. Set to disabled by default via "bEnableSimulatorSupport" in IOSRuntimeSettings.
#jira UE-168571
#rnx
#rb carl.lloyd, jack.porter
#lockdown jack.porter

[CL 27022417 by adam kinge in 5.3 branch]
2023-08-11 00:53:13 -04:00
Chris Babcock
7f37898dad Support resizeability for foldable devices / multiscreen
#jira UE-168578
#android
#review @Jack.Porter
#rb Jack.Porter

[CL 26910153 by Chris Babcock in 5.3 branch]
2023-08-07 22:57:28 -04:00
Alexis Matte
29dc9b490c Interchange: Fix config file not at the correct location
#jira none
#rb jeanluc.corenthin
#rnx

[CL 26854889 by Alexis Matte in 5.3 branch]
2023-08-04 14:38:42 -04:00
Josh Adams
55d0afa3bf - Enabled Modern Xcode mode by default for everyone!
- Fixed a naming issue (GameName vs ExeName) with stub creation for non-Development builds
#jira UE-191986
#rb calvin.zheng

[CL 26831770 by Josh Adams in 5.3 branch]
2023-08-03 18:42:59 -04:00
carl lloyd
2a8ccc779e Metal RHI: Disable SM6 as a default
Fix target settings to correctly pick highest target

#rb jeannoe.morissette
#jira none

[CL 26643245 by carl lloyd in 5.3 branch]
2023-07-27 12:07:13 -04:00
josh adams
275cb69b2f Brought changes over from UE5/Main
- Fixing the name of the .app when staging/deploying a BP IOS project with modern
- Uses a new AppleExports function to call MakeBinaryFilename, so we can use standardized name format for the BP .app
- Fixed which .app is archived for BP projects (it was archiving the UnrealGame.app, not the finalized MyProject.app)

- Programs now no longer use Game/Client entitlements, but can set bUseEntitlementsForPrograms to true in the .ini if really needed
- Added an Unrestricted.entitlements, an empty entitlements file
- Changed Programs to find the .ini for codesigning, without needing a .uproject

- Fixed path to strip to add a missing slash
- Pass -legacyxcode along to the legacy PostBuildSync step to make sure it uses legacy when overriding the .ini setting
- Added -legacyxcode commandline handler for legacy PostbuildSync

#jira UE-190517
#jira UE-189830
#rb various

[CL 26592555 by josh adams in 5.3 branch]
2023-07-25 18:39:53 -04:00
phillip kavan
2887f16143 Add a way to treat composite members as complete values when generating the custom property list for the Blueprint instance post-construct initialization fast path.
Change summary:
- Added UBlueprintGeneratedClass::RequiresCompleteValueForPostConstruction (config). These members will not be further decomposed into sub property delta lists.
- Added a CVar to allow the BP property initialization fast path to more easily be disabled for testing (similar to the CVar that exists for fast path component instancing).
- Revised property list generation to avoid storing extra "placeholder" entries for array values that exceed the size of the native parent default container's value (perfmem).

#rb Ben.Hoffman

[CL 26547265 by phillip kavan in 5.3 branch]
2023-07-24 12:37:06 -04:00
jamie dale
5789d616a4 Run the GatherText asset scan async during editor boot so that it's likely finished before the commandlet needs the data
For a very basic loc gather this can take the asset gather time from ~120 seconds to ~40 seconds

#jira
[FYI] Leon.Huang

[CL 26282137 by jamie dale in 5.3 branch]
2023-06-28 08:13:45 -04:00
calvin zheng
ed3b255a82 - Removed empty struct ini lines, as empty strings will error when parsed as a struct
#rb trivial

#ushell-cherrypick of 26146296 by Josh.Adams

[CL 26152852 by calvin zheng in 5.3 branch]
2023-06-21 12:33:02 -04:00
calvin zheng
f99e44009b - Handle manual codesigning with Modern Xcode (using all new settings, does not use the "green check" provisions in IOS project settings)
- Added support for AppStoreConnect API for automatic code signing (with command line builds, packaging from editor, etc) that doesn't need everyone to be signed in to Xcode (still need to sign in if using Xcode IDE to build/run)
- Fixed Modern to always create the IOS plist in UBT ApplePostBuild step
- Updated a bunch of ini setting names to remove Modern, given Modern will be standard in the future
- Added some settings XcodeProject settings in the editor, and updated some tooltips/category names
- Moved some functions around to clean up
- Added some debug code to catch errors

#rb adam.kinge,calvin.zheng,zack.neyland

#ushell-cherrypick of 26133818 by Josh.Adams

[CL 26152365 by calvin zheng in 5.3 branch]
2023-06-21 12:07:08 -04:00
paul chipchase
d237999add Now if the VA source control backend fails to connect we can display a dialog to the user asking for the correct credentials directly. Currently disabled by default.
#rb none

### Dialog
- When the source control backend tries to connect and fails we will now show a dialog allowing the user to try new settings rather than let the editor continue and crash.
- The dialog will allow the user to enter the server address (P4PORT) and their username (P4USER).
- Once the dialog is displayed the user will have three options to continue.
-- "Reset To Defaults" which will remove all settings saved to the users local ini files and attempt to use the environment defaults to connect.
-- "Retry Connection" which will take the new address and username that the user provided and attempt to connect with those settings.
-- "Skip" no connection attempt will be made. This may cause instability later if the user needs data that they cannot access.
- If the connection succeeds after the user has reset to defaults or provided new settings, then they will be saved in the local ini file for future sessions.
- The dialog will not show if:
-- Slate is disabled for the current processor has not yet initialized
-- The error is found not on the game thread. This means that lazy init will not currently work well with this dialog. Attempts to mashal the error to the game thread have been spotty at best and there is a high chance of thread locking so attempts were abandoned.
-- If the -unattended flag is set on the process.
-- If the dialog is disabled via the config file when setting up the backend (UseRetryConnectionDialog=False)
-- If  'engine.ini:[Core.VirtualizationModule]:UseLocalIniFileSettings' is false as future sessions would not be able to use the new settings and would become tiresome. In these cases the environment settings will need to be fixed.
- If the dialog is now shown then the backend is marked as unconnected and will not work.

### Known Issues
- We currently cannot get the settings that the failed p4 connection used, nor the error message dueto how the API works. So for now we just display an empty server address and username edit box. This will be fixed when the API is changed.
- There is currently no good way to inform the user where their settings come from.
- There is no easy way to reset the settings once saved. To allow the user to change the server address to a better proxy for example.

### Initialization
- In order to allow a slate dialog to be used, the initialization of the VA system has been moved later in pre init, to the first avaliable point after slate has initialized and its shaders have been built. This in theory should not cause a a problem as engine content cannot be virtualized.
-- Added a new option 'engine.ini:[Core.ContentVirtualization]:InitPreSlate' with a default of false. When set to true the VA system will initialize in the original, earlier portion of engine pre init. This is only included in case an existing virtualized project encounters a problem with the new ordering.

[CL 26115735 by paul chipchase in 5.3 branch]
2023-06-20 04:35:48 -04:00
jeanluc corenthin
fe85d32825 Restoring Danny Kabrane's changes with the addition of the missing redirection which caused the warnings during cooking
#rb danny.kabrane
[FYI] bob.tellez

[CL 26087934 by jeanluc corenthin in 5.3 branch]
2023-06-19 08:54:42 -04:00
carl lloyd
aeb3c16a16 Add support to enable an SM6 platform for Mac
#rb Zack.Neyland
#jira UE-184435

[CL 26063410 by carl lloyd in 5.3 branch]
2023-06-16 14:37:30 -04:00
adam kinge
5a219beeb3 Support iPad SplitView (dynamic resizing) and StageManager
#jira UE-168563
#rb jack.porter

[CL 26057533 by adam kinge in 5.3 branch]
2023-06-16 12:41:13 -04:00
bob tellez
32bcfe32cf [Backout] - CL26023117
[FYI] Danny.Kabrane
Original CL Desc
-----------------------------------------------------------------
Moving material expressions out from Interchange/MaterialX into Engine:
- Exponential
- Logarithm (natural)
- Length
- RgbToHsv
- HsvToRgb

Adding redirects for material expressions going from Interchange/MaterialX to Engine

Adding Material Expression:
- Exponential2

-Add a tag 'private' to hide material expression in the material editor

#jira UE-186426
#rb Jason.Nadro, JeanLuc.Corenthin

[CL 26055627 by bob tellez in 5.3 branch]
2023-06-16 12:05:26 -04:00
danny kabrane
1a44e7768f Moving material expressions out from Interchange/MaterialX into Engine:
- Exponential
- Logarithm (natural)
- Length
- RgbToHsv
- HsvToRgb

Adding redirects for material expressions going from Interchange/MaterialX to Engine

Adding Material Expression:
- Exponential2

-Add a tag 'private' to hide material expression in the material editor

#jira UE-186426
#rb Jason.Nadro, JeanLuc.Corenthin

[CL 26053144 by danny kabrane in 5.3 branch]
2023-06-16 11:18:45 -04:00
zousar shaker
ffc35b5e7d Reduce Autolaunched ZenServer garbage collection threshold from 34 days to 14 days. This will reduce how long data is kept in the ZenServer local DDC as well as any cooked output stored in ZenServer.
#rb devin.doucette

[CL 26039725 by zousar shaker in 5.3 branch]
2023-06-16 03:31:02 -04:00
sebastien hillaire
e3fac4f405 Substrate - added reference model for simple volume.
#rb none
[FYI] charles.derousiers

[CL 26035352 by sebastien hillaire in 5.3 branch]
2023-06-16 01:10:34 -04:00
ludovic chabant
3a5d51cb1f Cameras: change the default aspect ratio constraint to maintain Y FOV
Since camera FOV is now always handled as horizontal FOV, changing this setting isn't as disruptive as it used to be, and this now sets a sane default in an age of widescreen monitors. The only thing that might break is any custom gameplay code that is trying to compensate for horizontal FOVs prior to the first change. To make sure nothing breaks in FN we specify the old aspect ratio axis constraint there.

Github pull request 9004

#jira UE-146969
#rb max.chen

[CL 25996500 by ludovic chabant in ue5-main branch]
2023-06-14 17:22:23 -04:00
Balazs Toereki
74eb29504a [Interchange] Plugin and Ini config fixes
#jira UE-186417 UE-186413 UE-186418 UE-174312
#rb JeanLuc.Corenthin

[CL 25952122 by Balazs Toereki in ue5-main branch]
2023-06-13 11:00:19 -04:00
louisphilippe seguin
a45acac5be Iris
* Poll configs are now set using Frequency (updates per second) instead of frames between polls.
* This allows the poll configs to work with any type of server tick rate
* Added ability to recover a given object's poll frequency via GetPollFrequencyOfRootObject
* ActorReplicationBridge will now listen to changes in server tick rates and reinitalize the poll frame updates of all objects via ReinitPollFrequency()

#jira UE-185786
#rb Peter.Engstorm
#rnx

[CL 25894242 by louisphilippe seguin in ue5-main branch]
2023-06-09 11:12:03 -04:00
axel riffard
4e6b46c408 Fix tvOS multi user
#jira UE-187375
#rb adam.kingee

[CL 25888703 by axel riffard in ue5-main branch]
2023-06-09 04:08:47 -04:00
nick baltis
61b7cf81c7 Variable Frame Stripping
Swarm review [at] https://p4-swarm.epicgames.net/reviews/25771279
https://horde.devtools.epicgames.com/job/6480c6078417d79259d7b71c

Added functionality to strip at ratios higher 1 out of every 2. testing shows good savings at stripping 2/3 frames on NX64 and in editor of around 8mb with no noticeable visual degradation.

Works through the VariableFrameStripping object that is a member of the AnimSequence.

Fixed issue with valkyrie

[CL 25857620 by nick baltis in ue5-main branch]
2023-06-07 16:48:21 -04:00
bob tellez
f6b2d1c634 [Backout] - CL25815133
#fyi Balazs.Toereki
Original CL Desc
-----------------------------------------------------------------
[Interchange] Plugin and Ini config fixes

#jira UE-186417 UE-186413 UE-186418 UE-174312
#rb JeanLuc.Corenthin Alexis.Matte

[CL 25836719 by bob tellez in ue5-main branch]
2023-06-07 01:08:31 -04:00