Files
UnrealEngineUWP/Engine/Source/Developer/Android/AndroidTargetPlatformControls/Private/AndroidTargetPlatformControls.h

313 lines
11 KiB
C
Raw Normal View History

// Copyright Epic Games, Inc. All Rights Reserved.
#pragma once
Copying //UE4/Dev-Build to //UE4/Dev-Main (Source: //UE4/Dev-Build @ 3209340) #lockdown Nick.Penwarden #rb none ========================== MAJOR FEATURES + CHANGES ========================== Change 3209340 on 2016/11/23 by Ben.Marsh Convert UE4 codebase to an "include what you use" model - where every header just includes the dependencies it needs, rather than every source file including large monolithic headers like Engine.h and UnrealEd.h. Measured full rebuild times around 2x faster using XGE on Windows, and improvements of 25% or more for incremental builds and full rebuilds on most other platforms. * Every header now includes everything it needs to compile. * There's a CoreMinimal.h header that gets you a set of ubiquitous types from Core (eg. FString, FName, TArray, FVector, etc...). Most headers now include this first. * There's a CoreTypes.h header that sets up primitive UE4 types and build macros (int32, PLATFORM_WIN64, etc...). All headers in Core include this first, as does CoreMinimal.h. * Every .cpp file includes its matching .h file first. * This helps validate that each header is including everything it needs to compile. * No engine code includes a monolithic header such as Engine.h or UnrealEd.h any more. * You will get a warning if you try to include one of these from the engine. They still exist for compatibility with game projects and do not produce warnings when included there. * There have only been minor changes to our internal games down to accommodate these changes. The intent is for this to be as seamless as possible. * No engine code explicitly includes a precompiled header any more. * We still use PCHs, but they're force-included on the compiler command line by UnrealBuildTool instead. This lets us tune what they contain without breaking any existing include dependencies. * PCHs are generated by a tool to get a statistical amount of coverage for the source files using it, and I've seeded the new shared PCHs to contain any header included by > 15% of source files. Tool used to generate this transform is at Engine\Source\Programs\IncludeTool. [CL 3209342 by Ben Marsh in Main branch]
2016-11-23 15:48:37 -05:00
#include "CoreTypes.h"
#include "Containers/UnrealString.h"
#include "UObject/NameTypes.h"
#include "Delegates/IDelegateInstance.h"
#include "Containers/Map.h"
#include "Delegates/Delegate.h"
#include "Containers/Ticker.h"
#include "Misc/ScopeLock.h"
#include "Android/AndroidPlatformProperties.h"
#include "Interfaces/ITargetPlatformModule.h"
#include "Common/TargetPlatformControlsBase.h"
#include "Interfaces/IAndroidDeviceDetection.h"
#include "Interfaces/IAndroidDeviceDetectionModule.h"
#include "AndroidTargetDevice.h"
#include "AndroidTargetPlatformSettings.h"
#if WITH_ENGINE
#include "Engine/Texture.h"
Copying //UE4/Dev-Build to //UE4/Dev-Main (Source: //UE4/Dev-Build @ 3209340) #lockdown Nick.Penwarden #rb none ========================== MAJOR FEATURES + CHANGES ========================== Change 3209340 on 2016/11/23 by Ben.Marsh Convert UE4 codebase to an "include what you use" model - where every header just includes the dependencies it needs, rather than every source file including large monolithic headers like Engine.h and UnrealEd.h. Measured full rebuild times around 2x faster using XGE on Windows, and improvements of 25% or more for incremental builds and full rebuilds on most other platforms. * Every header now includes everything it needs to compile. * There's a CoreMinimal.h header that gets you a set of ubiquitous types from Core (eg. FString, FName, TArray, FVector, etc...). Most headers now include this first. * There's a CoreTypes.h header that sets up primitive UE4 types and build macros (int32, PLATFORM_WIN64, etc...). All headers in Core include this first, as does CoreMinimal.h. * Every .cpp file includes its matching .h file first. * This helps validate that each header is including everything it needs to compile. * No engine code includes a monolithic header such as Engine.h or UnrealEd.h any more. * You will get a warning if you try to include one of these from the engine. They still exist for compatibility with game projects and do not produce warnings when included there. * There have only been minor changes to our internal games down to accommodate these changes. The intent is for this to be as seamless as possible. * No engine code explicitly includes a precompiled header any more. * We still use PCHs, but they're force-included on the compiler command line by UnrealBuildTool instead. This lets us tune what they contain without breaking any existing include dependencies. * PCHs are generated by a tool to get a statistical amount of coverage for the source files using it, and I've seeded the new shared PCHs to contain any header included by > 15% of source files. Tool used to generate this transform is at Engine\Source\Programs\IncludeTool. [CL 3209342 by Ben Marsh in Main branch]
2016-11-23 15:48:37 -05:00
#include "Internationalization/Text.h"
#include "StaticMeshResources.h"
#endif // WITH_ENGINE
Copying //UE4/Dev-Build to //UE4/Dev-Main (Source: //UE4/Dev-Build @ 3209340) #lockdown Nick.Penwarden #rb none ========================== MAJOR FEATURES + CHANGES ========================== Change 3209340 on 2016/11/23 by Ben.Marsh Convert UE4 codebase to an "include what you use" model - where every header just includes the dependencies it needs, rather than every source file including large monolithic headers like Engine.h and UnrealEd.h. Measured full rebuild times around 2x faster using XGE on Windows, and improvements of 25% or more for incremental builds and full rebuilds on most other platforms. * Every header now includes everything it needs to compile. * There's a CoreMinimal.h header that gets you a set of ubiquitous types from Core (eg. FString, FName, TArray, FVector, etc...). Most headers now include this first. * There's a CoreTypes.h header that sets up primitive UE4 types and build macros (int32, PLATFORM_WIN64, etc...). All headers in Core include this first, as does CoreMinimal.h. * Every .cpp file includes its matching .h file first. * This helps validate that each header is including everything it needs to compile. * No engine code includes a monolithic header such as Engine.h or UnrealEd.h any more. * You will get a warning if you try to include one of these from the engine. They still exist for compatibility with game projects and do not produce warnings when included there. * There have only been minor changes to our internal games down to accommodate these changes. The intent is for this to be as seamless as possible. * No engine code explicitly includes a precompiled header any more. * We still use PCHs, but they're force-included on the compiler command line by UnrealBuildTool instead. This lets us tune what they contain without breaking any existing include dependencies. * PCHs are generated by a tool to get a statistical amount of coverage for the source files using it, and I've seeded the new shared PCHs to contain any header included by > 15% of source files. Tool used to generate this transform is at Engine\Source\Programs\IncludeTool. [CL 3209342 by Ben Marsh in Main branch]
2016-11-23 15:48:37 -05:00
class FTargetDeviceId;
class IAndroidDeviceDetection;
class ITargetPlatform;
class UTextureLODSettings;
enum class ETargetPlatformFeatures;
template<typename TPlatformProperties> class TTargetPlatformBase;
template< typename InElementType, typename KeyFuncs, typename Allocator > class TSet;
template<typename KeyType, typename ValueType, typename SetAllocator, typename KeyFuncs > class TMap;
template<typename KeyType, typename ValueType, typename SetAllocator, typename KeyFuncs > class TMultiMap;
Copying //UE4/Dev-Build to //UE4/Dev-Main (Source: //UE4/Dev-Build @ 3209340) #lockdown Nick.Penwarden #rb none ========================== MAJOR FEATURES + CHANGES ========================== Change 3209340 on 2016/11/23 by Ben.Marsh Convert UE4 codebase to an "include what you use" model - where every header just includes the dependencies it needs, rather than every source file including large monolithic headers like Engine.h and UnrealEd.h. Measured full rebuild times around 2x faster using XGE on Windows, and improvements of 25% or more for incremental builds and full rebuilds on most other platforms. * Every header now includes everything it needs to compile. * There's a CoreMinimal.h header that gets you a set of ubiquitous types from Core (eg. FString, FName, TArray, FVector, etc...). Most headers now include this first. * There's a CoreTypes.h header that sets up primitive UE4 types and build macros (int32, PLATFORM_WIN64, etc...). All headers in Core include this first, as does CoreMinimal.h. * Every .cpp file includes its matching .h file first. * This helps validate that each header is including everything it needs to compile. * No engine code includes a monolithic header such as Engine.h or UnrealEd.h any more. * You will get a warning if you try to include one of these from the engine. They still exist for compatibility with game projects and do not produce warnings when included there. * There have only been minor changes to our internal games down to accommodate these changes. The intent is for this to be as seamless as possible. * No engine code explicitly includes a precompiled header any more. * We still use PCHs, but they're force-included on the compiler command line by UnrealBuildTool instead. This lets us tune what they contain without breaking any existing include dependencies. * PCHs are generated by a tool to get a statistical amount of coverage for the source files using it, and I've seeded the new shared PCHs to contain any header included by > 15% of source files. Tool used to generate this transform is at Engine\Source\Programs\IncludeTool. [CL 3209342 by Ben Marsh in Main branch]
2016-11-23 15:48:37 -05:00
template<typename TPlatformProperties> class TTargetPlatformBase;
/**
* FAndroidTargetPlatformControls, abstraction for cooking Android platforms
*/
class ANDROIDTARGETPLATFORMCONTROLS_API FAndroidTargetPlatformControls
: public TNonDesktopTargetPlatformControlsBase<FAndroidPlatformProperties>
{
public:
/**
* Default constructor.
*/
FAndroidTargetPlatformControls(bool bInIsClient, ITargetPlatformSettings* TargetPlatformSettings, const TCHAR* FlavorName, const TCHAR* OverrideIniPlatformName = nullptr);
/**
* Destructor
*/
virtual ~FAndroidTargetPlatformControls();
public:
/**
* Gets the name of the Android platform variant, i.e. ASTC, ETC2, DXT, etc.
*
* @param Variant name.
*/
FString GetAndroidVariantName() const
{
return PlatformInfo->PlatformFlavor.ToString();
}
public:
//~ Begin ITargetPlatform Interface
virtual void EnableDeviceCheck(bool OnOff) override {}
virtual bool AddDevice(const FString& DeviceName, bool bDefault) override
{
return false;
}
virtual void GetAllDevices(TArray<ITargetDevicePtr>& OutDevices) const override;
virtual bool GenerateStreamingInstallManifest(const TMultiMap<FString, int32>& PakchunkMap, const TSet<int32>& PakchunkIndicesInUse) const override
{
return true;
}
virtual ITargetDevicePtr GetDefaultDevice() const override;
virtual ITargetDevicePtr GetDevice(const FTargetDeviceId& DeviceId) override;
virtual bool IsSdkInstalled(bool bProjectHasCode, FString& OutDocumentationPath) const override;
virtual int32 CheckRequirements(bool bProjectHasCode, EBuildConfiguration Configuration, bool bRequiresAssetNativization, FString& OutTutorialPath, FString& OutDocumentationPath, FText& CustomizedLogMessage) const override;
Copying //UE4/Dev-Mobile to //UE4/Main (Source: //UE4/Dev-Mobile @ 3600060) #rb none #lockdown nick.penwarden ========================== MAJOR FEATURES + CHANGES ========================== Change 3292215 on 2017/02/08 by Nick.Shin HTML5 emscripten: wasm and wbegl2 support - emscripten toolchain #jira UEPLAT-1437 Switch [to] web assembly #rb none Change 3293994 on 2017/02/09 by Nick.Shin HTML5 emscripten: wasm and webgl2 support - OSX toolchain #jira UEPLAT-1437 Switch [to] web assembly #rb none Change 3317951 on 2017/02/22 by Nick.Shin HTML5 emscripten: wasm & webgl2 support - RC1 - emscripten toolchain WARNING: emscripten/incoming/source/include/libc/bit (the file) might need to be deleted first #jira UEMOB-263 Switch [to] web assembly #jira UEMOB-201 Support ES3 / WebGL2 in HTML5 #rb none Change 3318669 on 2017/02/23 by Nick.Shin HTML5 emscripten: wasm & webgl2 support - RC1 - OSX toolchain #jira UEMOB-263 Switch [to] web assembly #jira UEMOB-201 Support ES3 / WebGL2 in HTML5 #rb none Change 3462146 on 2017/05/26 by Nick.Shin HTML5 - merge from Release-4.16 to Dev-Mobile #jira none #rb none #rnx Change 3504996 on 2017/06/22 by Cosmin.Sulea UEMOB-362 - Add per-texture and per-format compression quality override settings #rb Dmitriy.Dyomin #jira UEMOB-362 #codereview Dmitriy.Dyomin #codereview Jack.Porter Change 3505056 on 2017/06/22 by Cosmin.Sulea Back out changelist 3504996 - due to errors generated in xboxOne, PS4 and Switch versions #rb none Change 3508049 on 2017/06/23 by Nick.Shin HTML5 toolchain notes corrections #jira none #rb none #rnx Change 3508663 on 2017/06/24 by Nick.Shin HTML5LaunchHelper.exe on linux - redo - it seems that i need to also check-in the exe and pdb file instead of having CIS make and checking-in them itself... - modified c# program to output a version number to help track which version of HTML5LaunchHelper is running... #jira UE-45302 HTML5LaunchHelper.exe hosts the files in the current working directory on Linux #rnx #rb none Change 3509210 on 2017/06/26 by Dmitriy.Dyomin ExposureScale will be applied during tonemap pass when MobileHDR is on #rb jack.porter #codereview Allan.Bentham Change 3511058 on 2017/06/27 by Cosmin.Sulea UEMOB-362 - Add per-texture and per-format compression quality override settings - resubmitted #rb Dmitriy.Dyomin #jira UEMOB-362 #codereview Dmitriy.Dyomin Change 3511069 on 2017/06/27 by Jack.Porter PS4, XboxOne and Switch fixes for changes to ITextureFormat interface #rb Dmitriy.Dyomin #jira UEMOB-362 Change 3513028 on 2017/06/28 by Jack.Porter Merging //UE4/Dev-Main to Dev-Mobile (//UE4/Dev-Mobile) #rb None Change 3517409 on 2017/06/30 by Jack.Porter Merging //UE4/Dev-Main to Dev-Mobile (//UE4/Dev-Mobile) #rb None Change 3517730 on 2017/06/30 by Cosmin.Sulea UEMOB-328 - Improve handling of iOS signing key on remote Mac system keychain when using remote toolchain #rb Jack.Porter #jira UEMOB-328 #codereview: peter.sauerbrei Change 3517757 on 2017/06/30 by Cosmin.Sulea UE-46245 - Building with remote toolchain does not use Project Setting for iOS signing identity which can cause signing errors #rb Jack.Porter #jira UE-46245 #codereview: peter.sauerbrei Change 3518149 on 2017/06/30 by Adrian.Chelu UE-43035 Tilt axis for X and Z are not consistent between Android and iOS devices #rb Jack.Porter #jira UE-46245 #codereview: Chris Babcock <chris.babcock@epicgames.com> Change 3524242 on 2017/07/06 by Nick.Shin HTML5 - refraction shader note: this CL also contains fixes to webgl2 [float4 vs half2] and a [% vs Mod()] material custom function changes to some TM-ShaderModels shaders specifically: fixes to and similar with: DitherTemporalAA #jria UE-46434 No Refraction in QA Game TM-Shadermodels HTML5 #rb none #rn #codereview jack.porter dmitriy.dyomin Change 3535295 on 2017/07/13 by Allan.Bentham #jira UEMOB-390 Add Android cpu stats. add 'stat AndroidCPU' to android's console spinner UI. increase GetCPUState's core count support to 16. #jira UE-45888 Use cvar value to limit android cpu stat update rate. #rb none Change 3535306 on 2017/07/13 by Allan.Bentham Add missing pragma once #rb none Change 3537047 on 2017/07/13 by Ben.Marsh Fixing case of iOS directories, pt1 #rb none Change 3537051 on 2017/07/13 by Ben.Marsh Fixing case of iOS directories, pt2 #rb none Change 3537373 on 2017/07/14 by Allan.Bentham Add scope level android egl error verification. work around minor issue with invalid egl config property. #rb chris.babcock Change 3541735 on 2017/07/18 by Allan.Bentham Add 'sustained performance mode' support for API 24+ devices. #jira UEMOB-386 #rb chris.babcock Change 3543001 on 2017/07/18 by Sorin.Gradinaru #jira UE-45766 Improved Virtual Keyboard cannot receive non-English characters. - for Android, add an native EditBox above the virtual keyboard to receive the text and pass it to the object from the slate #rb Chris.Babcock Change 3554399 on 2017/07/25 by Nick.Shin STATS disabled for non multi-threaded platforms #jira UE-47485 ( Pri:1 - 4.18 ) Crash running Stat Command test in TM-Core on Firefox #rnx #rb none Change 3554402 on 2017/07/25 by Nick.Shin STATS TaskGraph disabled for non multi-threaded platforms #jira UE-47486 ( Pri:1 - 4.18 ) QAGame hard locks on Firefox when triggering Task Graph Benchmark test #rb none #rnx Change 3556957 on 2017/07/26 by Nick.Shin HTML5 - WASM enabled by default - part 1 -- commenting out asmjs stuff begin sunsetting ASM.JS note to self: CL#3462146 "backout" asmjs #jira UEMOB-416 WASM enabled by default #rnx #rb none Change 3557654 on 2017/07/26 by Nick.Shin HTML5 - WASM enabled by default - part 2 -- remove asmjs code sunsetting ASM.JS note to self: CL#3462146 "backout" asmjs #jira UEMOB-416 WASM enabled by default #rn #rb none Change 3557910 on 2017/07/27 by Jack.Porter Support Client configuration when packaging in the editor #jira UE-39973 #rb Dmitriy.Dyomin Change 3557917 on 2017/07/27 by Jack.Porter Missing file from CL 3557910 #rb trivial Change 3559642 on 2017/07/27 by Nick.Shin STATS TaskGraph disabled for non multi-threaded platforms - both "LockFree stress test" and "task graph benchmark" are disabled - no multi-threading for WASM exist yet (note: ASM.JS has been sunsetted) - stat command crash "fixed" - but, font size are totally broken - i can look at this (much) later... - new bug: physx will crash on "gc and level load stress test" -- please bug this as a new jira #jira UE-47486 ( Pri:1 - 4.18 ) QAGame hard locks on Firefox when triggering Task Graph Benchmark test #rb none #rnx Change 3565656 on 2017/07/31 by Dmitriy.Dyomin Added a way to lock level position in Word Composition #jira UE-47713 #rb none Change 3565757 on 2017/08/01 by Dmitriy.Dyomin compile fix #rb none Change 3567446 on 2017/08/01 by Chris.Babcock Allow addElement and addElements to only insert once with once="true" attribute in UPL #jira UE-47951 #ue4 #android #rb Peter.Sauerbrei Change 3567592 on 2017/08/01 by Chris.Babcock Use absolute path for repositories for Gradle #jira UE-47952 #ue4 #android #rb Tim.Lincoln Change 3568690 on 2017/08/02 by Chris.Babcock Removed warnings for once attribute in UPL #ue4 #android #rb none Change 3569975 on 2017/08/02 by Chris.Babcock Add <baseBuildGradleAdditions> to UPL to allow additions to the root-level build.gradle #jira UE-47995 #ue4 #android #rb Tim.Lincoln Change 3570117 on 2017/08/02 by Chris.Babcock Add <setBoolFromPropertyContains> to UPL - sets bool to true if string list in ini matches contains attribute #jira UE-47996 #ue4 #android #rb Jack.Porter Change 3571552 on 2017/08/03 by Chris.Babcock Removed unneeded settings.gradle file (generated) #jira UE-48041 #ue4 #android #rb none Change 3572224 on 2017/08/04 by Dmitriy.Dyomin Better selection tracking in world composition #rb none Change 3573662 on 2017/08/04 by Nick.Shin HTML5 remove PreLoadMap "feature" (was only available/used with HTML5) - asyncronous loads are not allowed during UEngine::LoadMap() - the files/code will be repurposed for pakfile CHUNK support #jira UEMOB-425 HTML5 streaming content investigation (part 1 of 2) #rn #rb none Change 3574471 on 2017/08/07 by Dmitriy.Dyomin Export ULevelStreamingKismet::LoadLevelInstance function #rb none Change 3576262 on 2017/08/08 by Dmitriy.Dyomin Fixed: widget clipping issues in world composition #rb none Change 3576845 on 2017/08/08 by Nick.Shin set HTML5LaunchHelper application's icon to UE4.ico #jira UE-19225 HTML5LaunchHelper application does not have an unreal icon #rb none #rnx Change 3578313 on 2017/08/09 by Dmitriy.Dyomin Added: an RHI call to invalidate/clear cached state, RHIInvalidateCachedState #jira UEMOB-435 #rb jack.porter Change 3578364 on 2017/08/09 by Dmitriy.Dyomin Vertex Fog is disabled on mobile by default. If scene uses vertex fog - Mobile preview and device will show on screen message: PROJECT HAS VERTEX FOG ON MOBILE DISABLED This saves about 90 instructions in VS and a few in PS #jira UEMOB-166 #rb jack.porter Change 3578703 on 2017/08/09 by Nick.Shin set HTML5LaunchHelper application's icon to UE4.ico forgot to check in exe and pdb file #jira UE-19225 HTML5LaunchHelper application does not have an unreal icon #rb none #rnx Change 3578961 on 2017/08/09 by Peter.Sauerbrei deprecate IOS 8 as the minimum OS supported. #jira UEMOB-429 #rb chris.babcock Change 3579319 on 2017/08/09 by Peter.Sauerbrei fixes for compile errors with Xcode 9 beta 4 #rb none Change 3579356 on 2017/08/09 by Peter.Sauerbrei modified minimum IOS to build with #rb chris.babcock Change 3579687 on 2017/08/09 by Chris.Babcock Fix GoogleVR Gradle packaging #jira UE-48239 #ue4 #android #rb none Change 3579921 on 2017/08/10 by Dmitriy.Dyomin GitHub 3670 : More zoom levels for World Composition (300) #contributedby: user37337 #jira UE-45977 #3670 #rb none Change 3580576 on 2017/08/10 by Peter.Sauerbrei detection of iPad Pro 10.5 and IPad Pro 12.9 (2nd Gen) #rb chris.babcock Change 3580611 on 2017/08/10 by Chris.Babcock Set online provider back to GooglePlay and remove forcing IAP permission (contributed by umerov1999) #jira UE-48185 #PR #3876 #ue4 #android #rb Peter.Sauerbrei Change 3582166 on 2017/08/11 by Nick.Shin nuke PLATFORM_HTML5_WIN32 PLATFORM_HTML5_WIN32 code removal tested successfully with (force rebuild and repackaging): * Win64 server (WindowsServer) * Win64 client (WindowsNoEditor) * HTML5 client all playing together via websocket net driver (i've attached a screen shot of this in jira) code changes touches: physics, audio and main build files #jira UEMOB-433 Remove Win32 SDL "HTML5 Simulator" code #rb ben.marsh #rnx #codereview josh.adams #fyi ori.cohen, aaron.mclera Change 3582474 on 2017/08/11 by Chris.Babcock Don't use V2 signing for Gear VR APKs #jira UE-48354 #ue4 #android #rb Peter.Sauerbrei Change 3582614 on 2017/08/11 by Chris.Babcock Filter out unneeded architectures from APK for Gradle builds #jira UE-48355 #ue4 #android #rb Peter.Sauerbrei Change 3582923 on 2017/08/11 by Nick.Shin backport release 4.17 to dev-mobile #jira none #rb none #rnx Change 3582924 on 2017/08/11 by Nick.Shin FNetworkFileServerHttp - error gracefully when port is already in use #jira UE-46409 [CrashReport] Assertion on Mac: Could not create a libwebsocket - FNetworkFileServerHttp::Init() #rnx #rb none Change 3582925 on 2017/08/11 by Nick.Shin HTML5 - turn off pak file compression in favor of gzip packages #jira UE-46729 HTML5 - on shipping builds - turn off pak file compression in favor of gzip packages #rn #rb none Change 3583943 on 2017/08/14 by Cosmin.Sulea UEMOB-363 - second iteration - Project wide texture quality control by texture group #rb Dmitriy Dyomin #jira UEMOB-363 Change 3583967 on 2017/08/14 by Cosmin.Sulea Back out changelist 3583943 #rb none Change 3584121 on 2017/08/14 by Peter.Sauerbrei fix for mac compile failure #rb none Change 3587877 on 2017/08/15 by Peter.Sauerbrei josh's suggested fix is not working for Xcode 8.3, so brute forcing for now #rb none Change 3588612 on 2017/08/15 by Peter.Sauerbrei Xcode 9 project compatbility updates #rb chris.babcock #codereview michael.trepka Change 3589223 on 2017/08/15 by Dmitriy.Dyomin Fixed: bNavigationAutoUpdateEnabled was not always working when reopeinig the map Fixed: Navigation Build was not clearing some mesh tiles when bNavigationAutoUpdateEnabled is enabled Fixed: Streaming out a level in editor was not always updating NavMesh debug draw #rb lukasz.furman Change 3589900 on 2017/08/16 by Dmitriy.Dyomin Support vulkan validation layers on Android, only in Debug and Development configuration (requires r.Vulkan.EnableValidation=1) #codereview chris.babcock, rolando.caloca #rb none Change 3590592 on 2017/08/16 by Nick.Shin HTML5 emscripten 1.37.19 OSX #jira UE-47813 #rb none #rn HTML5 emscripten 1.37.19 OSX Change 3590597 on 2017/08/16 by Nick.Shin HTML5 emscripten 1.37.19 Linux #jira UE-47813 #rb none #rn HTML5 emscripten 1.37.19 Linux Change 3590624 on 2017/08/16 by Nick.Shin HTML5 emscripten 1.37.19 toolchain #jira UE-47813 #rb none #rn HTML5 emscripten 1.37.19 toolchain Change 3591720 on 2017/08/16 by Chris.Babcock Enable Gradle by default and add button to accept Android SDK license to project settings #jira UE-48519 #ue4 #android #rb Tim.Lincoln #fyi Peter.Sauerbrei Change 3591998 on 2017/08/16 by Chris.Babcock Fix nonunity build #ue4 #android #rb none Change 3592407 on 2017/08/17 by Nick.Shin HTML5 emscripten 1.37.19 Win64 #jira UE-47813 #rb none #rn HTML5 emscripten 1.37.19 Win64 Change 3592479 on 2017/08/17 by Nick.Shin HTML5 3rd Party Libs - compiled with emscripten 1.37.19 #jira UE-47813 #rb none #rn HTML5 3rd Party Libs - compiled with emscripten 1.37.19 toolchain Change 3592480 on 2017/08/17 by Nick.Shin HTML5 emscripten 1.37.19 toolchain Epic edits as well as setting UE4 HTML c# scripts to use new toolchain #jira UE-47813 #rb none #rn HTML5 emscripten 1.37.19 toolchain Epic edits Change 3592481 on 2017/08/17 by Nick.Shin HTML5 remove old emscripten toolchain #jira UE-47813 #rb none #rn HTML5 remove old emscripten toolchain Change 3592485 on 2017/08/17 by Nick.Shin HTML5 undo CanUseXGE - this might be breaking CIS for HTML5 builds... #jira UE-47813 #rb none #rnx Change 3592549 on 2017/08/17 by Dmitriy.Dyomin Added GetDiskTotalAndFreeSpace for IOS and Android #jira UE-46479 #codereview chris.babcock, peter.sauerbrei #rb none Change 3594045 on 2017/08/17 by Peter.Sauerbrei comment about potential failure case in the remote tool chain #rb none Change 3594342 on 2017/08/17 by Peter.Sauerbrei Merging //UE4/Main/... to //UE4/Dev-Mobile/... #rb none Change 3594920 on 2017/08/17 by Peter.Sauerbrei fix for non-unity builds (accidentally merged something incorrectly) #rb none Change 3595347 on 2017/08/17 by Chris.Babcock merge fixes for Android #ue4 #android #rb Peter.Sauerbrei #lockdown Peter.Sauerbrei Change 3595752 on 2017/08/17 by Chris.Babcock Update Facebook plugin to support Gradle #jira UE-48569 #ue4 #android #fyi Josh.Markiewicz #rb none #lockdown Peter.Sauerbrei Change 3595849 on 2017/08/17 by Chris.Babcock Fix issue with libovrplatformloader.so for non armv7 targets #jira UE-48533 #ue4 #android #rb none #lockdown Peter.Sauerbrei Change 3596419 on 2017/08/18 by Peter.Sauerbrei fix for Mac Editor build failure #rb none Change 3597023 on 2017/08/18 by Peter.Sauerbrei fix for game editor build failure #rb none Change 3597032 on 2017/08/18 by Peter.Sauerbrei fix for app bundle id in Info-Editor.plist #rb none Change 3597034 on 2017/08/18 by Peter.Sauerbrei put back the info.plist, found the real problem #rb none Change 3597197 on 2017/08/18 by Peter.Sauerbrei pull Info.plist from the build products #rb none [CL 3600450 by Chris Babcock in Main branch]
2017-08-21 15:05:19 -04:00
virtual void GetPlatformSpecificProjectAnalytics(TArray<struct FAnalyticsEventAttribute>& AnalyticsParamArray) const override;
virtual bool SupportsCompressedNonPOT() const
{
// most formats do support non-POT compressed textures
return true;
}
#if WITH_ENGINE
virtual void GetTextureFormats(const UTexture* InTexture, TArray< TArray<FName> >& OutFormats) const override;
virtual FName FinalizeVirtualTextureLayerFormat(FName Format) const override;
Copying //UE4/Orion-Staging to //UE4/Main (Source: //Orion/Dev-General @ 3358916) #lockdown Nick.Penwarden Change 3358916 on 2017/03/22 by Andrew.Grant Merging //Orion/Main to Dev-General (//Orion/Dev-General) #!tests #!rb na Change 3357395 on 2017/03/21 by Daniel.Lamb Added some more custom stats to the cooker. Only cook the english cook culture when we are running local builds. #!rb Trivial #!test Iterative shared cooked builds paragon Change 3357377 on 2017/03/21 by Daniel.Lamb Added support for packages which fail to load to the package dependency info module #!rb Trivial #!test Cook paragon Change 3356838 on 2017/03/21 by Andrew.Grant Merging //Orion/Main to Dev-General (//Orion/Dev-General) #!3rb #!tests na Change 3355306 on 2017/03/20 by Daniel.Lamb Switched PackageDependencyInfo to using Guid instead of entire package hash when generating dependency info. Stopped cooker from collecting garbage while in the editor. Iterative cooks don't resolve string asset references for startup packages. #!rb Trivial #!test Shared precooked build paragon Change 3354527 on 2017/03/20 by Wes.Hunt AnalyticsProvider::SetUserID will now flush any pending events before changing the ID. #!jira AN-1660 #!fyi josh.markiewicz,david.nikdel #!rb josh.markiewicz #!tests ran client connected to Solo vs. AI server Change 3353852 on 2017/03/20 by Benn.Gallagher Speculative fix for clothing crashes using Mambo. It was possible that the skeletal mesh component could have triggered deletion or creation of simulation state objects while the simulation was in flight on another thread, added tracking and waiting for outstanding tasks. #!jira OR-36843, UE-42975 #!rb Martin.Wilson #!tests Editor PIE, -game hero gallery Change 3353048 on 2017/03/18 by Jeff.Williams #!ORION_DG - Merge MAIN @CL 3353033 Change 3352845 on 2017/03/17 by Daniel.Lamb Renamed the ConvertRenderTargetToTexture2D function so that it's obvious it's a editor only feature. #!rb Daniel.Wright #!test Editor paragon Change 3352544 on 2017/03/17 by Daniel.Lamb ADded support for ignoring ini settings incompatbilities when using shared cooked builds. #!rb Trivial #!test Shared cooked build paragon Change 3352285 on 2017/03/17 by Daniel.Lamb Fix client side compilation error to do with render texture conversion function #!rb Trivial #!test Compile Paragon Change 3352141 on 2017/03/17 by Daniel.Lamb Added support for blueprint function to convert a rendertexture to a texture. #!rb Daniel.Wright #!test Run in the editor Change 3351612 on 2017/03/17 by Andrew.Grant Expand EngineDir and ProjectDir variables during AppLocal deployment #!tests Jamie verified packaging Orion via the editor works now #!rb Jamie.Dale Change 3350470 on 2017/03/16 by Laurent.Delayen Fix for PS4 compile. #!rb none #!tests PS4 + non unity Change 3350237 on 2017/03/16 by Andrew.Grant Pak-mounting fix from Dev-Core for OR-36896 #!tests na #!rb GIl.Gribb Change 3350079 on 2017/03/16 by Laurent.Delayen Added 'AnimNotify_PlayMontageNotify' and 'AnimNotify_PlayMontageNotifyWindow' to forward notifies Begin/End to 'PlayMontage' AsyncTask. #!rb lina.halper #!tests Yin's BP Change 3349694 on 2017/03/16 by robomerge #!ROBOMERGE-AUTHOR: dan.hertzka Exposing copy/paste actions for properties embedded within IDetailGroup header rows #!rb Matt.Kuhlenschmidt #!tests Copy/paste on skin variant primary override rows #!ROBOMERGE-SOURCE: CL 3349513 in //Orion/Dev-REGS/... via CL 3349675 #!ROBOMERGE-BOT: ORION (Main -> Dev-General) Change 3349560 on 2017/03/16 by David.Ratti Update GameplayTagReferenceHelper to pass in raw data for owner struct (Rather than having caller pass raw 'this' to delegate). Fixes crashes with resizing lists while making calling code less crappy (avoid having to implement copy cstor and operator to fixup delegate). Added GameplayTagReferenceHelper to gameplay cue classes. #!rb none #!tests editor Change 3349305 on 2017/03/16 by Andrew.Grant Merging //Orion/Main to Dev-General (//Orion/Dev-General) #!tests compiled #!rb na Change 3349189 on 2017/03/16 by Benn.Gallagher Fixed clothing not running in PS4 packaged builds #!rb Martin.Wilson #!jira OR-36680 #!tests PS4 cooked OrionEntry with Shinbi Change 3348659 on 2017/03/15 by Daniel.Lamb Fix compilation errors. #!rb None Change 3348646 on 2017/03/15 by Andrew.Grant Unshelved from pending changelist '3347778': <description: restricted, no permission to view> Change 3348636 on 2017/03/15 by Daniel.Lamb Fixed issue with rebuildlighting commandlet not checking out separate lighting files. #!rb None #!test ResavePackages commandlet Change 3348559 on 2017/03/15 by Daniel.Lamb Fixed up some iterative ini settings blacklist configs. #!rb Trivial #!test Iterative Cook paragon Change 3348379 on 2017/03/15 by Laurent.Delayen Added simple Async Node 'Play Montage' to use outside of gameplay abilities. #!rb none #!tests none Change 3348035 on 2017/03/15 by Ben.Salem Switch automationcheckpoint to being a .log file. Unblocks running on packaged builds in paragon. #!rb none #!tests ran oh so very many tests with the changes. Change 3345982 on 2017/03/14 by Zak.Middleton #!orion - OR-36422: Clamp client net send rate for character movement to 60Hz (down from 90). Integrates CL 3345771 from Dev-Framework which adds engine support for specifying the rate parameters, and sets them in Orion DefaultGame.ini to 1/60 second. #!jira OR-36422 #!tests multi-PIE dedicated server, various framerates, net lag, etc. #!rb Laurent.Delayen #!codereview Laurent.Delayen Change 3345134 on 2017/03/14 by Jordan.Walker mono work Change 3344857 on 2017/03/14 by Martin.Wilson Missing includes for transactor header #!rb none Change 3341860 on 2017/03/10 by Chris.Bunner Partial revert of CL 3339904. Fixed material translation error with multiple connections from custom interpolator nodes. #!rb None #!tests Editor, Known trouble materials with interpolator nodes, With/without material functions Change 3341759 on 2017/03/10 by Daniel.Lamb Fixed up NetworkCompatible version so that it works with UGS. #!rb Trivial #!test Cook ps4 paragon. Change 3341616 on 2017/03/10 by Josh.Markiewicz #!UE4 - added define for OGS feature #!rb none #!codereview sam.zamani #!tests compiles Change 3341612 on 2017/03/10 by Josh.Markiewicz #!UE4 - removed old define #!tests compiles Change 3340180 on 2017/03/09 by Daniel.Lamb Integrate fix for sync loading from main to Dev General. #!rb Ben.Zeigler Change 3339904 on 2017/03/09 by Chris.Bunner Fixed material translation error when custom interpolator node hooked to multiple function outputs. #!rb None #!tests Editor Change 3339280 on 2017/03/09 by Josh.Markiewicz #!UE4 - removed WebBrowser moduel dependency on OnlineSubsystem - added 2 functions to online engine interface #!codereview sam.zamani, ben.marsh Change 3338654 on 2017/03/08 by Daniel.Lamb Fixed up some issues with iterative ini settings. Added support for target platforms exposing which audio formats they use so they can match up supported formats with different machines. #!rb None #!test Cook paragon iteratively Change 3336989 on 2017/03/08 by Ben.Marsh Merging CL 3336693 from Dev-Core: Use shared PCHs for game plugins by default, to reduce time spent generating individual PCHs. #!rb none Change 3336135 on 2017/03/07 by Michael.Trepka Hide GameLayerManager's title bar on exiting PIE #!rb Dan.Hertzka #!tests Tested in the editor on Windows Change 3335324 on 2017/03/07 by Aaron.Eady Chat; Adding AddedItem, CompletedItem, and DiscardedItem to the chat message type enum so we can control the color for each. Set the colors in the Social asset. Creating client record settings for turning on/off the added item, completed item, and discarded item in chat. Put these in the gameplay settings menu. Added horizontal boxes to the gameplay settings menu because we are running out of space. Added a vertical scroll bar to the gameplay settings menu but it doesn't seem to show. Also fixed the horizontal scroll bar at the bottom to be horizontal instead of vertical. #!rb Matt.Schembari #!tests MCP, PIE #!lockdown Nicholas.Davies #!RN Change 3333541 on 2017/03/06 by Jason.Bestimt #!ORION_DG - Merge MAIN @ CL 3333512 #!RB:none #!Tests:none #!codeReview: cameron.winston Change 3332578 on 2017/03/04 by Andrew.Grant Temp Disabled wrong-looking warning #!tests #!rb na #!ROBOMERGE: Main Change 3332555 on 2017/03/04 by Andrew.Grant Proper fix for Tencent DLL issue #!tests #!rb na #!ROBOMERGE: Main Change 3332552 on 2017/03/04 by Andrew.Grant Fix for Tencent DLL issue while staging #!tests none #!rb none #!ROBOMERGE: Main Change 3332216 on 2017/03/03 by Jason.Bestimt #!ORION_DG - Merge MAIN @ CL 3332168 #!RB:none #!Tests:none Change 3332060 on 2017/03/03 by Daniel.Lamb Fixed issue with AsyncLoading code eventually flushing async loading while in async loading... This causes all kinds of cool stuff like objects on the stack corruption and also deleted memory accesses. #!rb Gil.Gribb. #!test Editor and -game Change 3331680 on 2017/03/03 by Jason.Bestimt #!ORION_MAIN - Merge MAIN @ CL 3331636 #!RB:none #!Tests:none #!codeReview: andrew.grant Change 3331412 on 2017/03/03 by James.Hopkin #!orion Rebuilt OpenSSL libs for PS4 to fix process termination due to SIGPIPE on closing websockets Source change committed in CL#!3331380 #!jira OR-36274 #!fyi Paul.Moore Change 3331375 on 2017/03/03 by Sam.Zamani fix dll path for tenproxy #!rb none #!tests none Change 3330953 on 2017/03/02 by Jason.Bestimt #!ORION_DG - Merge MAIN @ CL 3330924 [STOMPED ChestOpeningScreen.uasset] #!RB:none #!Tests:none #!codeReview: bryan.rathman, phil.buuck, matt.schembari, andrew.grant Change 3330646 on 2017/03/02 by Andrew.Grant Warning and non-unity fix #!tests compiled #!rb none Change 3330388 on 2017/03/02 by Andrew.Grant Merging //Orion/Main to Dev-General (//Orion/Dev-General) #!tests #!rb na Change 3329982 on 2017/03/02 by Sam.Zamani fixed updated module rules #!rb none #!tests regen projects Change 3329964 on 2017/03/02 by Sam.Zamani Copying //Tasks/Orion/Dev-Online-Tencent to Dev-General (//Orion/Dev-General) 3245325 Adding new OSS for Tencent online platform 3245448 tencent third party SDK TCLS proxy functionality #!rb none 3245474 missing include #!rb none 3249585 TCLS tenproxy.dll in thirdparty bin folder #!rb none 3249726 Load TenProxy.dll for TCLS integration New OSS Tencent #!rb none 3255571 tencent configs #!rb none 3255826 Tencent TCLS paragon launcher #!rb none 3256168 TCLS launch batch update cmd line options #!rb none 3256170 Added "TencentLive,TencentDev" MCP config entries #!rb none 3256504 xmpp config update #!rb none 3273168 skip login steps for tencent config update #!rb none 3279427 #!xmpp add option to use plain text auth 3279428 disable ssl and use plain text auth for XMPP connection temporary until we have a valid cert setup on Tigase deployment 3281566 enabled OSS tencent this will also be the toggle for detecting when to enable tencent functionality at runtime 3283103 differentiate between tencent dev/live environments disable QoS region selection for tencentdev 3283106 lower http verbosity 3283734 config updates 3285066 disable replays and mtx for tencent build 3291005 #!online,mcp service config bEnabled flag to toggle individual services as needed 3291006 explicitly mark unneeded Mcp services as disabled 3291108 allow replay tab to be disabled via UOrionRuntimeOptions.bEnableReplays=false 3291492 disable recording of replays for tencent mode 3292750 disable replay tab based on bEnableReplays=false 3292753 new orion runtime option bDisallowCoinPurchases if true, prevents coins from being available for purchase 3292755 diable mtx coin offers if bDisallowCoinPurchases=true 3292759 missing header 3293246 disable query for available friend codes if bEnableFriendCodes=false 3293250 temp usage of NULL analytics provider 3298025 Adding optional RegionTencent plugin for overriding config files 3298027 ability to override config cache values via plugin config files 3311016 default to TencentDev backend when running in tencent mode 3311017 CMS tencent config 3311022 Rename RegionTencent to RegionCN 3312470 disable links for tencent build 3313014 move tenproxy.dll to \OrionGame\Binaries\ThirdParty\Tencent 3314861 tenproxy 2.0.2.7 update 3314878 default RegionCN plugin to disabled this will only be enabled once the RegionCN.pak is loaded 3314879 TCLS launcher pointing at UE4Editor.exe for development 3315257 missing file 3323573 remove TCLS launcher 3326006 Tencent TLOG SDK 3326277 wrapper singleton class for tenproxy connection 3329180 Tencent support for login flow 3329181 WIP tenproxy connection usage in identity 3329624 wip tcls proxy #!rb none #!tests none Change 3329651 on 2017/03/02 by Andrew.Grant Merging from //UE4/Main @ 3322856 through Orion-Staging #!tests QA #!rb na Change 3329411 on 2017/03/02 by robomerge #!ROBOMERGE-AUTHOR: dan.hertzka Duplicating CL 3303733 from Dev-Editor (simple fix for a massive issue) - This will prevent any TAssetPtr property from getting stomped by undo/redo (you know those ridiculous store and card art issues? Fixed!) #!lockdown Jason.Bestimt #!rb none #!tests Undo on an item definition asset #!ROBOMERGE-SOURCE: CL 3329404 in //Orion/Release-38.3/... via CL 3329405 #!ROBOMERGE-BOT: ORION (Main -> Dev-General) Change 3328858 on 2017/03/01 by Lina.Halper Fixed crash on importing animation that was edited before #!rb: none #!tests: reimport Change 3328459 on 2017/03/01 by Daniel.Lamb When adding new ddc back ends to the hierarchcial ddc make sure to update the async backends lists. #!codereview Gil.Gribb #!test None #!rb Trivial Change 3328182 on 2017/03/01 by Daniel.Lamb Unshelved from pending changelist '3318009': Adding support for shared cooked builds to be downloaded from the network. Included CookedAssetRegistry in the p:\ published builds. #!rb Ben.Marsh Change 3327856 on 2017/03/01 by Frank.Gigliotti Added velocity overrides to FRK4SpringInterpolator; #!RB None #!codeReview Laurent.Delayen #!Tests PIE Change 3327096 on 2017/03/01 by David.Ratti Added generic reference viewer details customization for gameplay tags. Added it to GameplayStatsMetaData. #!rb none #!tests editor Change 3326177 on 2017/02/28 by Daniel.Lamb Added some more debugging information to help track down live issue. #!rb Chris.Bunner #!test Ran editor. Change 3324951 on 2017/02/28 by David.Ratti UDataTable: added AddRow/RemoveRow native functions. #!rb JB #!tests na Change 3323852 on 2017/02/27 by David.Ratti Fix ::RequestAllGameplayTags OnlyIncludeDictionaryTags option #!codereview Ben.Zeigler #!rb #!tests na Change 3323706 on 2017/02/27 by Jason.Bestimt #!ORION_DG - Merge MAIN @ CL 3323694 #!RB:none #!Tests:none Change 3321945 on 2017/02/24 by Jon.Lietz OR-36258 - fixing an issue where gameplay effects that are set to not refresh the period should not allow the execution of a period effect on application. #!RB David.Ratti #!tests golden path #!codeReview: Billy.Bramer, Fred.Kimberley #!RNX Change 3321876 on 2017/02/24 by Daniel.Lamb Fixed erroronEngineContentUse flag not being set properly. #!rb Trivial #!test Cook Paragon. Change 3321591 on 2017/02/24 by Jason.Bestimt #!ORION_DG - MAIN @ CL 3321563 #!RB:none #!Tests:none Change 3321260 on 2017/02/24 by Andrew.Grant Fixed issue that was causing missing string references to not show their referencer #!rb none Change 3321040 on 2017/02/24 by Robert.Manuszewski Merging changes 3316253 and 3319134 from Dev-Core: fixes to file log hangs and crashes. #!rb none #!tests Cooked Win64 server and client, played cooked Win64 build Change 3319413 on 2017/02/23 by Jason.Bestimt #!ORION_DG - Merge MAIN @ CL 3319394 #!RB:none #!Tests:none Change 3317905 on 2017/02/22 by Daniel.Lamb Integrate CL 3238291 from Odin Add Plugin content to the asset registry Change the location of AssetRegistry.bin when cooking a plugin as DLC Include AssetRegistry.bin in the cooked plugin staging process Add function to PluginManager to keep list of any plugins that loaded a pak file Use list of plugins with pak files to merge their AssetRegistry.bin files into the main AssetRegistry when it's created #!rb Ben.Marsh #!codereview Chance.Ivey, Daniel.Lamb Change 3317648 on 2017/02/22 by Cody.Haskell Instead of popping an external web browser, we use the SWebBrowser widget on GFN. #!rb DanH #!codereview Andrew.Grant, Dan.Hertzka, Matt.Schembari #!tests PIE Change 3317289 on 2017/02/22 by Jason.Bestimt #!ORION_DG - Merge MAIN @ CL 3317254 #!RB:none #!Tests:none Change 3317186 on 2017/02/22 by Mieszko.Zielinski Fixed items that have been force-scored by an EQS test as 'failed' getting discarted even if the test is being run in scoring-only mode #!UE4 #!test golden path #!rb Lukasz.Furman #!codereview Daniel.Broder, John.Abercrombie Change 3317005 on 2017/02/22 by Daniel.Lamb Submitted wrong version of my file. #!rb Trivial #!test Compile Change 3316958 on 2017/02/22 by Daniel.Lamb Added support in buildcookrun for shared cooked builds. #!rb Trivial #!test BuildCookRun iterative script Change 3316942 on 2017/02/22 by Daniel.Lamb DLC cooking optimization. Optimization to determining package dependency tree, now is async. Fixes for iterate shared cooked build. Added fallback when using shared cooked build to local build if local build is newer. Added DLC cooking warning if you are overriding output directories. Removed previous release packages names from DLC asset registry. Only generate manifest for additional assets instead of all assets. Minor optimization to worst case resolving of string asset references. Only resolve those that haven't been resolved before (only happens when GC thrashing happens). #!rb Andrew.Grant #!test Cook paragon [CL 3365166 by Andrew Grant in Main branch]
2017-03-26 15:18:02 -04:00
virtual void GetAllTextureFormats(TArray<FName>& OutFormats) const override;
#endif //WITH_ENGINE
virtual bool SupportsVariants() const override;
virtual void GetBuildProjectSettingKeys(FString& OutSection, TArray<FString>& InBoolKeys, TArray<FString>& InIntKeys, TArray<FString>& InStringKeys) const override
{
OutSection = TEXT("/Script/AndroidRuntimeSettings.AndroidRuntimeSettings");
InBoolKeys.Add(TEXT("bBuildForArm64")); InBoolKeys.Add(TEXT("bBuildForX8664"));
InBoolKeys.Add(TEXT("bBuildForES31")); InBoolKeys.Add(TEXT("bBuildWithHiddenSymbolVisibility"));
InBoolKeys.Add(TEXT("bSaveSymbols")); InStringKeys.Add(TEXT("NDKAPILevel"));
}
virtual bool ShouldExpandTo32Bit(const uint16* Indices, const int32 NumIndices) const override;
//~ End ITargetPlatform Interface
Copying //UE4/Dev-VR to //UE4/Dev-Main (Source: //UE4/Dev-VR @ 4064755) #lockdown Nick.Penwarden ============================ MAJOR FEATURES & CHANGES ============================ Change 3873313 by Nick.Atamas Merging CL 3834212 using //UE4/Dev-VR=>//Tasks/UE4/Dev-VR-4.19a Merging CL 3805354, CL 3822769, CL 3827454, CL 3831789 //UE4/Partner-Google-VR/Engine/... to //Tasks/UE4/Dev-VR-4.19a/Engine/... Change 3873330 by Nick.Atamas Merging CL 3835373 using //UE4/Dev-VR=>//Tasks/UE4/Dev-VR-4.19a Merging CL 3777058 //UE4/Partner-Google-VR/Engine/... to //Tasks/UE4/Dev-VR-4.19a/Engine/... and fixing up QAARApp to work with latest ARCore changes. Change 3873791 by Nick.Atamas Merging //UE4/Dev-Main@3866324 to Dev-VR (//UE4/Dev-VR) to get missing files and fixing CIS. Change 3933769 by Keli.Hlodversson Remove unused IStereoRendering::GetCustomPresent #jira UEVR-1083 Change 3935219 by Nick.Atamas QAARApp re-write. Change 3935664 by Mike.Beach Oculus SI 1.23 changes Change 3941505 by Joe.Graf Made the send & recv buffer sizes for the BackChannel plugin configurable Added send & recv counters for tracking the amount of transmission data Change 3944003 by Joe.Graf Added -buildscw to the CMake build command lines for editors to match what XCode is doing on Mac Change 3945189 by Douglas.Copeland Saving Material with Use w/ Static Lighting Flag set to resolve Engine warnings Change 3945245 by Douglas.Copeland Resaving QA_MeshTypes asset to resolve warnings produced by missing info Change 3945266 by Douglas.Copeland Updating TM-HMDNodes LevelBP WallofGets to use PxielDensity instead of ScreenPercentage. Resolving Engine warnings Change 3947785 by Mike.Beach Oculus changes to Android core count - only count usable cores not deadicated to the OS, etc. Change 3951763 by Joe.Graf Fixed thread ordering bug with remote session frame compression Change 3952242 by Joe.Graf Saved about 20-25% of the cpu time for compressing jpeg when performing the cpu swizzle Change 3954571 by Keli.Hlodversson * Add FXRRenderBridge base class containing common code from different CustomPresent implementations. * Create a default implementation of UpdateViewportRHIBridge in FXRRenderTargetManager by adding GetActiveRenderBridge_GameThread. ** The default implementation now handles calling View->SetCustomPresent instead of making it up to the custom present (now XRRenderBridge) implementation (it already had to handle when the custom present was null.) * Remove unused member variable ViewportRHI from RHICustomPresent. #jira UEVR-1081 Change 3954572 by Keli.Hlodversson * Apply XRRenderBridge and XRRenderTargetManager changes to the SteamVR plugin * Move duplicated methods into an already existing BridgeBaseImpl class #jira UEVR-592 Change 3954573 by Keli.Hlodversson * Apply XRRenderBridge refactor to Oculus plugin #jira UEVR-590 Change 3954575 by Keli.Hlodversson * Apply XRRenderBridge refactor to OSVR #jira UEVR-595 Change 3954578 by Keli.Hlodversson * Apply XRRenderBridge refactor to GoogleVR #jira UEVR-594 Change 3954596 by Keli.Hlodversson Add file missing from cl#3954572 Change 3957882 by Jeff.Fisher UEVR-1100 bLockToHmd false doesn't work correctly -CameraComponent can now tell the LateUpdateManager to store, correctly buffered, the fact that we don't want to do late update this frame. DefaultXRCamera checks that flag before applying the late upate to the camera. #jira UEVR-1100 #review-3956168 Change 3957945 by Jeff.Fisher Fix for Oculus begin/end frame problem after XRRenderBridge refactor. -The 'Frame' lifetime in the frame was not long enough, so it was null by the time GetActiveRenderBridge_GameThread was called. NextFrameToRender is the same value, but has a long enough lifetime. #review-3957897 Change 3958760 by Dongsik.Seo Adding UseCameraRotation feature to StereoPanorama plug-in. To enable this feature, use console command SP.UseCameraRotation 7 Simply add numbers to mark axis to use. 1 = Pitch, 2 = Yaw, 4 = Roll 7 means all axis (1+2+4) #review-3958756 @Joe.Conley Change 3959347 by Douglas.Copeland Fixing spelling errors in test displays Change 3964331 by Jason.Bestimt Merging CL 3959979 from 4.19 to Dev-VR + uplugin change from CL 3954046 GoogleARCore Plugin fixes for Unreal 4.19.1 hotfix: Fixed the crash in Acquire/Release UGoogleARCorePointCloud. Fixed the issue that multiple line trace channel doesn't work correctly. Fixed the issue the passthrough camera texture has blue and red channel swapped when building against gles 3.1 Fixed the issue that UGoogleARCorePointCloud::GetPoint doesn't return position in world space. Change 3967485 by Ryan.Vance Removed the exlude rect, we want to clear stencil on the entire surface. Change 3968028 by Zak.Parrish Nuking contents of existing FaceARSample, to be replaced by the one from Release-4.19. Change 3968114 by Zak.Parrish Adding in the new version of FaceARSample from Release-4.19 #rb none Change 3978381 by Mike.Beach Mirroring CL 3969503 from 4.19 Only triggering new Blueprint event, OnMotionControllerUpdated, from the game thread (causing a assert/crash when triggered from the render thread and the component has been destroyed on the main thread). #jira UE-55445 Change 3981160 by Joe.Graf Merged the BackChannel unit test fix over from Owl Change 3981705 by Mike.Beach [WIP] MR Calibration - Expose a config setting that will alter the tracking origin type used to calibrate (eye vs. floor). #jira UE-55220 Change 3981898 by Joe.Graf Added support for Apple hardware accelerated image conversion to JPEG, TIFF, PNG, and HEIF Added a Blueprint latent action to perform the conversion in the background Change 3981910 by Joe.Graf WIP AR texture support so that other systems can interact with the camera data Change 3982102 by Joe.Graf Pull request: Update CMakefileGenerator.cs for CLion Fixed an issue in the PR and added cleanup for the macro errors that result in FOO()= definitions #jira: UE-57103 GitHub #4619 Change 3982883 by Joe.Graf Added a CLionGenerator for consistency Fixed editor preferred source code accessor parsing in the project file generator Added code to detect the bad assumption of the project name always being UE4 and stripped that off in the CLionSourceCodeAccessor #jira UE-54801 Change 3983687 by Joe.Graf Fixed the lack of platform checks for adding a framework in the Apple image utils plugin causing a Switch compile error Change 3984325 by Jeff.Fisher UEVR-1141 PSVR - fix morpheus on pc render target scaling -Hard coding the target size. Perhaps the old method broke with the pixel density change. #review-3983261 Change 3984563 by Joe.Graf Temporarily disabled ConvertToHEIF on Mac until the build machines are updated to XCode 9.3 Change 3985213 by Zak.Parrish Removing a ton of excess art assets that were taking up lots of space and possibly throwing warnings. We weren't going to use them anyway. #rb none Change 3985577 by Joe.Graf WIP support for the Apple Vision API to perform computer vision tasks on images Change 3985654 by Joe.Graf Fixed missing forward declaration hidden by unity files Change 3990596 by Mike.Beach Adding a delegate for handling when the active XR system modifies the tracking space origin, and a API function for getting a transform between floor and eye space. #jira UE-55220 Change 3990788 by Mike.Beach Attempted CIS fix (fallout from CL 3990596) Change 3990824 by Ryan.Vance Re-submitting 4.19.1 hotfox 3968537 Change 3995804 by Jeff.Fisher Merging cl 3995785 //UE4/Dev-VR-Seal/Engine/Source/... to //UE4/Dev-VR/Engine/Source/... UEVR-1148 bLockToHmd change breaking qagame entry level xr camera behavior -Fixing late update when no camera component is in use. -The camera component's bLockToHMD==false behavior is supposed to be that hmd motion is ignored, meaning we should not do a late update. This behavior is being applied TO the XRCamera system FROM the camera component, but the camera component can go away or be switched at any time. We want the default to be do apply hmd motion and late update, so disabling late update needs to be a positive setting applied each frame. #review-3995764 Change 3999842 by Nick.Whiting Exposing Apple ARKit function library as public for our buddies down under. Change 4005541 by Joe.Graf UE-57541 Blacklisted TVOS since it also defines PLATFORM_IOS as 1 #jira UE-57541 Change 4006308 by Jason.Bestimt #DEV_VR - Hopeful fix for possible unity issue Change 4006543 by Joe.Graf Added code to be more correct on setting face blendshapes Change 4007508 by Jason.Bestimt #LUMIN - Adjusting automation tests. - Moved QA specific content test into QA Game - Wrapped controller not found to only happen on device Change 4007515 by Jason.Bestimt #LUMIN - Disabling privilege warning except on device Change 4007552 by Jason.Bestimt #LUMIN - Wrapping LuminTargetPlatform internals that require WITH_ENGINE Change 4008585 by Joe.Graf Added virtual curves for the head rotation information from the FaceAR's face tracking for streaming via LiveLink #jira: UE-57830 Change 4008604 by Mike.Beach MR - Making the chroma key material easier to customize & switch out. Updating the calibration to let you set whatever params you've exposed in the video processing material (removing hardcoded params for old chroma keying material). #jira UEVR-1153 Change 4009396 by Jason.Bestimt #DEV-VR - Removing warning about stat on different threads (CL 4009124) Change 4009514 by Joe.Graf Added a weighted moving average method to the modify curve anim node Change 4010125 by Jason.Bestimt #DEV-VR - Integrating 0.12 changes from Dev-VR-Seal to Dev-VR Change 4010434 by Jason.Bestimt #DEV-VR - Fix for Lumin Haptic Test include Change 4010945 by Jeff.Fisher QAHapticTests build fix -removed unused bad include Change 4011002 by Nick.Atamas Fixed Android compilation. Change 4011220 by Nick.Atamas - Adding visualization for boundary polygons. - Adding support for vertical planes. Change 4011298 by Mike.Beach MR - Revamping the VideoProcessing/ChromaKeying material so that it: 1) Better extracts luminance from the image 2) Utilizes despill to remove chroma bleed from the scene 3) Leverages the generated despill mask to add back in a faux bounce #jira UEVR-1153 Change 4011858 by Keli.Hlodversson Move ExecuteOn(RHI|Render)Thread from Oculus plugin into XRThreadUtils.{h|cpp} inside the HMD module Use TFunction and TFunctionRef instead of std::function as arguments. (Depends on the changes in CL#3987166: Allow overloading of functions which take TFunctions or TFunctionRefs with mutually exclusive signatures.) -- Ref for methods that guarantee the function has been invoked before returning, TFunction for *_NoWait, as the function may not get execured until later when RHI is in a separate thtread and not bypassed. #jira UE-57380 Change 4011956 by Keli.Hlodversson Fix missing includes after CL#4011858 Change 4012096 by Joe.Graf Disabled building AppleVision on Mac until there's a good solution for older Mac OSes Change 4012294 by Jason.Bestimt #DEV-VR - Adding dependency on LuminRuntimeSettings to MagicLeap module. Hopefully, this will fix the generated files not being found Change 4012390 by Jason.Bestimt #DEV-VR - Misc fixes for static code analysis issues - Guards around GEngine usage - Fix from Rolando for uint32 -> uint64 + shifting warning - Redundant if checks Change 4013426 by Jason.Bestimt #DEV-VR - Guarding RestoreBaseProfile so we don't crash on exit #JIRA: UE-57960 Change 4014661 by Ryan.Vance Initial support for omni-directional stereo captures. https://developers.google.com/vr/jump/rendering-ods-content.pdf Change 4015561 by Jason.Bestimt #DEV-VR - Moving MLSDK out of thirdparty directory to fix static code analysis issue Change 4016202 by Jason.Bestimt #DEV-VR - Integrated CL 2685 from Seal depot #JIRA: UEVR-1157 Change 4016448 by Jason.Bestimt #DEV-VR - Adding LuminRuntimeSettings as dependent modules for anything that references the MLSDK Change 4016457 by Ryan.Vance #jira UE-58018 Cleaning up compiler errors/warnings. Change 4017246 by Jason.Bestimt #DEV-VR - Potential fix for UE-58043 where metal asserts that it should be in the render thread rather than either the render thread OR RHI Thread #JIRA: UE-58043 Change 4018571 by Joe.Graf Added a remapping of curve values in a range to the modify curve anim node Change 4018991 by Joe.Graf Wrapped vertical plane detection in a if iOS 11.3 check since ARKit 1.5 is only availabe from 11.3 on #jira: UE-57999 Change 4019068 by Joe.Graf Changed how Apple Vision support is enabled in code #jira: UE-57552 Change 4019194 by Joe.Graf Added a console command to change where Face AR is publishing LiveLink curve data "LiveLinkFaceAR SendTo=192.168.1.1" Change 4019648 by Keli.Hlodversson Work around build failures caused by missing virtual destructor warnings. Reverting back to Oculus' original method of implementing own RHICommand wrapper around TFunctions and TFunctionRefs (using overloaded inline functions and templates to reduce code duplication.) Change 4019871 by Joe.Graf Changed the __IPHONE_11_3 to the raw numeric value Change 4020121 by Keli.Hlodversson Fix parameter types to match header declarations. Change 4020127 by Keli.Hlodversson Remove dllimport/export macros from cpp file. Change 4020621 by Joe.Graf Wrapped the Apple ARKit plane geometry building in a #if IOS_11_3 check Change 4020910 by Joe.Graf Refactored how ARKit support #define to make it easy to wrap individual features by ARKit version Change 4020952 by Joe.Graf Added checks to make sure PLATFORM_IOS and PLATFORM_TVOS are defined to 0 on non-Apple platforms when checking for ARKit Change 4021116 by Jason.Bestimt #DEV-VR - Integrating CL 4005915 from Dev-Core to remove plugin modules that aren't supported on target platform Change 4021320 by Joe.Graf Fixed warnings resulting from unity builds hiding them Change 4021738 by Chad.Garyet - adding lumin filters - changing defaults for platforms back to true, this was brought over erroneously. #jira none #ROBOMERGE: Dogma, Nightlies Change 4021898 by Chad.Garyet added missing bits from the ue4main script #jira none #ROBOMERGE: Dogma, Nightlies Change 4022583 by Joe.Graf Added functions for checking ARKit version availability at runtime Change 4022610 by Joe.Graf Added checks for ARKit 1.0 availability when creating the AR session to prevent calling invalid selectors on older iOSes Change 4022616 by Joe.Graf Added support for enabling the ARKit 1.5 autofocus setting Change 4022650 by Joe.Graf Defaulted autofocus for AR to on Change 4023026 by Joe.Graf Changed the ARKit video overlay to use the new availability api Change 4023124 by Joe.Graf Switched another version check in the ARKit overlay code to use the faster version Change 4023489 by Ethan.Geller [Dev-VR] #jira none fix AudioMixerModuleName for Lumin. #fyi nick.whiting, jason.bestimt Change 4023995 by Nick.Atamas Properly deprecated the bitfield for plane detection mode. #jira UE-57842 Change 4024992 by Jason.Bestimt #DEV-VR - Adding SupportPlatforms to MagicLeapAnalytics plugin Change 4025702 by Jason.Bestimt #DEV-VR - Fix for loading ML libraries even when the MLSDK is not present #JIRA: UE-58033 Change 4026639 by Mike.Beach Removing innocuous Oculus error that did not match up with the rest of the code - it is handled/acceptable when Frame_RenderThread has been reset. #jira UE-58001 Change 4026949 by Mike.Beach MR - Making a few fixes to the lens undistortion and how it interacts with the MRC component... - Switching to a 16bit displacement map instead of a 32bit UV map (updating the materials accordingly) - Using the OpenCV focal ratio to scale the aspect ratio to avoid stretching from the undistortion - Adding CVar commands to enable/disable pieces of the undistortion - Changing the default undistortion cropping to be uncropped - Removing the need for the 'EnableMapping' material parameter #jira UE-55195 Change 4027147 by Jason.Bestimt #DEV-VR - Fix for UE-58043 (more call sites where it should be Render OR RHI thread) #JIRA: UE-58043 Change 4027301 by Mike.Beach Updating the MRCalibration project's ini so it doesn't error on packaging. Change 4027469 by Mike.Beach MR Calibration - Setting StartInVR to true, so when we package the app, we don't have to manually enable it. Change 4027957 by Mike.Beach As part of renaming the MR plugin, first renaming the root folder to be MixedRealityCaptureFramework. #jira UE-57782 Change 4029182 by Keli.Hlodversson Revert back to not enqueuing RHI tasks when RHI is not on a separate thread. Oculus code depends on being able to call ExecuteOnRHIThread from code potentially called from within other calls to ExecuteOnRHIThread. #jira UE-58079 Change 4029687 by Dragan.Jerosimovic Boy rig and pose asset mb files, maps and masks Change 4030059 by Mike.Beach As part of renaming the MR plugin, renaming the inner module to be MixedRealityCaptureFramework. #jira UE-57782 Change 4030296 by Charles.Egenbacher #LUMIN Copying from Dev-Incoming-Staging to Dev-VR Change 4030593 by Jason.Bestimt #DEV-VR - Merging olaf test maps to Dev-VR Change 4031042 by Keli.Hlodversson Allow executing ExecuteOnRHIThread* on the RHI thread. Enables simplifying destructors that can either be invoked on the RHI or Render thread. #jira UE-58239 Change 4031046 by Keli.Hlodversson Use the new XRThreadUtils functions in the HMD module for executing tasks on the RHI thread #jira UE-58238 Change 4032593 by Mike.Beach As part of renaming the MR plugin, renaming the inner module to be MixedRealityCaptureCalibration. #jira UE-57782 Change 4033911 by Jason.Bestimt #DEV-VR - Fix to LuminToolChain to allow it use a custom strip executable (android instead of gcc) Change 4034087 by Mike.Beach Renaming the MR plugin to be the 'MixedRealityCaptureFramework' plugin. #jira UE-57782 Change 4034253 by Joe.Graf Made the Apple Vision plugin use version checking consistent with ARKit Change 4034543 by Joe.Graf Added availability checks for the Apple Image Utils plugin similar to ARKit #jira: UE-57541 Change 4034548 by Joe.Graf Fixed the implicit conversion in the head rotation curves from the face ar feed causing the values to be 0 Change 4034577 by Jason.Bestimt #DEV-VR - Removing MAC Custom Metal present (fixes Mac with -game rendering all black) Change 4034605 by zak.parrish Checking in test case for head rotation tracking - minor temporary change to AnimBP #rb none Change 4034686 by Jason.Bestimt #DEV-VR - Integrating (most of) CL 3980919 to disable instances of deprecation warnings caused by building for ios11 #JIRA: UE-58046 Change 4034799 by Joe.Graf Added base types for detecting images in a AR session Change 4034820 by Joe.Graf Added a friendly name to UARCandidateImage objects Change 4035010 by Joe.Graf Added support for handling ARImageAnchor notifications from ARKit Change 4035355 by Mike.Beach [WIP] MR - Renaming some classes to reflect the plugin's new name. #jira UE-57782 Change 4035464 by Joe.Graf Added orientation to the ARCandidateImage object to pass to the detection system Change 4035524 by Mike.Beach [WIP] MR - More renaming of some classes to better match the plugin's new name. #jira UE-57782 Change 4035606 by Mike.Beach [WIP] MR - More renaming of some classes to better match the plugin's new name. #jira UE-57782 Change 4035918 by Mike.Beach [WIP] MR - Renaming the MrcFramework module's source files to better match the plugin's new name. #jira UE-57782 Change 4035976 by Mike.Beach [WIP] MR - Renaming some more files and classes to better match the MRC framework's new name. #jira UE-57782 Change 4036044 by Ryan.Vance #jira UEVR-377 Adding support for ISR Translucency. Change 4036069 by Ryan.Vance We can remove the last word PrimitiveVisibilityMap masking for ISR since the maps are always the same size between views. Change 4036073 by Chance.Ivey Fixed select blocks on LuminSamplePawn and GesturesAndTotem map to reflect recent changes. Fixes #JIRA UE-58328 #rb none Change 4036307 by Mike.Beach [WIP] MR - Renaming the MRC calibration files to better match the MRC framework's new name. #jira UE-57782 Change 4036314 by Mike.Beach [WIP] MR - Renaming some more calibration classes to better match the MRC framework's new name. #jira UE-57782 Change 4036319 by Charles.Egenbacher #LUMIN this is an out-of-date version of the lumin sample. Nuking. Change 4036396 by Charles.Egenbacher #LUMIN Adding the up to date version of the LuminSample. Change 4036485 by Sorin.Gradinaru UE-57773 Disable Thermals Message #4.20 #iOS Add in the Remote Session App BP an Execute Console Command node immediately after Event Begin Play, disabling all on-screen messages, for all builds. Change 4036695 by Jason.Bestimt #DEV-VR - Adding Lumin case to PrecompileTargetType check Change 4037110 by Jason.Bestimt #DEV-VR - Extra deprecated macro guards around HarfBuzz includes #JIRA: UE-58046 Change 4037443 by Jason.Bestimt #DEV-VR - Merging CL 4028003 from Partners-Google Change 4037490 by Jason.Bestimt #DEV-VR - Integrating CL 4028922 from Partners-Google (+ assignment guarding) Change 4037691 by Jason.Bestimt #DEV-VR - Swapping order of comparrison operator to deal with const error Change 4037892 by Joe.Graf Added UTexture2D to CGImage conversion in Apple Image Utils plugin Change 4037894 by Joe.Graf Changed the name of a property to make it clearer as to what it is and to have fewer things named similar in the same system Change 4037901 by Joe.Graf Added support for configuring which images you'd like detected during a AR session Change 4037906 by Jason.Bestimt #DEV-VR - Fixing buckled logic for =operator (derp) Change 4038293 by Mike.Beach [WIP] MR - Moving the calibration setup/level/content into its own project, and out of the MR plugin. #jira UE-57782 Change 4038403 by Joe.Graf Added the name from the candidate image when creating the Apple side representation Change 4038488 by Mike.Beach [WIP] MR Calibration - Moving calibration specific files to the MRCalibration project, out of the plugin (followup to CL 4038293). This makes the MRCalibration project a code project now. #jira UE-57782 Change 4038776 by Chance.Ivey Updates to Fix for Gestures change. Affects #JIRA UE-58328, though other non-content issues may cause packaging to fail #rb none #fyi Nick.Whiting Change 4038877 by Mike.Beach [WIP] MR - Renaming assets to better match the new plugin name. #jira UE-57782 Change 4039097 by Joe.Graf Fixed the public include path warnings in the Apple* plugins I added Change 4039106 by Joe.Graf Worked around a bad compile time assert that blocked valid FString::Printf debug code Change 4039209 by Jeff.Fisher Fixing one build script paths Change 4039275 by Jeff.Fisher More include path fixes. Change 4039415 by Joe.Graf Added support for remote session sending AR camera image data to be rendered on the host like we do for AR on device Change 4039471 by Joe.Graf Added a file I missed when adding to the remote session plugin Change 4039473 by Joe.Graf #ifdef-ed some code out until the linkage can be fixed Change 4040249 by Mike.Beach [WIP] MR - Moving some more asset files that aren't needed for the MRC plugin #jira UE-57782 Change 4040365 by Mike.Beach Fixing a compiler issue in the MRCalibration project, since moving MRC files there (WITH_OPENCV is not defined for the project). #jira UE-57782 Change 4040455 by Mike.Beach Moving the few remaining methods that were calibration specific, sprinkled through the MRC plugin. #jira UE-57782 Change 4041404 by Mike.Beach Fixing an issue with BP async nodes - making it so their wrapped function can be renamed and redirected. Change 4041406 by Mike.Beach MR - Splitting the Mrc video util library so that the BP functions needed for calibration aren't exposed to users. #jira UE-57782 Change 4042110 by Jason.Bestimt #DEV-VR - Stopping spew for ML eye tracking when not on platform #JIRA: UE-58365 Change 4042407 by Joe.Graf Disabled HEIF compression on Mac #jira: UE-58479 Change 4042727 by Jason.Bestimt #DEV-VR - Fix for Android compiling without version 24 Change 4042861 by Olaf.Piesche #jira UE-57784 Change 4043105 by Mike.Beach Exposing a way for programmers to strip save game headers from save data, and get to the tagged object serialization portion. #jira UE-58389 Change 4043120 by Mike.Beach MR - Loading the base save data, even if we're unable to fully construct the original save object class. #jira UE-58389 Change 4043401 by Mike.Beach New Oculus poke-a-hole material, in support on SI 1.25. Checking in to alleviate QA contention for testing the rest of SI 1.25. #jira UEVR-1143 Change 4043424 by Mike.Beach Oculus SI 1.24/1.25 - Engine rendering changes #jira UEVR-1143 Change 4043495 by Mike.Beach CIS fix - Missing files needed for the Oculus SI 1.24/25 Vulkan changes. #jira UEVR-1143 Change 4043642 by Zak.Parrish Changes to FaceARSample: added in support for JoeG's smoothing algorithm, also refactored calibration to use the new Modify Curves node. Added some more comments to the AnimBp to make it easier to read. #rb none Change 4045638 by Zak.Parrish Some minor updates to FaceARSample content. Mostly refactoring for new ModifyCurve stuff. Change 4046003 by Jason.Bestimt #DEV-VR - Fix for bEnableAlphaChannelInPostProcessing reading in as false for LuminSample bEnableAlphaChannelInPostProcessing translates to r.PostProcessing.PropagateAlpha in ini files #JIRA: UE-58523 Change 4046548 by Jules.Blok Fix SetInstancedEyeIndex() ignoring the left eye. #jira UE-54044 Change 4046859 by zak.parrish Checking in the new rig from 3Lateral - this prevents the eyelashes from separating Change 4047060 by Nick.Whiting Wrapping -norhithread in PLATFORM_LUMIN to prevent the ML plugin from always disabling RHI threading. #jira UEVR-1192 Change 4047667 by Mike.Beach CIS fix - removing uneeded line from bad merge. Change 4047673 by Mike.Beach More CIS fixes for fallout from recent rendering merge. Change 4048227 by Rolando.Caloca VR - vk - Some Vulkan merge conflicts resolved Change 4048421 by Jason.Bestimt #DEV-VR - Converting OwnerName to EventName in UpdateSceneCaptureContent_RenderThread call Change 4048423 by Jason.Bestimt #DEV-VR - Fixing mediandk version check Change 4048452 by Rolando.Caloca VR - Merge fix Change 4048530 by Rolando.Caloca VR - Merge fix Change 4048607 by Jason.Bestimt #DEV-VR - Probable repair of Mr Mesh post merge Change 4048794 by Rolando.Caloca VK - Fix mobile from merge Change 4048972 by Jeff.Fisher Fixing MeshReconstructor merge problems. Change 4049969 by Ryan.Vance Fixing missing shader assert. Change 4050831 by Ryan.Vance Merge clean up. This is still needed to build w/ vulkan on Lumin. Change 4050854 by Ryan.Vance Merge clean up. We need GetAllocationHandle for the ML Vulkan custom present sRGB workaround. Change 4051495 by Jason.Bestimt #DEV-VR - Adding Android, Quail, Linux vulkan include clauses Change 4052528 by Zak.Parrish Changing defaultEngine.ini for the higher res version of Gremlin Change 4052880 by Ryan.Vance Merge clean up. Now with more Lumin #jira UE-58645 Change 4052991 by zak.parrish Update to FaceTrackingMap2 for proper camera positioning Change 4053139 by Nick.Whiting Fixing Lumin Vulkan platform header Change 4053352 by Mike.Beach On PC (in editor), not enabling ML stereo by default. Waiting for it to be enable by the EnableStereo() call (like we do for Oculus/SteamVR). #jira UE-57991 Change 4053644 by Nick.Whiting Fix for build break by wrapping bStereoDesired in !PLATFORM_LUMIN Change 4054329 by Jason.Bestimt #DEV-VR - Resave of GoogleARCorePassthroughCameraMaterial.uasset #JIRA: UE-58689 Change 4054785 by Mike.Beach Fixing a MRCalibration BP compilation error from the latest merge - was using a deprecated variable which was no longer exposed to BPs. Change 4055466 by Jules.Blok Suppress SteamVR submission errors after they've been logged once. Change 4055500 by Jason.Bestimt #DEV-VR - MrMeshComponent fix for unsupported pixel format #JIRA: UE-58759 Change 4055761 by Ryan.Vance #jira UE-58729 There's a single frame where the TLV textures are not initialized when using FCanvasTileRendererItem on startup. Change 4056008 by Mike.Beach Fixing bad merge from Main. Change 4056616 by Nick.Whiting Changing UBT configs to use Lumin-specific config files #jira UE-58760 Change 4056969 by Keli.Hlodversson MRCalibration: Set r.SceneRenderTargetResizeMethod to "Grow" to avoid cycling the scene render target size on every frame causing a flicker #jira UE-58191 Change 4057356 by Jason.Bestimt #DEV-VR - Guard around JNI function for Lumin Change 4059353 by Nick.Whiting Fix for shadow variable warnings on Linux #jira UE-58843 Change 4060158 by Rolando.Caloca DVR - vk - Temporarily add backbuffer delay/extra copy blit on android #jira UE-58859 Change 4060432 by Mike.Beach Fix for shadow variable warnings on Linux #jira UE-58843 Change 4060520 by Rolando.Caloca VR - Proper fix for r.Vulkan.DelayAcquireBackBuffer=0 - Restore Android to not delay #jira UE-58859 Change 4060587 by Nick.Whiting Fix for minimum iOS version being set to iOS 8 on MRCalibration, which was causing CIS warnings #jira UE-58762 Change 4061277 by Jeff.Fisher UE-58861 //UE4/Dev-VR - Compile UE4Game Lumin - ERROR: MLSDK is not specified; cannot use Lumin toolchain. -Overriding HasAnySDK to setup the MLSDK. Change 4061308 by Jason.Bestimt #DEV-VR - Work around of UE-58864 crashing when mousing over project launcher with only a Lumin device plugged in #JIRA: UE-58864 Change 4062111 by Ryan.Vance #jira UE-58875 Fixing audio compilation failure. Change 4064091 by Jason.Bestimt #DEV-VR - Disabling ML Plugin with the editor when bIsVDZIEnabled is off #JIRA: UE-58954 Change 4064554 by Jason.Bestimt #DEV-VR - Removing ML haptic tests when not on the platform #JIRA: UE-58966 Change 4064755 by Jeff.Fisher UE-58970 Dev-VR - Incremental UE4Editor Linux - Referenced directory 'D:\Build\AutoSDK\HostWin64\Lumin\0.12\lib\linux64' does not exist. -Removed linux from magicleap plugin whitelists, we have no sdk for linux. #review-4064614 #jira UE-58970 [CL 4064889 by Mike Beach in Main branch]
2018-05-10 14:17:01 -04:00
virtual void InitializeDeviceDetection();
protected:
virtual FAndroidTargetDevicePtr CreateTargetDevice(const ITargetPlatformControls& InTargetPlatform, const FString& InSerialNumber, const FString& InAndroidVariant) const;
protected:
/**
* Return true if this device has a supported set of extensions for this platform.
*
* @param Extensions - The GL extensions string.
* @param GLESVersion - The GLES version reported by this device.
*/
virtual bool SupportedByExtensionsString(const FString& ExtensionsString, const int GLESVersion) const
{
return true;
}
// Handles when the ticker fires.
bool HandleTicker(float DeltaTime);
virtual FAndroidTargetDeviceRef CreateNewDevice(const FAndroidDeviceInfo& DeviceInfo);
// Holds a map of valid devices.
TMap<FString, FAndroidTargetDevicePtr> Devices;
// Holds a delegate to be invoked when the widget ticks.
FTickerDelegate TickDelegate;
// Handle to the registered TickDelegate.
FTSTicker::FDelegateHandle TickDelegateHandle;
// Pointer to the device detection handler that grabs device ids in another thread
IAndroidDeviceDetection* DeviceDetection;
#if WITH_ENGINE
ITargetDevicePtr DefaultDevice;
#endif //WITH_ENGINE
FAndroidTargetPlatformSettings* AndroidTargetPlatformSettings;
};
class FAndroid_DXTTargetPlatformControls : public FAndroidTargetPlatformControls
{
public:
FAndroid_DXTTargetPlatformControls(bool bIsClient, ITargetPlatformSettings* TargetPlatformSettings) : FAndroidTargetPlatformControls(bIsClient, TargetPlatformSettings, TEXT("DXT"))
Copying //UE4/Dev-Mobile to //UE4/Dev-Main (Source: //UE4/Dev-Mobile @ 4047413) #lockdown Nick.Penwarden #rb none ============================ MAJOR FEATURES & CHANGES ============================ Change 3795481 by Nick.Shin HTML5 - disable SupportsScreenPercentage() - render the full screen otherwise, this is causing HTML5 screen to only render a portion of the screen and in black... - there may be another function is that not getting fired off "to render the screen" properly - this may be due to IsMobileHDR checks that are not fully accounted for the HTML5 platform #jira UE-52640 HTML5 only renders a black rectangle in the browser when launched Change 3807007 by Nick.Shin HTML5 - remove webgl1 only precompile guards (UE4_HTML5_TARGET_WEBGL2) toolchain can "fallback" to webgl1 -- webgl2 functions in UE4 code are "if checked"/configured/setup at start up #jira UE-51267 WebGL1 fails to compile Change 3822593 by Nick.Shin #jira UE-27141 Remove all #if PLATFORM_HTML5 from high level code Change 3823512 by Nick.Shin #jira UE-27141 Remove all #if PLATFORM_HTML5 from high level code Change 3824639 by Nick.Shin HTML5 - OSX - RunMacHTML5LaunchHelper.command - more helpful warning messages #jira UE-49861 A copied RunMacHTML5LaunchHelper.command gives unspecific Mono error Change 3829092 by Josh.Adams - Updated UnrealRemote to 1.4.1 Change 3832708 by Chris.Babcock Allow UE4Commandline.txt in APK #jira #ue4 #android Change 3835867 by Nick.Shin HTML5 - code cleanup origial work was for: UE-27141 (Remove all #if PLATFORM_HTML5 from high level code) this exposed an issue that i totally forgot about (.../Engine/Source/Developer/... only does builds tools -- which does not make use of PLATFORM_XXX preprocessor) tested with HTML5 builds with QAGame project :: TM-ShaderModels map #jira UE-53524 UE4Editor Static Analysis Win64 (MSVC) - 1 repeat warning Change 3839967 by Mi.Wang Override MaxObjectInGame on Android to save ~30M with the ObjectArray size. #Android Change 3842022 by Mi.Wang Fix an AssetRegistry size calculation bug. Change 3843552 by Sorin.Gradinaru UE-54139 Possible crash with new virtual keyboard on Android if suggestions not disabled #4.19 #Android #jira UE-54139 S8 on 7.0 is not hiding suggestions and disabling predictive input. There are cases with this that can cause a crash. Fix: On text change, downgrade to simple suggestions all the easy correction spans that are not a spell check span (remove android.text.style.SuggestionSpan.FLAG_EASY_CORRECT flags) Change 3844210 by Nick.Shin HTML5 - filter out "windows/super" keys - these are not used in UE4 - but, keycode are not the expected "91 or 92" values, SDL keys are "227 & 231" instead... #jira UE-54056 HTML5 crashes inside browser upon pressing windows key Change 3844874 by Nick.Shin HTML5 - detect "SyntaxError: " and do a forced reload - an actual syntax error would be caught during compile time - this is usually error condition is usually seen when browser is running "old/partial" cached data and it's fairly safe to just reload the page #jira UE-54017 QAGame fails to launch properly on HTML5 Firefox 64 bit Change 3846695 by Nick.Shin #jira UE-53524 UE4Editor Static Analysis Win64 (MSVC) - 1 repeat warning Change 3847309 by Nick.Shin HTML5 - (not to) show virtual joystick - virtual joysticks are not shown by default-- and the mouse not captured - this now behaves like the win64 client version #jira UE-33854 Virtual Joysticks In HTML5 if Mobile/Tablet Project is chosen Change 3847310 by Nick.Shin HTML5 - set controller axis and button max value in code instead of relying on emscripten_get_gamepad_status() - seems emscripten might be uninitialized by the time controlers are used... #jira UE-28513 - Using a controller in HTML5 causes error Change 3850606 by Nick.Shin HTML5 - more static warning fix ups #jira UE-53524 UE4Editor Static Analysis Win64 (MSVC) - 1 repeat warning Change 3850624 by Nick.Shin HTML5 - tell user/developer to show unsupported WebGL browsers on old hardware -- will need to try another browser note: using following jira to track progress: #jira UE-47066 Packaged HTML 5 Map Prompts for Firefox Update in Chrome Change 3855610 by Sorin.Gradinaru UE-49173 Progress bar causes black screen on iOS #iOS #4.20 #jira UE-49173 The bug occurs on iOS with Metal, when the last Slate element to be draw in the scene is a ScrollBar with progress between 0 and 1. As a workaround, adding another widget (eg. button, image) in the Blueprint solves the problem. The bug can be reproduced by adding OutDrawElements.PushClip & OutDrawElements.PopClip in any SWidget::OnPaint. The solution is to disable the scissor RHICmdList.SetScissorRect(false, 0, 0, 0, 0); in FSlateRHIRenderingPolicy::DrawElements after the batch rendering Change 3855652 by Sorin.Gradinaru iOS 3D browser UE-53248 Web Browser on a Widget Component is 2D when launching on to iOS #jira UE-53248 #iOS #4.20 Uses the same WebTexture from the WebBrowser plugin as the Android version. + Code contributed by Juan.Belon from Alea S.r.l at https://udn.unrealengine.com/questions/390166/3d-world-space-widget-is-being-rendered-in-screen.html Change 3856174 by Nick.Shin HTML5 - python forking will still error while trying to terminate already terminated processes - added same "WindowsError code 5" handler found in subprocess.py #jira UE-51618 HTML5 fails to build, [Error 5] Access is denied Change 3863322 by Sorin.Gradinaru UE-54317 DXT apps fail on first launch when 'For Distribution' enabled, Unsupported Texture Format #jira UE-54317 #Android #4.19 Change 3878088 by Nick.Shin UEMOB-425 superceeds this jira #jira UE-25257 Mac HTML5 project crashes upon downloading expression HasFoundDataDirectory failed Change 3884560 by Jack.Porter Fix logspam in FAVMoviePlayer #jira UE-54760 Change 3886533 by Mi.Wang Fix a potential crash that the VirtualKeyboardWidget has been hide while trying to use in gamethread. Change 3889081 by Sorin.Gradinaru UE-54490 Android Startup Movie audio still playing when app paused, and after app resumed the movie is blackscreen until engine ticked. #Android #4.20 #jira UE-54490 Call ForceCompletion for the intial movie player on onPause. Call App Restart on Resume. Programmatically restarting an Android application basically consists in killing the current app, then using the launch intent as parameter for startActivity. This can be done only in onResume , which means that the movie player still has to be manually paused/stopped in onPause. I╞ve tried to kill the activity on onPause, tested on several devices, with various problems: the app doesn╞t restart anymore (onResume is not called) or the app is automatically sent to background (seems to be crashing when using the multitasking soft key). Change 3890320 by Chris.Babcock Fix initializer ordering #jira UE-55189 #ue4 Change 3958226 by Nick.Shin HTML5 disable memory poison tests and fix a bug during Realloc() // for Linux... and in turn for HTML5 #jria none Change 3958250 by Nick.Shin HTML5 - FText::FormatStr - skip if multi-threading not supported #jira none Change 3968328 by Nick.Shin HTML5 CORS fixes still need datarouter.ol.epicgames.com fixes to completely solve these issues. (API server own estimates no later than mid-April) note: the following are all related: + answerhub 756723 - HTML5 CORS / Access-Control-Allow-Headers + answerhub 756942 - HTML5 CORS Issue to my Hosts API / Hosted Server + UE-22285 - Session events are not generated for HTML5 + UE-19330 - HTML5 Analytics cross-origin request blocked header Access-Control-Allow-Origin missing #jira UE-19330 Change 3971405 by Nick.Shin HTML5 suppress double printing to console.log #jira none Change 3978767 by Nick.Shin HTML5 CORS fixes note: the following are all related: + answerhub 756723 - HTML5 CORS / Access-Control-Allow-Headers + answerhub 756942 - HTML5 CORS Issue to my Hosts API / Hosted Server + UE-22285 - Session events are not generated for HTML5 + UE-19330 - HTML5 Analytics cross-origin request blocked header Access-Control-Allow-Origin missing tested (against datarouter.ol.epicgames.com fixes) and found to be functional #jira UE-22285 Change 3981103 by Nick.Shin HTML5 - num pad keys crashes project match latest Engine/Source/Runtime/InputCore/Private/Linux/LinuxPlatformInput.cpp to HTML5PlatformInput.cpp also fix a HUD crash... #jira UE-54056 HTML5 crashes inside browser upon pressing windows key Change 3983424 by Sorin.Gradinaru UE-57107 Attempting to load a streamed media source causes the app to become unresponsive when device is not connected to internet #jira UE-57107 #Android #4.20 The ANR is because the android.media.MediaExtractor.setDataSource(UrlPath) calls an underlying api which retries the download (10-30 times). Additional issue (all platforms): the MediaFrameworkTest/StreamSource_Infiltrator souce seems to have been removed (no longer at https://docs.unrealengine.com/latest/attachments/Engine/MediaFramework/HowTo/StreamMediaSource/Infiltrator%20Demo.mp4). According to the docs (https://docs.unrealengine.com/en-US/Engine/MediaFramework/HowTo/StreamMediaSource) the new location of the Sample Video is at https://dnnrz1gqa.blob.core.windows.net/portals/attachments/Engine/MediaFramework/HowTo/StreamMediaSource/Infiltrator%20Demo.mp4?sr=b&si=DNNFileManagerPolicy&sig=F%2BBpnYueeQTUTSW0nCRSrXEfr35LIawe7C3MQoe2%2FPI%3D Change 3985248 by Nick.Shin HTML5 game window size add project setting drop down box to select canvas scaling mode #jira UE-46555 HTML5 game window does not scale with browser size Change 3986190 by Sorin.Gradinaru UE-56076 Android Launch On "Running..." toast intermittently doesn't appear #jira UE-56076 #Android #4.10 When cancelling Launch on Device, always call CancelContinuations for the current task Change 3986412 by Nick.Shin CIS error fix #jira none Change 3987007 by Nick.Shin HTML5 fullscreen size fix - when using FIXED scale mode initially, there's some strange padding margins - but, setting UE4_fullscreenScaleMode to anything "but FIXED scale mode" will work... #jira UE-46555 HTML5 game window does not scale with browser size Change 3988408 by Nick.Shin HTML5 call EndSession() onbeforeunload() ? should PreExit() be called instead? #jira UE-57207 Session End event is not generated for HTML5 Change 3991828 by Nick.Shin HTML5 shipping build crash some FVector2D needs ContainsNaN() checks #jira UE-57401 Projects packaged for Shipping HTML5 do not launch the engine in the browser Change 3992884 by Nick.Shin HTML5 call EndSession() onbeforeunload() code cleanup #jira UE-57207 Session End event is not generated for HTML5 Change 3992887 by Nick.Shin datarouter: Session events code cleanup #jira UE-22285 - Session events are not generated for HTML5 Change 4002603 by Sorin.Gradinaru UE-56177 Unplugging a device while launching onto it from a source build will result in the "Running..." toast staying open #jira UE-56177 #Android #iOS #4.10 Using the device discovery to signal when the running device gets disconnected Change 4007162 by Dmitriy.Dyomin Merging using Dev-Mobile->FortMain Added ObjectOrientation material node for decals, returns decal projection direction ( X-axis) #jira none Change 4012196 by Sorin.Gradinaru UE-57120 Lighting needs to be rebuilt error appears on Camera test app on Nexus 9 and Note 4. #jira UE-57120 #Android #4.20 Level lightings rebuilt and QA-Media_Camera_BuiltData.uasset added. The message appeared (rarely and only on certain devices) because the engine tries to load the pre-computed lightmap data on the render thread, then to add it to the scene on the game thread (in FPrecomputedVolumetricLightmap::AddToScene). Most of the times there is a desync and the data is not yet loaded when the lightmap is validated (in FScene::AddPrecomputedVolumetricLightmap). Change 4013034 by Sorin.Gradinaru UE-55427 iOS application crashes when suspending and resuming the startup movie in rapid succession #jira UE-55427 #iOS #4.20 Caused by ToggleSuspend waiting for FDefaultGameMoviePlayer::WaitForMovieToFinish() Renamed InitialMovie to StartupMovie, including the methods related to the Android platform. Change 4015449 by Sorin.Gradinaru UE-38306 "Running xxx on yyy" panel Cancel button should terminate app #jira UE-38306 #Android #4.10 Run on device: Pressing Cancel on the "Running..." message should stop the application, if running Cancel Android builds using "adb shell am force-stop <bundle_id> <device_id>" Note: Using a new AutomationTool command (re-starting the Automation tool after canceling the BuildCookRun task chain) is too slow - takes 3-10 sec depending on the PC configuration. AutomationTool is used now only to correctly retrieve the bundle id for each Android device. This is done inside the BuildCookRun command when the application is deployed on the device(s). Cannot simply use the current project's properties to retrieve the bundle id, because when using Launch-> Device Launcher, the user can choose to cook&deploy a different project/texture format, also the user can create & use a profile with multiple devices / with different texture formats. Change 4016057 by Sorin.Gradinaru UE-57845 GitHub 4666 : Pull request clipboard on android #jira UE-57845 #4.20 #Android #4666 https://github.com/EpicGames/UnrealEngine/pull/4666 Implemented Clipboard function on Android. Change 4020229 by Sorin.Gradinaru UE-57845 GitHub 4666 : Pull request clipboard on android #jira UE-57845 #Android #4.20 GameActivity.java: moving the methods related to clipboard above the native public declarations Change 4021188 by Sorin.Gradinaru UE-57876 Location accuracy is ignored by ULocationServicesIOSImpl #jira UE-57876 #iOS #4.30 In ULocationServicesIOSImpl::InitLocationServices(ELocationAccuracy Accuracy, float UpdateFrequency, float MinDistance) the first param must be converted to CLLocationAccuracy and used as the first param of LocationDelegateinitLocationServices, rather than using the hardcoded kCLLocationAccuracyHundredMeters. Also fixed a compilation error (!) when enabling The Location Services plugin on iOS Change 4024839 by Sorin.Gradinaru UE-38306 "Running xxx on yyy" panel Cancel button should terminate app #jira UE-38306 #Android #4.10 Removed unnecessary #include "AndroidTargetDevice.h", causing circular reference => nightly build errors Change 4024962 by Cosmin.Sulea UE-56294 - Packaging step fails when packaging project for distribution #jira UE-56294 Change 4026122 by Sorin.Gradinaru UE-57149 Razer Phone: Crash after Switching Camera Format 22-26 times #jira UE-57149 #Android #4.20 jobject obj = env->GetObjectArrayElement must be followed by env->DeleteLocalRef(obj) The bug can probably be reproduced by using a MediaPlayer. Change 4038185 by Nick.Shin HTML5 - merge error fix MallocAnsi.cpp was stomped on #jira UE-58367 //UE4/Dev-Mobile - Compile UE4Game HTML5 - use of undeclared identifier 'malloc_usable_size' Change 4039521 by Dmitriy.Dyomin Export WorldBrowser API so plugin makers can use it #jira UE-57323 Change 4039523 by Dmitriy.Dyomin Exposed MobilePatchingLibrary API #jira UE-55941 Change 4039526 by Dmitriy.Dyomin Fixed: Hierarchy filtering does not work in world composition #jira UE-57900 Change 4039529 by Dmitriy.Dyomin Fixed: 'Apply Fogging' in Material does not work on Mobile (GitHub 4357) #jira UE-53618 #4357 Change 4039874 by Sorin.Gradinaru UEMOB-436 Support "All Android" Launch On and Project Launcher options The main change is in the DeviceProxy class. A new type ("All devices" proxy) was added, and the proxy now holds a list of physical device IDs for every variant (texture format), instead of a single device ID. The "All devices" proxy is updated automatically by the device discovery thread. The change was necessary because the list in the Project Launcher is using the device proxy list. #jira UEMOB-436 #Android #UE4 #4.19 Change 4041446 by John.Mauney Fix that Chris B made locally on my machine #jira UE-58420 Change 4041791 by Jack.Porter Fix CIS incremental UE4Editor Win64 #jira 0 [CL 4047603 by Jack Porter in Main branch]
2018-05-02 22:53:38 -04:00
{
}
virtual bool SupportedByExtensionsString(const FString& ExtensionsString, const int GLESVersion) const override
{
return (ExtensionsString.Contains(TEXT("GL_NV_texture_compression_s3tc")) || ExtensionsString.Contains(TEXT("GL_EXT_texture_compression_s3tc")));
}
virtual float GetVariantPriority() const override
{
float Priority;
return (GConfig->GetFloat(TEXT("/Script/AndroidRuntimeSettings.AndroidRuntimeSettings"), TEXT("TextureFormatPriority_DXT"), Priority, GEngineIni) ?
Priority : 0.6f) * 10.0f + (IsClientOnly() ? 0.25f : 0.5f);
}
#if WITH_ENGINE
virtual void GetTextureFormats(const UTexture* Texture, TArray< TArray<FName> >& OutFormats) const override;
#endif
};
class FAndroid_ASTCTargetPlatformControls : public FAndroidTargetPlatformControls
{
public:
FAndroid_ASTCTargetPlatformControls(bool bIsClient, ITargetPlatformSettings* TargetPlatformSettings) : FAndroidTargetPlatformControls(bIsClient, TargetPlatformSettings, TEXT("ASTC"))
{
}
virtual bool SupportedByExtensionsString(const FString& ExtensionsString, const int GLESVersion) const override
{
return ExtensionsString.Contains(TEXT("GL_KHR_texture_compression_astc_ldr"));
}
virtual float GetVariantPriority() const override
{
float Priority;
return (GConfig->GetFloat(TEXT("/Script/AndroidRuntimeSettings.AndroidRuntimeSettings"), TEXT("TextureFormatPriority_ASTC"), Priority, GEngineIni) ?
Priority : 0.9f) * 10.0f + (IsClientOnly() ? 0.25f : 0.5f);
}
#if WITH_ENGINE
virtual void GetTextureFormats(const UTexture* Texture, TArray< TArray<FName> >& OutFormats) const;
virtual void GetAllTextureFormats(TArray<FName>& OutFormats) const override;
#endif
};
class FAndroid_ETC2TargetPlatformControls : public FAndroidTargetPlatformControls
{
public:
FAndroid_ETC2TargetPlatformControls(bool bIsClient, ITargetPlatformSettings* TargetPlatformSettings) : FAndroidTargetPlatformControls(bIsClient, TargetPlatformSettings, TEXT("ETC2"))
{
}
virtual bool SupportedByExtensionsString(const FString& ExtensionsString, const int GLESVersion) const override
{
return GLESVersion >= 0x30000;
}
virtual float GetVariantPriority() const override
{
float Priority;
return (GConfig->GetFloat(TEXT("/Script/AndroidRuntimeSettings.AndroidRuntimeSettings"), TEXT("TextureFormatPriority_ETC2"), Priority, GEngineIni) ?
Priority : 0.2f) * 10.0f + (IsClientOnly() ? 0.25f : 0.5f);
}
#if WITH_ENGINE
virtual void GetTextureFormats(const UTexture* Texture, TArray< TArray<FName> >& OutFormats) const;
virtual void GetAllTextureFormats(TArray<FName>& OutFormats) const override;
#endif
};
class FAndroid_MultiTargetPlatformControls : public FAndroidTargetPlatformControls
{
TArray<FAndroidTargetPlatformControls*> FormatTargetPlatforms;
FString FormatTargetString;
public:
FAndroid_MultiTargetPlatformControls(bool bIsClient, ITargetPlatformSettings* TargetPlatformSettings) : FAndroidTargetPlatformControls(bIsClient, TargetPlatformSettings, TEXT("Multi"))
Copying //UE4/Dev-Mobile to //UE4/Dev-Main (Source: //UE4/Dev-Mobile @ 4047413) #lockdown Nick.Penwarden #rb none ============================ MAJOR FEATURES & CHANGES ============================ Change 3795481 by Nick.Shin HTML5 - disable SupportsScreenPercentage() - render the full screen otherwise, this is causing HTML5 screen to only render a portion of the screen and in black... - there may be another function is that not getting fired off "to render the screen" properly - this may be due to IsMobileHDR checks that are not fully accounted for the HTML5 platform #jira UE-52640 HTML5 only renders a black rectangle in the browser when launched Change 3807007 by Nick.Shin HTML5 - remove webgl1 only precompile guards (UE4_HTML5_TARGET_WEBGL2) toolchain can "fallback" to webgl1 -- webgl2 functions in UE4 code are "if checked"/configured/setup at start up #jira UE-51267 WebGL1 fails to compile Change 3822593 by Nick.Shin #jira UE-27141 Remove all #if PLATFORM_HTML5 from high level code Change 3823512 by Nick.Shin #jira UE-27141 Remove all #if PLATFORM_HTML5 from high level code Change 3824639 by Nick.Shin HTML5 - OSX - RunMacHTML5LaunchHelper.command - more helpful warning messages #jira UE-49861 A copied RunMacHTML5LaunchHelper.command gives unspecific Mono error Change 3829092 by Josh.Adams - Updated UnrealRemote to 1.4.1 Change 3832708 by Chris.Babcock Allow UE4Commandline.txt in APK #jira #ue4 #android Change 3835867 by Nick.Shin HTML5 - code cleanup origial work was for: UE-27141 (Remove all #if PLATFORM_HTML5 from high level code) this exposed an issue that i totally forgot about (.../Engine/Source/Developer/... only does builds tools -- which does not make use of PLATFORM_XXX preprocessor) tested with HTML5 builds with QAGame project :: TM-ShaderModels map #jira UE-53524 UE4Editor Static Analysis Win64 (MSVC) - 1 repeat warning Change 3839967 by Mi.Wang Override MaxObjectInGame on Android to save ~30M with the ObjectArray size. #Android Change 3842022 by Mi.Wang Fix an AssetRegistry size calculation bug. Change 3843552 by Sorin.Gradinaru UE-54139 Possible crash with new virtual keyboard on Android if suggestions not disabled #4.19 #Android #jira UE-54139 S8 on 7.0 is not hiding suggestions and disabling predictive input. There are cases with this that can cause a crash. Fix: On text change, downgrade to simple suggestions all the easy correction spans that are not a spell check span (remove android.text.style.SuggestionSpan.FLAG_EASY_CORRECT flags) Change 3844210 by Nick.Shin HTML5 - filter out "windows/super" keys - these are not used in UE4 - but, keycode are not the expected "91 or 92" values, SDL keys are "227 & 231" instead... #jira UE-54056 HTML5 crashes inside browser upon pressing windows key Change 3844874 by Nick.Shin HTML5 - detect "SyntaxError: " and do a forced reload - an actual syntax error would be caught during compile time - this is usually error condition is usually seen when browser is running "old/partial" cached data and it's fairly safe to just reload the page #jira UE-54017 QAGame fails to launch properly on HTML5 Firefox 64 bit Change 3846695 by Nick.Shin #jira UE-53524 UE4Editor Static Analysis Win64 (MSVC) - 1 repeat warning Change 3847309 by Nick.Shin HTML5 - (not to) show virtual joystick - virtual joysticks are not shown by default-- and the mouse not captured - this now behaves like the win64 client version #jira UE-33854 Virtual Joysticks In HTML5 if Mobile/Tablet Project is chosen Change 3847310 by Nick.Shin HTML5 - set controller axis and button max value in code instead of relying on emscripten_get_gamepad_status() - seems emscripten might be uninitialized by the time controlers are used... #jira UE-28513 - Using a controller in HTML5 causes error Change 3850606 by Nick.Shin HTML5 - more static warning fix ups #jira UE-53524 UE4Editor Static Analysis Win64 (MSVC) - 1 repeat warning Change 3850624 by Nick.Shin HTML5 - tell user/developer to show unsupported WebGL browsers on old hardware -- will need to try another browser note: using following jira to track progress: #jira UE-47066 Packaged HTML 5 Map Prompts for Firefox Update in Chrome Change 3855610 by Sorin.Gradinaru UE-49173 Progress bar causes black screen on iOS #iOS #4.20 #jira UE-49173 The bug occurs on iOS with Metal, when the last Slate element to be draw in the scene is a ScrollBar with progress between 0 and 1. As a workaround, adding another widget (eg. button, image) in the Blueprint solves the problem. The bug can be reproduced by adding OutDrawElements.PushClip & OutDrawElements.PopClip in any SWidget::OnPaint. The solution is to disable the scissor RHICmdList.SetScissorRect(false, 0, 0, 0, 0); in FSlateRHIRenderingPolicy::DrawElements after the batch rendering Change 3855652 by Sorin.Gradinaru iOS 3D browser UE-53248 Web Browser on a Widget Component is 2D when launching on to iOS #jira UE-53248 #iOS #4.20 Uses the same WebTexture from the WebBrowser plugin as the Android version. + Code contributed by Juan.Belon from Alea S.r.l at https://udn.unrealengine.com/questions/390166/3d-world-space-widget-is-being-rendered-in-screen.html Change 3856174 by Nick.Shin HTML5 - python forking will still error while trying to terminate already terminated processes - added same "WindowsError code 5" handler found in subprocess.py #jira UE-51618 HTML5 fails to build, [Error 5] Access is denied Change 3863322 by Sorin.Gradinaru UE-54317 DXT apps fail on first launch when 'For Distribution' enabled, Unsupported Texture Format #jira UE-54317 #Android #4.19 Change 3878088 by Nick.Shin UEMOB-425 superceeds this jira #jira UE-25257 Mac HTML5 project crashes upon downloading expression HasFoundDataDirectory failed Change 3884560 by Jack.Porter Fix logspam in FAVMoviePlayer #jira UE-54760 Change 3886533 by Mi.Wang Fix a potential crash that the VirtualKeyboardWidget has been hide while trying to use in gamethread. Change 3889081 by Sorin.Gradinaru UE-54490 Android Startup Movie audio still playing when app paused, and after app resumed the movie is blackscreen until engine ticked. #Android #4.20 #jira UE-54490 Call ForceCompletion for the intial movie player on onPause. Call App Restart on Resume. Programmatically restarting an Android application basically consists in killing the current app, then using the launch intent as parameter for startActivity. This can be done only in onResume , which means that the movie player still has to be manually paused/stopped in onPause. I╞ve tried to kill the activity on onPause, tested on several devices, with various problems: the app doesn╞t restart anymore (onResume is not called) or the app is automatically sent to background (seems to be crashing when using the multitasking soft key). Change 3890320 by Chris.Babcock Fix initializer ordering #jira UE-55189 #ue4 Change 3958226 by Nick.Shin HTML5 disable memory poison tests and fix a bug during Realloc() // for Linux... and in turn for HTML5 #jria none Change 3958250 by Nick.Shin HTML5 - FText::FormatStr - skip if multi-threading not supported #jira none Change 3968328 by Nick.Shin HTML5 CORS fixes still need datarouter.ol.epicgames.com fixes to completely solve these issues. (API server own estimates no later than mid-April) note: the following are all related: + answerhub 756723 - HTML5 CORS / Access-Control-Allow-Headers + answerhub 756942 - HTML5 CORS Issue to my Hosts API / Hosted Server + UE-22285 - Session events are not generated for HTML5 + UE-19330 - HTML5 Analytics cross-origin request blocked header Access-Control-Allow-Origin missing #jira UE-19330 Change 3971405 by Nick.Shin HTML5 suppress double printing to console.log #jira none Change 3978767 by Nick.Shin HTML5 CORS fixes note: the following are all related: + answerhub 756723 - HTML5 CORS / Access-Control-Allow-Headers + answerhub 756942 - HTML5 CORS Issue to my Hosts API / Hosted Server + UE-22285 - Session events are not generated for HTML5 + UE-19330 - HTML5 Analytics cross-origin request blocked header Access-Control-Allow-Origin missing tested (against datarouter.ol.epicgames.com fixes) and found to be functional #jira UE-22285 Change 3981103 by Nick.Shin HTML5 - num pad keys crashes project match latest Engine/Source/Runtime/InputCore/Private/Linux/LinuxPlatformInput.cpp to HTML5PlatformInput.cpp also fix a HUD crash... #jira UE-54056 HTML5 crashes inside browser upon pressing windows key Change 3983424 by Sorin.Gradinaru UE-57107 Attempting to load a streamed media source causes the app to become unresponsive when device is not connected to internet #jira UE-57107 #Android #4.20 The ANR is because the android.media.MediaExtractor.setDataSource(UrlPath) calls an underlying api which retries the download (10-30 times). Additional issue (all platforms): the MediaFrameworkTest/StreamSource_Infiltrator souce seems to have been removed (no longer at https://docs.unrealengine.com/latest/attachments/Engine/MediaFramework/HowTo/StreamMediaSource/Infiltrator%20Demo.mp4). According to the docs (https://docs.unrealengine.com/en-US/Engine/MediaFramework/HowTo/StreamMediaSource) the new location of the Sample Video is at https://dnnrz1gqa.blob.core.windows.net/portals/attachments/Engine/MediaFramework/HowTo/StreamMediaSource/Infiltrator%20Demo.mp4?sr=b&si=DNNFileManagerPolicy&sig=F%2BBpnYueeQTUTSW0nCRSrXEfr35LIawe7C3MQoe2%2FPI%3D Change 3985248 by Nick.Shin HTML5 game window size add project setting drop down box to select canvas scaling mode #jira UE-46555 HTML5 game window does not scale with browser size Change 3986190 by Sorin.Gradinaru UE-56076 Android Launch On "Running..." toast intermittently doesn't appear #jira UE-56076 #Android #4.10 When cancelling Launch on Device, always call CancelContinuations for the current task Change 3986412 by Nick.Shin CIS error fix #jira none Change 3987007 by Nick.Shin HTML5 fullscreen size fix - when using FIXED scale mode initially, there's some strange padding margins - but, setting UE4_fullscreenScaleMode to anything "but FIXED scale mode" will work... #jira UE-46555 HTML5 game window does not scale with browser size Change 3988408 by Nick.Shin HTML5 call EndSession() onbeforeunload() ? should PreExit() be called instead? #jira UE-57207 Session End event is not generated for HTML5 Change 3991828 by Nick.Shin HTML5 shipping build crash some FVector2D needs ContainsNaN() checks #jira UE-57401 Projects packaged for Shipping HTML5 do not launch the engine in the browser Change 3992884 by Nick.Shin HTML5 call EndSession() onbeforeunload() code cleanup #jira UE-57207 Session End event is not generated for HTML5 Change 3992887 by Nick.Shin datarouter: Session events code cleanup #jira UE-22285 - Session events are not generated for HTML5 Change 4002603 by Sorin.Gradinaru UE-56177 Unplugging a device while launching onto it from a source build will result in the "Running..." toast staying open #jira UE-56177 #Android #iOS #4.10 Using the device discovery to signal when the running device gets disconnected Change 4007162 by Dmitriy.Dyomin Merging using Dev-Mobile->FortMain Added ObjectOrientation material node for decals, returns decal projection direction ( X-axis) #jira none Change 4012196 by Sorin.Gradinaru UE-57120 Lighting needs to be rebuilt error appears on Camera test app on Nexus 9 and Note 4. #jira UE-57120 #Android #4.20 Level lightings rebuilt and QA-Media_Camera_BuiltData.uasset added. The message appeared (rarely and only on certain devices) because the engine tries to load the pre-computed lightmap data on the render thread, then to add it to the scene on the game thread (in FPrecomputedVolumetricLightmap::AddToScene). Most of the times there is a desync and the data is not yet loaded when the lightmap is validated (in FScene::AddPrecomputedVolumetricLightmap). Change 4013034 by Sorin.Gradinaru UE-55427 iOS application crashes when suspending and resuming the startup movie in rapid succession #jira UE-55427 #iOS #4.20 Caused by ToggleSuspend waiting for FDefaultGameMoviePlayer::WaitForMovieToFinish() Renamed InitialMovie to StartupMovie, including the methods related to the Android platform. Change 4015449 by Sorin.Gradinaru UE-38306 "Running xxx on yyy" panel Cancel button should terminate app #jira UE-38306 #Android #4.10 Run on device: Pressing Cancel on the "Running..." message should stop the application, if running Cancel Android builds using "adb shell am force-stop <bundle_id> <device_id>" Note: Using a new AutomationTool command (re-starting the Automation tool after canceling the BuildCookRun task chain) is too slow - takes 3-10 sec depending on the PC configuration. AutomationTool is used now only to correctly retrieve the bundle id for each Android device. This is done inside the BuildCookRun command when the application is deployed on the device(s). Cannot simply use the current project's properties to retrieve the bundle id, because when using Launch-> Device Launcher, the user can choose to cook&deploy a different project/texture format, also the user can create & use a profile with multiple devices / with different texture formats. Change 4016057 by Sorin.Gradinaru UE-57845 GitHub 4666 : Pull request clipboard on android #jira UE-57845 #4.20 #Android #4666 https://github.com/EpicGames/UnrealEngine/pull/4666 Implemented Clipboard function on Android. Change 4020229 by Sorin.Gradinaru UE-57845 GitHub 4666 : Pull request clipboard on android #jira UE-57845 #Android #4.20 GameActivity.java: moving the methods related to clipboard above the native public declarations Change 4021188 by Sorin.Gradinaru UE-57876 Location accuracy is ignored by ULocationServicesIOSImpl #jira UE-57876 #iOS #4.30 In ULocationServicesIOSImpl::InitLocationServices(ELocationAccuracy Accuracy, float UpdateFrequency, float MinDistance) the first param must be converted to CLLocationAccuracy and used as the first param of LocationDelegateinitLocationServices, rather than using the hardcoded kCLLocationAccuracyHundredMeters. Also fixed a compilation error (!) when enabling The Location Services plugin on iOS Change 4024839 by Sorin.Gradinaru UE-38306 "Running xxx on yyy" panel Cancel button should terminate app #jira UE-38306 #Android #4.10 Removed unnecessary #include "AndroidTargetDevice.h", causing circular reference => nightly build errors Change 4024962 by Cosmin.Sulea UE-56294 - Packaging step fails when packaging project for distribution #jira UE-56294 Change 4026122 by Sorin.Gradinaru UE-57149 Razer Phone: Crash after Switching Camera Format 22-26 times #jira UE-57149 #Android #4.20 jobject obj = env->GetObjectArrayElement must be followed by env->DeleteLocalRef(obj) The bug can probably be reproduced by using a MediaPlayer. Change 4038185 by Nick.Shin HTML5 - merge error fix MallocAnsi.cpp was stomped on #jira UE-58367 //UE4/Dev-Mobile - Compile UE4Game HTML5 - use of undeclared identifier 'malloc_usable_size' Change 4039521 by Dmitriy.Dyomin Export WorldBrowser API so plugin makers can use it #jira UE-57323 Change 4039523 by Dmitriy.Dyomin Exposed MobilePatchingLibrary API #jira UE-55941 Change 4039526 by Dmitriy.Dyomin Fixed: Hierarchy filtering does not work in world composition #jira UE-57900 Change 4039529 by Dmitriy.Dyomin Fixed: 'Apply Fogging' in Material does not work on Mobile (GitHub 4357) #jira UE-53618 #4357 Change 4039874 by Sorin.Gradinaru UEMOB-436 Support "All Android" Launch On and Project Launcher options The main change is in the DeviceProxy class. A new type ("All devices" proxy) was added, and the proxy now holds a list of physical device IDs for every variant (texture format), instead of a single device ID. The "All devices" proxy is updated automatically by the device discovery thread. The change was necessary because the list in the Project Launcher is using the device proxy list. #jira UEMOB-436 #Android #UE4 #4.19 Change 4041446 by John.Mauney Fix that Chris B made locally on my machine #jira UE-58420 Change 4041791 by Jack.Porter Fix CIS incremental UE4Editor Win64 #jira 0 [CL 4047603 by Jack Porter in Main branch]
2018-05-02 22:53:38 -04:00
{
}
// set up all of the multiple formats together into this one
void LoadFormats(TArray<FAndroidTargetPlatformControls*> SingleFormatTPs)
{
// sort formats by priority so higher priority formats are packaged (and thus used by the device) first
// note that we passed this by value, not ref, so we can sort it
SingleFormatTPs.Sort([](const FAndroidTargetPlatformControls& A, const FAndroidTargetPlatformControls& B)
{
float PriorityA = 0.f;
float PriorityB = 0.f;
FString VariantA = A.GetAndroidVariantName().Replace(TEXT("Client"), TEXT(""));
FString VariantB = B.GetAndroidVariantName().Replace(TEXT("Client"), TEXT(""));
GConfig->GetFloat(TEXT("/Script/AndroidRuntimeSettings.AndroidRuntimeSettings"), *(FString(TEXT("TextureFormatPriority_")) + VariantA), PriorityA, GEngineIni);
GConfig->GetFloat(TEXT("/Script/AndroidRuntimeSettings.AndroidRuntimeSettings"), *(FString(TEXT("TextureFormatPriority_")) + VariantB), PriorityB, GEngineIni);
return PriorityA > PriorityB;
});
FormatTargetPlatforms.Empty();
FormatTargetString = TEXT("");
TSet<FString> SeenFormats;
// Load the TargetPlatform module for each format
for (FAndroidTargetPlatformControls* SingleFormatTP : SingleFormatTPs)
{
// only use once each
if (SeenFormats.Contains(SingleFormatTP->GetAndroidVariantName()))
{
continue;
}
SeenFormats.Add(SingleFormatTP->GetAndroidVariantName());
bool bEnabled = false;
FString SettingsName = FString(TEXT("bMultiTargetFormat_")) + *SingleFormatTP->GetAndroidVariantName();
GConfig->GetBool(TEXT("/Script/AndroidRuntimeSettings.AndroidRuntimeSettings"), *SettingsName, bEnabled, GEngineIni);
if (bEnabled)
{
if (FormatTargetPlatforms.Num())
{
FormatTargetString += TEXT(",");
}
FormatTargetString += SingleFormatTP->GetAndroidVariantName();
FormatTargetPlatforms.Add(SingleFormatTP);
}
}
// @todo do we need this with DisplayName below?
PlatformInfo::UpdatePlatformDisplayName(TEXT("Android_Multi"), DisplayName());
}
virtual float GetVariantPriority() const override
{
// lowest priority so specific variants are chosen first
return (IsClientOnly() ? 0.25f : 0.5f);
}
#if WITH_ENGINE
virtual void GetTextureFormats(const UTexture* Texture, TArray< TArray<FName> >& OutFormats) const;
virtual void GetAllTextureFormats(TArray<FName>& OutFormats) const override;
#endif
virtual FText DisplayName() const override;
};