Files
UnrealEngineUWP/Engine/Source/Programs/IOS/MobileDeviceInterface/MobileDeviceInstance.cs

1669 lines
57 KiB
C#
Raw Normal View History

Copying //UE4/Dev-Platform to //UE4/Dev-Main (Source: //UE4/Dev-Platform @ 3120366) #lockdown Nick.Penwarden #rb none ========================== MAJOR FEATURES + CHANGES ========================== Change 2714591 on 2015/10/02 by Ben.Marsh Initial branch of files from Engine-Main (//UE4/Engine-Main) to Dev-Platform (//UE4/Dev-Platform) Change 2916715 on 2016/03/21 by Daniel.Lamb First pass at splitting out build cook run into into seperate scripts. Change 2948322 on 2016/04/19 by Nick.Shin update libwebsockets to v1.7.4 part 4 of 4 - doing this in stages for tracking purposes #jira UEPLAT-1246 - Update libWebsockets #jira UEPLAT-1221 - update websocket library #jira UEPLAT-1204 - Rebuild libwebsockets with SSL Change 2970016 on 2016/05/07 by Nick.Shin undo all of the following upgrades: - zlib - openssl - libcurl - libwebsockets and reset webrtc #jira UE-30298 - Fortnite and Orion crash on login Change 3059693 on 2016/07/21 by Josh.Adams Merging //UE4/Dev-Main to Dev-Platform (//UE4/Dev-Platform) Change 3061151 on 2016/07/22 by Niklas.Smedberg Fast ASTC texture compression, using ISPC. #jira UE-32308 Change 3061428 on 2016/07/22 by Peter.Sauerbrei Back out changelist 3061151 as it wasn't approved for submission Change 3061970 on 2016/07/22 by Steve.Cano Adding AdMob interstitital ad support for Android, including Blueprint functions #jira UE-33286 #ue4 #android Change 3062160 on 2016/07/22 by Mark.Satterthwaite Fix the fix for handling RHISetStreamSource overriding stride on Metal - not all MTLVertexDescriptors are equally hashable so do this ourselves. #jira UE-33355 Change 3062770 on 2016/07/24 by Brent.Pease UE-32397 Error Message displays as Unknown Error when failing to supply a Remote Build server for ios on Windows Change 3063227 on 2016/07/25 by Dmitry.Rekman Update hlslcc cross-compile after libc++ change. Change 3063314 on 2016/07/25 by Jeff.Campeau Xbox One DLL loading Receipts can be read back by request for target info Change 3063329 on 2016/07/25 by Mark.Satterthwaite CL #3046743 was breaking other samples in unexpected ways after a recent Main merge, so make a Metal-specific change to the shader instead and amend the MetalBackend to better match HLSL's handling of NaN/inf with common single-precision float intrinsics. This is sufficient to fix the AtmosphericFog and the recent regressions. #jira UE-33600 #jira UE-33028 #jira UE-27879 #jira UE-25802 Change 3063492 on 2016/07/25 by Brent.Pease UE-23846 - iOS Movie Player can't handle videos at resolutions that aren't multiples of 16 UE-33200 - A movie isn't played on iOS occasionally. Change 3063729 on 2016/07/25 by Dmitry.Rekman Linux: enable XGE on all platforms. #tests Cross-compiled a number of Linux targets on Windows. Change 3063732 on 2016/07/25 by Dmitry.Rekman Fixed formatting (spaces->tabs) in previous change. Change 3063750 on 2016/07/25 by Daniel.Lamb Added code to dump the cook modification delegate loads to log. Fixed the memory usage output log. #test cook paragon. Change 3063804 on 2016/07/25 by Daniel.Lamb Added cookpartialgc additional commandline option to uat. #test UFE Change 3064008 on 2016/07/25 by Mark.Satterthwaite For non-shipping builds conditionally bind a default uniform buffer in Metal and report an error if the slot was unbound, if our validation layer is enabled attempt to report the shader source in question. This relies on the shader compiler providing accurate information about uniform buffer bindings and won't fix all occurances of bad uniform usage (if a buffer is bound but too short the result will be GPU restarts or an error in Apple's validation layer - we can't detect this case) but will help debug the typical error of leaving an active slot unbound. #jira FORT-27685 Change 3064141 on 2016/07/25 by Jeff.Campeau Rebuild vpxmd.lib with delayed codegen disabled (fixes linker warning building Win64). Change 3065024 on 2016/07/26 by Nick.Shin Change filetype remove exclusive check out bit requested by or.coheni & nick.penwarden Change 3065274 on 2016/07/26 by Jonathan.Fitzpatrick DirectoriesToAlwaysStageAsUFS now properly filters out *.uasset and *.umap files This prevents the bug where cooked assets get trampled by staging their uncooked version on top of them during the UFS step Added a file filter to DirectoriesToAlwaysStageAsUFS for uasset and umap. Change 3066338 on 2016/07/27 by Mark.Satterthwaite Handle releasing an SRV/UAV & the source object within a single Metal command-buffer. #jira UE-33779 Change 3066789 on 2016/07/27 by Daniel.Lamb Realtime mode does not save any packages anymore unless they are ready. #test cookontheside, cookbythebook shooter game Change 3066847 on 2016/07/27 by Jeff.Campeau Fix define #2634 #jira UE-33813 Change 3068868 on 2016/07/28 by Mark.Satterthwaite Extend hlslcc's handling of switch-statements to allow implict casts from scalar bool, half & float as HLSL itself permits while also making sure it errors if the expression input is not scalar. This fixes shader compile errors in UT. Change 3070040 on 2016/07/29 by Dmitry.Rekman Delete Nadzorca. Change 3070947 on 2016/07/29 by Jeff.Campeau Perforce C++ API 2015.2 (includes debug libraries) Change 3073707 on 2016/08/02 by Daniel.Lamb Derived data cache commandlet runs resolve string asset references to load any string asset refereced packages from the map. Also process async results from shaders being compiled so they can have their memory resources released. #test DerivedDataCache commandlet shootergame. Change 3076613 on 2016/08/03 by Brent.Pease + UnrealTargetConfiguration is now passed into deploy and package methods + The UIRequiredDeviceCapabilities plist key now only considers the architectures from the corresponding target configuration (shipping or development) Change 3076668 on 2016/08/03 by Brent.Pease Back out changelist 3076613 Change 3077157 on 2016/08/04 by Daniel.Lamb Fixed up DLC staging so that it stages to the proper mount point. Fixes up include engine content in DLC staging paths. #test Made up shooter game DLC Change 3077191 on 2016/08/04 by Daniel.Lamb More smartly process async shader compilation if we are waiting for it. #test cook on the side shooter game cook by the book shooter game. Change 3077412 on 2016/08/04 by Mark.Satterthwaite Fix "iOS Metal-based build crashes at launch with sub-levels": - Slate should not bind the null RHI texture from an unitialised texture atlas - atlases only have a valid texture pointer once an entry has been added to them and in the template projects an empty sub-level doesn't add anything. - To prevent this kind of bug resurfacing and being so hard to track down add Metal shader binding validation to our validation layer as Apple's is incomplete on iOS and won't warn us about nil texture usage which causes these GPU restarts. This requires reworking our vertex declaration handling to be more efficient so that we can cache the pipeline reflection data as well as the pipeline objects. - Fix validation error of texture reallocation on loading template projects under Metal. #jira UE-30847 Change 3077958 on 2016/08/04 by Brent.Pease + UnrealTargetConfiguration is now passed into deploy and package methods + The UIRequiredDeviceCapabilities plist key now only considers the architectures from the corresponding target configuration (shipping or development) Change 3079503 on 2016/08/05 by Mark.Satterthwaite Initialise more variable types to 0 in Metal shaders to workaround Xcode 8 toolchain no longer doing this for us for "threadgroup shared" variables. Everything but structs and atomic's will now be initialised. #jira UE-33856 Change 3079737 on 2016/08/05 by Jeff.Campeau Add support for delay load DLLs on Xbox One Turn off warnging for missing PDBs to match VCToolchain.cs Change 3081005 on 2016/08/08 by Mark.Satterthwaite Fix-up Metal device name on AMD for macOS 10.12 which reports it correctly and enable tiled reflections on Intel from macOS 10.12 too as they now work. Change 3081557 on 2016/08/08 by Daniel.Lamb File-> Package saves all packages before starting packaging. #test File package first person template Change 3082215 on 2016/08/09 by Lee.Clark PS4 - Added 4k profile Change 3082412 on 2016/08/09 by Daniel.Lamb Fixed cook on the fly server not handling cook requests. #test Cook on the fly shooter game. Change 3082955 on 2016/08/09 by Dmitry.Rekman Linux: convert existing Strcat() uses to Strncat(). - Strcat() does not check destination size so can silently corrupt memory. While this was not observed, this conversion removes this concern altogether. Change 3083772 on 2016/08/10 by Luke.Thatcher [PLATFORM] [PS4] [+] Checking in PS4CrashHandler files so we have a copy in Perforce rather than just on the server. - Taken from \\devweb-02 and removed all the unused files/dependencies. - Created a publish profile pointing to \\devweb-02\Sites\PS4Services\PS4CrashHandlerDev so I'm not writing over the existing deployed crash handler. - Moved all code in the Page_Load event to inside the check for the HTTP method (POST) otherwise GET'ing the page from a browser will generate crash folders that hang around forever. Change 3085450 on 2016/08/11 by Lee.Clark PS4 - Fix mediaplayer pipeline allocation Change 3086360 on 2016/08/11 by Michael.Trepka Fixed a non-unity build error in Mac UnrealFrontend Change 3087224 on 2016/08/12 by Luke.Thatcher [PLATFORM] [PS4] [~] Refactor PS4 Crash Handler site - Removed CoreDumpHandler. Processing dump files is handled directly by an async thread within the aspx process. - Separated configuration values into their own class. Currently set to output to a testing directory, rather than the actual crash reporter landing zone. - Added a debug upload page to allow manual submission of .orbisdmp/.txt settings files, accessible by GET'ing Default.aspx. - Added logging. Logs self-delete after 30 days. Testing required before we switch to the new system. #jira UE-34504 #jira OR-26886 Change 3087626 on 2016/08/12 by Dmitry.Rekman PR #2689: Fix copying/duplicating failing on Linux (UE-34586). - Contributed by Web-eWorks. Change 3087991 on 2016/08/12 by Mark.Satterthwaite Initial AVFoundation implementation of Media Framework for Mac, iOS & tvOS. - Video playback occurs via AVPlayerItemVideoOutput's attached to the AVPlayerItem's output. This means gathering video samples is trivial. - Metal texture updates occur by wrapping the texture object provided by AVF - for Mac this is simple as it can bind to the IOSurface directly, for iOS/tvOS we have to create a CVMetalTextureCache and allocate our texture from there. - OpenGL and OpenGLES currently have to lock the pixel buffer and upload to a texture the old fashioned way - this should be revisited when there is time. - Subtitles/Captions are captured using AVPlayerItemLegibleOutput which also connects to the AVPlayerItem's output. - On Mac audio samples are returned by manually reading from the stream using an AVAssetReaderTrackOutput, including manual seeking and synching. - On iOS/tvOS the audio is played directly by AVPlayer because the IOSAudio system can't handle procedural buffers - otherwise it could reuse the Mac code. - AVFoundation does not support AVI - that's an obsolete Microsoft/Windows file-format. - Only 'file://' URLs are supported - streaming would require a totally different audio solution (using MTAudioProcessingTap) and has many more edge and failure cases that would need to be handled. #jira UE-34315 Change 3088790 on 2016/08/15 by Luke.Thatcher [PLATFORM] [PS4] [~] Hook new PS4 crash handler up to the crash reporter website. - Removed indentation from generated crash context XML file. The crash reporter process does manual XML parsing which doesn't correctly handle whitespace at the start of lines. - Switched the final output folder to match the one the crash reporter process is watching. - Hide upload form on a config variable. #jira UE-34504 #jira OR-26886 Change 3089060 on 2016/08/15 by Luke.Thatcher [PLATFORM] [PS4] [!] Change PS4 crash handler log file extension to ".ps4chlog", otherwise the crash reporter site attaches the wrong log file to the crash report. Allowed showing of debug upload form via "Default.aspx?showform=1" query string. #jira UE-34504 #jira OR-26886 Change 3089089 on 2016/08/15 by Mark.Satterthwaite Duplicated changes to AppleMovieStreamer from CL #3088149. #jira UE-34315 Change 3089460 on 2016/08/15 by Mark.Satterthwaite Duplicate CL #3080971: Workaround a macOS 10.12 Beta bug on some Metal drivers that can't initialise temporary/local variable arrays, only those that are marked threadgroup shared. #jira UE-34355 Change 3089465 on 2016/08/15 by Mark.Satterthwaite For Metal shader translation retain more precision for float constants -1.0f >< 1.0f by emitting them in scientific notation - prevents Hammersley constant amongst others from being flushed to 0. Change 3089902 on 2016/08/15 by Daniel.Lamb Changed the next compiling ID to the correct compiling ID. #test Cook Change 3089903 on 2016/08/15 by Daniel.Lamb Cooker monitors config useage during cook and uses those settings to invalidate cooked content instead of all config settings. Change 3090114 on 2016/08/16 by Luke.Thatcher [PLATFORM] [PS4] [~] Minor change to PS4 settings text on crash handler site. Change 3090949 on 2016/08/16 by Nick.Shin WebSocketNetDriver crash fix filled in missing chunk of code that calls PacketHandler's "packet modifiers" #jira UE-25492 HTML5 Client cannot connect to Windows Server #jira UE-30880 WinServer crashes when NetDriver is set to WebSocket and Client attempts to connect via websocket #code.review john.pollard john.barrett Change 3091265 on 2016/08/16 by Brent.Pease Add IOS support to HarfBuzz Change 3091267 on 2016/08/16 by Brent.Pease Add references to fix mono build Change 3091291 on 2016/08/16 by Nick.Shin CIS warning fix #jira UE-25492 HTML5 Client cannot connect to Windows Server #jira UE-30880 WinServer crashes when NetDriver is set to WebSocket and Client attempts to connect via websocket Change 3091781 on 2016/08/17 by Joe.Barnes UE-33640: Exposed UPrimitiveComponent::IsAnyRigidBodyAwake() to Blueprints. Change 3092687 on 2016/08/17 by Daniel.Lamb Added support for using binned allocator in cooker instead of tbb. #test Cook shootergame. Change 3093867 on 2016/08/18 by Mark.Satterthwaite Use a read/write mutex to protect access to Metal's internal shader pipeline caches so that parallel threads can progress in the common case where new shaders are not being compiled. Change 3093950 on 2016/08/18 by Mark.Satterthwaite Change the Mac GPU identification code to cope with AMD's new naming scheme on 10.12. Change 3093951 on 2016/08/18 by Mark.Satterthwaite More SCW threads on Mac - they work now. Change 3093960 on 2016/08/18 by Mark.Satterthwaite Increase the default number of command-buffers on Mac because bigger games overflow the current limit of 64 per queue. Change 3096493 on 2016/08/22 by Jeff.Campeau Use Xbox version of DirectX include. Change 3097509 on 2016/08/23 by Luke.Thatcher [PLATFORM] [PS4] [+] Refactor PS4 Symbol Publish - Moved the SymStore task from Win.Automation to BuildGraph.Automation, and made it more generic. - The specifics of uploading symbols are now implemented in the platform tool chain, alongside StripSymbols(). - Re-generated the build graph schema file. - Removed the old PS4 symbols upload path in the package step. Modified OrionBuild.xml to publish symbols for all PS4 dev, test and shipping config builds of OrionClient. Change 3097635 on 2016/08/23 by Luke.Thatcher [PLATFORM] [PS4] [+] Refactor Age Symbols task in UAT. - Moved the AgeStore task from Win.Automation to BuildGraph.Automation and made it more generic. - Symbol server directory structure is now defined by the platform tool chain, which the common task uses to clean out old symbols. - Added a "filter" parameter to prevent age tasks deleting symbols from unrelated builds in shared symbol servers. Modified OrionBuild.xml to age both the Windows and PS4 symbol stores. Change 3097713 on 2016/08/23 by Luke.Thatcher [PLATFORM] [PS4] [+] Enable new PS4 crash handler server - Created live deployment profile and applied the required config file changes. Change 3099214 on 2016/08/24 by Luke.Thatcher [PLATFORM] [PS4] [!] Fix compile error in PS4 tool chain. For some reason, this only breaks ocassionally. Maybe we're alternating between the 2013 and 2015 C# compilers depending on what initiates the build (e.g. Visual Studio vs GenerateProjectFiles)? Change 3099222 on 2016/08/24 by Luke.Thatcher [PLATFORM] [PS4] [+] Added PS4 support for FPlatformMisc::MessageBoxExt using the MsgDialog library. - Note, only one and two button message dialogs are supported (limitation of MsgDialog). Change 3099260 on 2016/08/24 by Luke.Thatcher [PLATFORM] [PS4] [~] Better PS4 exit function. Calls quick_exit instead of abort when we've not asserted. Allows for a "cleaner" forced exit without generating a crash dump. Change 3101192 on 2016/08/25 by Josh.Adams Merging //UE4/Dev-Main to Dev-Platform (//UE4/Dev-Platform) Change 3101944 on 2016/08/25 by Daniel.Lamb Ask to save the current level when we are using launch on. Change 3102036 on 2016/08/25 by Nick.Shin check for minimum expected size upon data received from network #jira UE-13657 - HTML5 plugin OnRawRecieve overflow Change 3102115 on 2016/08/25 by Brent.Pease - Fix small errors that probably only show up in the mac mono build #code.review peter.sauerbrei Change 3102747 on 2016/08/26 by Jeremiah.Waldron Re-submitting OnlineSubsystemGameCircle with TPS permission for Amazon SDK - Also fixed the plugin to remove any related files from the final package when IAP is disabled or GameCircle support itself is disabled with the plugin still enabled - Added support for new AlreadyOwned IAP response code as well which is already used for GooglePlay and IOS Change 3102900 on 2016/08/26 by Nick.Shin since last checkin (CL: 2981945) - prints are crashing the browser - this change will allow browser to print the details via console.log() #jira UE-26047 - HTML5 HTTP Response Headers not implemented Change 3103130 on 2016/08/26 by Brent.Pease UE-24679 - Enable the ability to change ports for a firewall to pass them through rsync Change 3103225 on 2016/08/26 by Daniel.Lamb Fixed issue with warning which would cause crash. Change 3103425 on 2016/08/26 by Dmitry.Rekman Enable offscreen GL rendering without X. - Added new video subsystem to SDL that is uses EGL to initialize the context. - Most windoing functions stubbed. - Also added a new test case to TestPAL for easier debugging. Change 3104743 on 2016/08/29 by Brent.Pease Support remote offline metal shader compilation Change 3105051 on 2016/08/29 by Brent.Pease UE-2382 - TASK: MobleMVP: iOS: Add ability to view iOS device console output in the editor UFE - IOS Automation will now create a thread to collect the console logs from the device and send them to C# Console output while the app is running on device - Made ProcessResult an interface (IProcessResult) which ProcessResult implements. This allows platforms to provide their own implementation if needed. - Moved the RunLoop related parts of CoreFoundation into MobileDevice.cs Change 3105053 on 2016/08/29 by Brent.Pease - IOS dll's as part of the last check-in Change 3106853 on 2016/08/30 by Jeff.Campeau Implement FD3D11DynamicRHI::RHICreateComputeFence to prevent memory overwrite Change 3107361 on 2016/08/30 by Dmitry.Rekman Renderer: changes to allow postproc delegates. Change 3107362 on 2016/08/30 by Dmitry.Rekman Plugin with a CUDA postproc example. - Linux version only. Runs under a headless GL too (without X). - Disabled during cross-compilation, can be compiled natively only. - CUDA kernel should be compiled separately, CMakefile with compilation attached (can be used to generate VStudio projects as well). - To test the output, run under the debugger, interrupt and set global variable GSaveTheOutput to 50 (this will write out kernel output buffer 50 times as .bmp files into working directory). Change 3107913 on 2016/08/31 by Daniel.Lamb Fixed loading of cooked content in the editor. Change 3107916 on 2016/08/31 by Daniel.Lamb Added error case when shader compilation fails to notify shader. #test Cook shooter game. Change 3108080 on 2016/08/31 by Josh.Adams - Fixed PS4Automation compile errors Change 3109077 on 2016/08/31 by Brent.Pease Fix C# debug builds by specifying x64 and add reference to MobileDeviceInterface Change 3110086 on 2016/09/01 by Dmitry.Rekman Fix race condition in PThread runnable (UE-35074). - Instead of relying on busy-wait, join the threads. This prevents race between PostRun() (executed in the context of the thread) and FPThreadRunnableThread() destructor (see UE-34909). - Do not use an invalid value for pthread_t, since there's none. Change 3110172 on 2016/09/01 by Dmitry.Rekman Fixed a crash exiting VR Preview on Windows GL4 (UE-28708). - PR #2188 submitted by ardneran. Change 3110313 on 2016/09/01 by Josh.Adams Merging //UE4/Dev-Main to Dev-Platform (//UE4/Dev-Platform) Change 3111134 on 2016/09/01 by Dmitry.Rekman UBT: prevent mono from hanging on Ctrl-C. - Sometimes Ctrl-C can cause thread creation to fail. Without this change, UBT would lock up. Change 3111171 on 2016/09/01 by Brent.Pease Move all C# projects to use the x64 Platform for consistency with other changes made to move to the x64 Platform Change 3111177 on 2016/09/01 by Dmitry.Rekman Fix Linux build on systems without CUDA (UE-35460). Change 3111548 on 2016/09/02 by Luke.Thatcher [PLATFORM] [PS4] [!] Fix for PS4 iterative deployment. - Changes in Dev-Mobile broke the deployment manifests, as PS4 was now using the wrong filename when creating delta and obsolete file lists. Change 3111863 on 2016/09/02 by Dmitry.Rekman Better fix for build without CUDA (UE-35460). Change 3112738 on 2016/09/02 by Mark.Satterthwaite Fix the pausing particles on Metal - one line bug in the Metal query implementation meant that the first query wouldn't return the correct result for no good reason. #jira UE-34989 Change 3114579 on 2016/09/06 by Chris.Babcock Fix Vulkan include path in NDK check (contributed by geediiiiky) #jira UE-35490 #github #2758 #ue4 #android Change 3115115 on 2016/09/06 by Jeff.Campeau Calculate buffer size for paks using the bitwindow override as needed Change 3115600 on 2016/09/07 by Luke.Thatcher [PLATFORM] [PS4] [~] Make the crash dump handler registration much earlier, to catch crashes in early engine init. - Fixed up places in FGenericCrashContext::SerializeContentToBuffer which used the command line. If we crash early, the command line may not have been initialized yet. - Added a GetNoInit function to FThreadHeartBeat to avoid creating the heart beat thread if we crash early, and the thread doesn't exist yet. Tested by calling abort() immediately inside int main(), and we get a valid crash dump that the crash handler service can consume. Change 3115676 on 2016/09/07 by Luke.Thatcher [PLATFORM] [~] Dev-Platform integration fix for original CL 3064888 in //Orion/Release-29.1 Add .exe and .dll to windows symbol upload file filters. Change 3115811 on 2016/09/07 by Josh.Adams Merging //UE4/Dev-Main to Dev-Platform (//UE4/Dev-Platform) Change 3115944 on 2016/09/07 by Michael.Trepka Implemented IsGamepadAttached() for Mac Change 3115948 on 2016/09/07 by Michael.Trepka Don't try to restore Help menu item on Mac if MenuBlock does not contain it Change 3116200 on 2016/09/07 by Jeff.Campeau Fix parameter ordering Change 3117660 on 2016/09/08 by Josh.Adams Merging //UE4/Dev-Main to Dev-Platform (//UE4/Dev-Platform) Change 3117728 on 2016/09/08 by Michael.Trepka Copy of CL 3117698 by Mike.Fricker Fixed regression with editor's Simulate mode where cursor would teleport back to the center of the viewport after every click - This bug was introduced in CL 3075932 from a borderless window cursor handling fix that was needed for games that capture the cursor Change 3117797 on 2016/09/08 by Peter.Sauerbrei Shader Resource compression Change 3117988 on 2016/09/08 by Brent.Pease - Solutiion generator will now pick x64 instead of AnyCPU for the default platform configuration - Fix what I think was a merge error in BuildGraph.cs Change 3118296 on 2016/09/08 by Daniel.Lamb Fixed crash with launch on. Couldnt' correctly detect previous generated ini settings. #test launch on QA game #jira UE-35741 Change 3118438 on 2016/09/08 by JohnHenry.Carawon Fix UAT compilation on Linux #UE-35745 Change 3118934 on 2016/09/08 by Jeff.Campeau Shader compression setting based on target platform instead of cooking host platform. #jira UE-35753 Change 3120190 on 2016/09/09 by Ben.Marsh Add missing Platform attribute to build script for Dev-Platform. [CL 3120378 by Josh Adams in Main branch]
2016-09-09 20:13:41 -04:00
// Software License Agreement (BSD License)
//
// Copyright (c) 2007, Peter Dennis Bartok <PeterDennisBartok@gmail.com>
// All rights reserved.
//
// Redistribution and use of this software in source and binary forms, with or without modification, are
// permitted provided that the following conditions are met:
//
// * Redistributions of source code must retain the above
// copyright notice, this list of conditions and the
// following disclaimer.
//
// * Redistributions in binary form must reproduce the above
// copyright notice, this list of conditions and the
// following disclaimer in the documentation and/or other
// materials provided with the distribution.
//
// * Neither the name of Peter Dennis Bartok nor the names of its
// contributors may be used to endorse or promote products
// derived from this software without specific prior
// written permission of Yahoo! Inc.
//
// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED
// WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A
// PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR
// ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
// INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR
// TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
// ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
//
using System;
using System.Collections;
using System.Collections.Generic;
using System.ComponentModel;
using System.IO;
using System.Runtime.InteropServices;
using System.Text;
using System.Diagnostics;
using MobileDeviceInterface;
using System.Threading;
using System.Net;
namespace Manzana
{
public class MobileDeviceInstanceManager
{
/// <summary>
/// Registered device notification callback
/// </summary>
private static DeviceNotificationCallback DeviceCallbackHandle;
/// <summary>
/// The <c>Connect</c> event is triggered when a iPhone is connected to the computer
/// </summary>
public static event ConnectEventHandler ConnectEH;
/// <summary>
/// The <c>Disconnect</c> event is triggered when the iPhone is disconnected from the computer
/// </summary>
public static event ConnectEventHandler DisconnectEH;
/// <summary>
/// List of connected devices (device ptr -> device instance)
/// </summary>
public static Dictionary<TypedPtr<AppleMobileDeviceConnection>, MobileDeviceInstance> ConnectedDevices = new Dictionary<TypedPtr<AppleMobileDeviceConnection>, MobileDeviceInstance>();
public static IEnumerable<MobileDeviceInstance> GetSnapshotInstanceList()
{
// Clone a copy to prevent problems from delayed enumeration
List<MobileDeviceInstance> Result = new List<MobileDeviceInstance>();
Result.AddRange(ConnectedDevices.Values);
return Result;
}
/// <summary>
/// Returns true if any devices are currently connected
/// </summary>
/// <returns></returns>
public static bool AreAnyDevicesConnected()
{
lock (ConnectedDevices)
{
return ConnectedDevices.Count > 0;
}
}
/// <summary>
/// Initialize the mobile device manager, which handles discovery of connected Apple mobile devices
/// </summary>
/// <param name="myConnectHandler"></param>
/// <param name="myDisconnectHandler"></param>
public static void Initialize(ConnectEventHandler myConnectHandler, ConnectEventHandler myDisconnectHandler)
{
Copying //UE4/Dev-Platform to //UE4/Dev-Main (Source: //UE4/Dev-Platform @ 3206916) #lockdown Nick.Penwarden #rb none ========================== MAJOR FEATURES + CHANGES ========================== Change 3175510 on 2016/10/26 by Josh.Adams - New Wolf SDK support (11). - Added new input plugin now that extra NDA is lifted Change 3176629 on 2016/10/27 by Josh.Adams Merging //UE4/Dev-Main to Dev-Platform (//UE4/Dev-Platform) Change 3177232 on 2016/10/27 by Josh.Adams - Minor comment change Change 3177348 on 2016/10/27 by Dmitry.Rekman Linux: default to GL4. Change 3177523 on 2016/10/27 by Dmitry.Rekman Linux: update libc++ to 3.9 and add AArch64. Change 3178208 on 2016/10/28 by Daniel.Lamb Enable multithreaded lightmap encoding. Change 3178273 on 2016/10/28 by Luke.Thatcher [PLATFORM] [PS4] [!] Fix crash in PS4 packaging step. - Parallel-for accessing the same log files, causing IOException. Change 3178573 on 2016/10/28 by Dmitry.Rekman Linux: fix for projects not having proper version associations (UE-5954). - Fixed by CengizT. Change 3180487 on 2016/10/31 by Josh.Adams Moved new file to peoper spot Change 3180508 on 2016/10/31 by Josh.Adams - Fixed crash on audio free for Wolf Change 3181821 on 2016/11/01 by Josh.Adams - Fixed ShooterGame cooking after sync from main Change 3182469 on 2016/11/01 by Josh.Adams - test/shipping build wolf fixes Change 3183078 on 2016/11/02 by Josh.Adams - Added AllDesktop back in for Windows (File | Package) Change 3183229 on 2016/11/02 by Josh.Adams - Fixed wrong path in JunkManifest.txt Change 3184245 on 2016/11/02 by Dmitry.Rekman Linux: add AArch64 (ARM64) libs. Change 3184326 on 2016/11/02 by Dmitry.Rekman Linux: add more files for AArch64. Change 3184353 on 2016/11/02 by Dmitry.Rekman Linux: Add missed AArch64 libpng. Change 3184871 on 2016/11/03 by Luke.Thatcher [PLATFORM] [PS4] [!] Fix broken DownloadImage blueprint node on PS4. - Node should return a UTexture2DDynamic, otherwise the RHI assumes the data has been pre-formatted for the GPU, and we get pitch/layout issues. #jira UE-36365 Change 3185407 on 2016/11/03 by Dmitry.Rekman Linux: fix PhysX on AArch64. (Edigrating 3184484 from Wombat to Dev-Platform). Change 3187488 on 2016/11/04 by Josh.Adams Copying //Tasks/UE4/Private-Platform-Switch to Dev-Platform-Minimal (//UE4/Dev-Platform-Minimal) Change 3187740 on 2016/11/04 by Josh.Adams - Re-copying the Switch files, now with proper case in the directory names Change 3188304 on 2016/11/07 by Dan.Mahashin - Removed deprecated functions in NVN window creation Change 3188865 on 2016/11/07 by Luke.Thatcher [PLATFORM] [PS4] [~] Move PS4 console input handler into engine classes from OrionGame. - Enables console input from Sony's "Console Output" tool for all games, in debug/development builds. #jira UE-37672 Change 3189517 on 2016/11/07 by Jeff.Campeau Fix incorrect local platform identification in device manager. #jira UE-38312 Change 3189897 on 2016/11/08 by Luke.Thatcher [PLATFORM] [!] Fix width/height mismatch in DownloadImage blueprint node. Change 3190042 on 2016/11/08 by Josh.Adams - Fixed default and Shooter App Ids for Switch Change 3190181 on 2016/11/08 by Joe.Barnes [UE-37275] Split reflection capture error message into two UE_LOG()s. Line length causes truncation and line wrap on some platforms. Change 3190185 on 2016/11/08 by Joe.Barnes Fix another instance of UE_LOG() where the string was being truncated on Switch platform. Change 3190272 on 2016/11/08 by Daniel.Lamb Add file hashes to depependency tracking info. Moved partial gc controlling code outside of the cooker. Store cooked file hashes in cooked asset registry. Cooked asset registry is now part of the cooker instead of chunking manifest. #test cook paragon Change 3190332 on 2016/11/08 by Omar.Rodriguez Fixing issues with iOS remote notifications * Update UPlatformGameInstance::FPlatformRegisteredForRemoteNotificationsDelegate signature so the parameter is const& which will work with BlueprintAssignable * Fix misspelling when doing respondsToSelector check * Update generated Xcode project to use the generated entitlements file * Add remote-notification as a background mode * Update the generated entitlements file contents to include APS environment for push notifications * Added bEnableRemoteNotificationsSupport ini parameter to control whether iOS push notifications code is compiled Change 3190391 on 2016/11/08 by Brent.Pease UE-31739 - Crash when Deploying to iPad Air with BC4 Texture Compression Setting (Josh's suggestion worked out of the box) Change 3190786 on 2016/11/08 by Bart.Hawthorne Fix some missing PLATFORM_WOLF changes to PLATFORM_SWITCH in ShooterGame Change 3190902 on 2016/11/08 by Alicia.Cano Allow RTTI and exceptions to be enabled for Android #jira UE-37845 #android Change 3190973 on 2016/11/08 by Chris.Babcock Add ability to set element value field with new text parameter for UPL #jira UE-37390 #PR #2869 #ue4 #upl Change 3191411 on 2016/11/09 by Josh.Stoddard Warn when user tries to use a shared pak reader on the wrong thread #jira UE-38049 Change 3191635 on 2016/11/09 by Josh.Stoddard More useful message during cook when AT9 assets fail to encode using SCE's tool #jira UE-38053 Change 3191663 on 2016/11/09 by Peter.Sauerbrei fix for ios build from PC Change 3191701 on 2016/11/09 by Brent.Pease implement iOS device logs on windows Change 3191794 on 2016/11/09 by Daniel.Lamb Fixed up compile error missing header file. #test Compile editor #jira UE-38414 Change 3191807 on 2016/11/09 by Josh.Adams - Fixed one chage that was missed in the WolfPlat->Switch rename Change 3191867 on 2016/11/09 by Josh.Adams - Enabled Switch for ShooterGame project Change 3191958 on 2016/11/09 by Jeff.Campeau Add warning for anyone still using XP Change 3192185 on 2016/11/09 by Josh.Adams - Updated to SDK 0.11.12 - Added TrackLotCheckItem API to track guidelines with limits (nothing using it yet) Change 3192241 on 2016/11/09 by Josh.Adams Merging //UE4/Dev-Main to Dev-Platform (//UE4/Dev-Platform) Change 3192324 on 2016/11/09 by Josh.Adams - Worked around an issue with RunOnTarget stripping quotes around paths with spaces #jira UE-38388 Change 3192387 on 2016/11/09 by Josh.Adams - Updating editor icon for Switch #jira UE-38295 Change 3192476 on 2016/11/09 by Dmitry.Rekman Linux: put correct OpenAL lib per architecture. (Edigrating CL 3185947 from Wombat to Dev-Platform) Change 3192527 on 2016/11/09 by Josh.Adams - Fixed a shadow variable warning #jira UE-38408 Change 3192606 on 2016/11/09 by Jeff.Campeau XP option removed #jira UEPLAT-1542 Change 3192644 on 2016/11/09 by Josh.Adams - Fixed a CIS error (not sure why I don't get it, but hey) Change 3192659 on 2016/11/09 by Josh.Adams - Fixed a crash in DeploymentServer Change 3192672 on 2016/11/09 by Jeff.Campeau Fix WinXP message spamming Change 3193252 on 2016/11/10 by Josh.Adams - Remove assertion in SwitchTextureFormat when the SDK can't be found (if you are sharing DLLs) Change 3193756 on 2016/11/10 by Dmitry.Rekman Linux: add support for touch events. (Edigrating CL 3188159 from Wombat to Dev-Platform). Change 3194297 on 2016/11/10 by Jeff.Campeau HarfBuzz implementation for Xbox One #jira UE-28590 Change 3194299 on 2016/11/10 by Jeff.Campeau Pump Xbox One messaging during slow startup tasks #jira UEPLAT-1276 Change 3194300 on 2016/11/10 by Jeff.Campeau Use response files when building for Xbox One #jira UEPLAT-1296 Change 3194313 on 2016/11/11 by Jeff.Campeau Stop uploading symbols on the first error Show a more detailed error message if symbol uploading fails Add a command line option to disable upload of symbols #1852 #jira UE-24425 Change 3194327 on 2016/11/11 by Jeff.Campeau Deduplicate Xbox One build.cs setup for several modules #jira UE-37540 Change 3194402 on 2016/11/11 by Dmitry.Rekman Linux: do not apply mouse workaround unnecessarily. - Only matters when there is more than one window. (Edigrating 3194399 from Wombat to Dev-Platform). Change 3194434 on 2016/11/11 by Dan.Mahashin - Ported fix CL 3193690: Add workaround to file I/O error about ResultInvalidCurrentMemory when reloading levels - remove uncached attribute during memory pool finalization Change 3194569 on 2016/11/11 by Daniel.Lamb Fixed issue with CreateLinker failing to return LinkerLoad but creating a UPackage which can't be cleaned up. Change 3194570 on 2016/11/11 by Daniel.Lamb Fix for DiffSerializeArchive not using the correct archive when saving packages. #test Cook paragon Change 3194571 on 2016/11/11 by Daniel.Lamb Make sure dependent packages are valid before using them. Added FastBuildCookRun bat file for paragon testing. #test Cook Paragon Change 3194575 on 2016/11/11 by Daniel.Lamb Reworked a warning for the cooker. Change 3194698 on 2016/11/11 by Daniel.Lamb Skip skin verify only runs on build machines now. Saves paragon cook time. Change 3194699 on 2016/11/11 by Daniel.Lamb Changed the wording of skip editor content setting so it's more clear. #test none Change 3194702 on 2016/11/11 by Daniel.Lamb Potential fix for default materials not being in chunk zero. #test run ps4 cooked build paragon Change 3194711 on 2016/11/11 by Alicia.Cano Allow RTTI and exceptions to be enabled for Android Allow RTTI to be enabled for IOS, Mac #jira UE-37845, UE-20314 #android #ios #mac Change 3194956 on 2016/11/11 by Josh.Adams - Removed the crash with unknown socket error code, left in the warning Change 3195028 on 2016/11/11 by Dmitry.Rekman Linux: repair launch on. (Edigrating 3194384 from //UE4/Private-Wombat/... to //UE4/Dev-Platform/...) Change 3195041 on 2016/11/11 by Dmitry.Rekman Linux: support selecting architectures per project. (Edigrating 3192783 from Wombat to Dev-Platform). Change 3195058 on 2016/11/11 by Dmitry.Rekman Linux: fix code to determine number of cores. - ARM topology seems not to be in line with the assumptions made by x86-centric code. (Merging 3184632 from Wombat to Dev-Platform). Change 3195082 on 2016/11/11 by Josh.Adams - Fixed name of packaged Switch builds to have the config in it (Shipping, etc) #jira UE-38394 Change 3195151 on 2016/11/11 by Bart.Hawthorne - Add game server settings to project settings to connect to the actual game server, instead of the debug login - Use the system software dialog box to show error codes for login failures Change 3195153 on 2016/11/11 by Josh.Adams - Fixed copy and paste logs errors Change 3195156 on 2016/11/11 by Josh.Adams - Fixed some default values, especially for save games (uses their default of 4MB size) - Added some LotCheck write tracking Change 3195285 on 2016/11/11 by Jeff.Campeau Fix HarfBuzz warning on Xbox One Change 3195477 on 2016/11/11 by Josh.Adams - Fixed up some IsGameOnly calls #jira UE-37575 Change 3195490 on 2016/11/11 by Dmitry.Rekman UAT: fix CIS (removed old variables). Change 3195724 on 2016/11/11 by Josh.Adams - Final fix for name of .nsp (content only projects in Shipping config, etc) #jira UE-38394 Change 3195755 on 2016/11/11 by Josh.Adams - Made translucent Switch icons Change 3195771 on 2016/11/11 by Josh.Adams - Fixed some Switch "space in path" issues #jira UE-38393 Change 3195801 on 2016/11/11 by Josh.Adams - Handle making sure the save is completed before we shutdown #jira UE-38215 Change 3196593 on 2016/11/14 by Michael.Trepka Implemented Info string in AvfMedia for display in Media Player Editor #jira UE-35386 Change 3196782 on 2016/11/14 by Josh.Adams - Added a comment for a workaround Change 3196784 on 2016/11/14 by Michael.Trepka Alembic importer for Mac #jira UE-37708 Change 3196901 on 2016/11/14 by Alicia.Cano ADB over wifi fails to deploy on Launch on. #jira UE-37957 #android Change 3197055 on 2016/11/14 by Josh.Adams - Fixed BinnedAllocator crash that happened with PoisonProxy and large allocations with large alignment Change 3197059 on 2016/11/14 by Josh.Adams - Removed some stat code with no STATS Change 3197066 on 2016/11/14 by Josh.Adams - Fixed the generic growableallocator to not free metadata before it's used for stats, and cleaned up a couple minor things Change 3197176 on 2016/11/14 by Josh.Adams - Added some helper scripts to switch in and out of debug mode on Switch Change 3197183 on 2016/11/14 by Bart.Hawthorne Error dialog fixes based on peer review feedback from JoshA Change 3197339 on 2016/11/14 by Josh.Adams Allow -htcs on the commandline now to override disabling Htcs in packaged builds Change 3197401 on 2016/11/14 by Josh.Adams - Fixed the Switch package installation script to remove the path of the package, since it causes problems with spaces, and also it makes the script less portable! #jira UE-38556 Change 3197691 on 2016/11/14 by Dmitry.Rekman Linux: save added devices. (Edigrating 3196529 from Wombat to Dev-Platform). Change 3197854 on 2016/11/15 by Dan.Mahashin - MemoryProfiler2: fixed Switch parser file path in the csproj Change 3197960 on 2016/11/15 by Dan.Mahashin - NVN RHITransitionResources() directly uses a barrier instead of relying on CopyToResolveTarget() side effect (UE-33834) Change 3198488 on 2016/11/15 by Bart.Hawthorne Submit missing NoRedist/DefaultEngine.ini file Change 3198970 on 2016/11/15 by Michael.Trepka Don't try to use installed Mono 4.6 on Mac as it's known to have issues on macOS 10.12 (for example building the editor with UBT often fails with Mono running out of file desriptors) Change 3199050 on 2016/11/15 by Daniel.Lamb Some more output to help track down iterative cooking scenarios #test Cook paragon Change 3199097 on 2016/11/15 by Josh.Adams - Fixed up Switch packaging to re-generate the meta data in case it changed since compile time (esp with content only projects - Fixed default Program Id in code - Fixed a problem with Run with a space in the path #jira UE-38608 Change 3199181 on 2016/11/15 by Dmitry.Rekman Fix CIS (compiling LinuxTargetDevice without engine). Change 3199253 on 2016/11/15 by Dmitry.Rekman Hopeful fix for a static analysis warning. Change 3199325 on 2016/11/15 by Joe.Barnes Start a new CommandBuffer immediately upon ending one. Prevents fetching when there's no CommandBuffer. Needed for Loading Screen movie playback. Change 3199814 on 2016/11/15 by Dmitry.Rekman Linux: remove forced -windowed when launching. (Merging CL 3199789 from Wombat to Dev-Platform) Change 3200580 on 2016/11/16 by Josh.Adams Updasted DeploymentServer Change 3200595 on 2016/11/16 by Joe.Barnes Removed inadvertent SleepThread() when starting movie playback. Change 3200604 on 2016/11/16 by Josh.Adams - Added NN_MIDDLEWARE macros to tag ths apps as using UE4 middleware Change 3200632 on 2016/11/16 by Brent.Pease Update PlatformShowcase with latest tests Change 3200704 on 2016/11/16 by Dmitry.Rekman Linux: fix native compilation. Change 3200711 on 2016/11/16 by Brent.Pease - Support ios audio streaming from disk - Flushed out ADPCMAudioInfo to be more flexible with buffer management in addition to support streaming from disk. This should make more code platform independent. + Other platforms should work fine but will need to be updated to use the new buffer flexability (and hence simplify their own code and buffer management) - IOS audio implementation simplified to use new ADPCMAudioInfo functionality - Fixed adpcm seamless looping NOTE: While everything works with my testing (admittedly simple tests) a little more code cleanup needs to happen... Change 3201015 on 2016/11/16 by Josh.Adams Merging //UE4/Dev-Main to Dev-Platform (//UE4/Dev-Platform) Change 3201023 on 2016/11/16 by Josh.Stoddard Fix splash screen assignment for iPad #jira UE-38623 Change 3201215 on 2016/11/16 by Brent.Pease Hopefully final fix for build breakage Change 3201259 on 2016/11/16 by Josh.Adams - Removed the clock rate settings from the Project Settings, and the cvars - it was just confusing - Further improved the metadata recreation during packaging (can get rid of the temp meta/desc files now I believe) - Reduced audio pool alignment to not waste massive memory from it Change 3202332 on 2016/11/17 by Daniel.Lamb Changed build scripts to support iterative cooking #test Ran new build scripts Change 3202371 on 2016/11/17 by Michael.Trepka Changed FAppleHttpResponse::GetContentLength to return expected content size instead of payload size so it's consistent with other implementations #jira UE-38392 Change 3202421 on 2016/11/17 by Michael.Trepka Decrease the number of max open files for a thread on Apple platforms from 256 to 192 to leave more file descriptors to Cocoa #jira UE-18343 Change 3202462 on 2016/11/17 by Michael.Trepka Fixed HTTP If-None-Match response code on Mac and iOS Fixed by iktomi, https://answers.unrealengine.com/questions/492514/http-if-none-match-logic-isnt-working-on-mac-due-t.html #jira UE-36317 Change 3202620 on 2016/11/17 by Daniel.Lamb Fixed issue with some objects being garbage collected which shouldn't be because the collection handler didn't get registered. Commandlets now do not always have GIsRequestingExit true. Made crash handler check for commandlets running and exit appropriately. #test Rebuild lighting QAGame Change 3202955 on 2016/11/17 by Daniel.Lamb Add support for clearing all the cached cooked platform data for a platform when requested. #test cook QA game #jira UE-38361 Change 3202983 on 2016/11/17 by Daniel.Lamb Added support to rebuild lightmaps commandlet for building lightmaps in seperate files. #test rebuild lighting Custom QAGame maps. #jira OR-31907 Change 3203128 on 2016/11/17 by Josh.Adams - Fixed split screen user selection in ShooterGame (brought over some changes from NickD for it as well) Change 3203537 on 2016/11/18 by Dmitry.Rekman Fix ProjectWorldToScreen node for letterboxed viewports. (Merging CL 3201546 from Wombat to Dev-Platform). Change 3203540 on 2016/11/18 by Dmitry.Rekman Linux: be more verbose when setting vblank sync. (Merging CL 3199633 from Private-Wombat to Dev-Platform). Change 3203599 on 2016/11/18 by Dmitry.Rekman Speedup bForceCompilationAtStartup=True when nothing changed (UE-37067). - PR #2849: Contributed by slonopotamus. Change 3203610 on 2016/11/18 by Dmitry.Rekman Add CEF support for Linux (UE-6743). Change 3203615 on 2016/11/18 by Dmitry.Rekman Linux: fix bootstrap script so it is independent of working dir (UE-37016). - PR #2842 contributed by slonopotamus Change 3203645 on 2016/11/18 by Dmitry.Rekman Linux: fix UnrealCEFSubProcess. Change 3203658 on 2016/11/18 by Dmitry.Rekman Remove hard-coded paths to mono binary (UE-35228). - Another way to implement pull request #2741. Change 3203770 on 2016/11/18 by Josh.Adams - Brought over some changes from Dev-Core to not crash in AsyncLoading with debug code Change 3204244 on 2016/11/18 by Dmitry.Rekman Unsuppress mistakenly suppressed warnings and fix one more (UE-38788). Change 3204277 on 2016/11/18 by Brent.Pease + Fix seamless looping bug found on Dan's QAGame test + Fix static analyzer warning (which was a real bug with uncompressed streaming) + Code review feedback from Aaron + Small addition from channel sync ios bug fix Change 3204576 on 2016/11/18 by Omar.Rodriguez Expose the bEnableRemoteNotificationsSupport ini setting in the iOS project settings. Change 3204629 on 2016/11/18 by Chris.Babcock Fix case of VulkanSwapChain.h #include #jira UE-38843 #ue4 #vulkan Change 3204708 on 2016/11/18 by Josh.Adams - Set SwitchMoviePlayer to include the libs from the proper directory Change 3204730 on 2016/11/18 by Josh.Adams - Changed a check to a checkf to narrow down why FMaterialUniformExpressionType::GetTypeMap().FindRef(TypeName) is returning nullptr on tvOS Change 3204865 on 2016/11/18 by Brent.Pease + Turn off ios console logs on Windows to help sort through ios packaging and launch-on issues - This is NOT a fix but it should make it easier to track down the problem with it off. Change 3204883 on 2016/11/18 by Dmitry.Rekman Linux: fix native LaunchOn (UE-38616). Change 3204914 on 2016/11/18 by Brent.Pease + Turn off the device check to prevent it from conflicting with remote packaging/launch-on Change 3204940 on 2016/11/18 by Josh.Adams Backing out changes to the profiler for Switch. Shouldn't have checked it in today during smoke Change 3204952 on 2016/11/18 by Dmitry.Rekman Linux: fix bootstrap script (UE-38851). - Caused by UE-37016. Change 3205630 on 2016/11/21 by Brent.Pease + Fix audio sound queuing bug by ensuring audio buffers are not reused by different sound source objects. + Cleaned up the locking mechanism around stopping sound sources to make its intent and function are clear + Cleaned up memory tracking and freeing. #jira ue-38846 Change 3205787 on 2016/11/21 by Josh.Adams Merging //UE4/Dev-Main to Dev-Platform (//UE4/Dev-Platform) [CL 3206922 by Josh Adams in Main branch]
2016-11-21 20:27:58 -05:00
if (MobileDevice.DeviceImpl == null)
{
return;
}
ConnectEH += myConnectHandler;
DisconnectEH += myDisconnectHandler;
DeviceCallbackHandle = new DeviceNotificationCallback(NotifyCallback);
Copying //UE4/Dev-Platform to //UE4/Dev-Main (Source: //UE4/Dev-Platform @ 3206916) #lockdown Nick.Penwarden #rb none ========================== MAJOR FEATURES + CHANGES ========================== Change 3175510 on 2016/10/26 by Josh.Adams - New Wolf SDK support (11). - Added new input plugin now that extra NDA is lifted Change 3176629 on 2016/10/27 by Josh.Adams Merging //UE4/Dev-Main to Dev-Platform (//UE4/Dev-Platform) Change 3177232 on 2016/10/27 by Josh.Adams - Minor comment change Change 3177348 on 2016/10/27 by Dmitry.Rekman Linux: default to GL4. Change 3177523 on 2016/10/27 by Dmitry.Rekman Linux: update libc++ to 3.9 and add AArch64. Change 3178208 on 2016/10/28 by Daniel.Lamb Enable multithreaded lightmap encoding. Change 3178273 on 2016/10/28 by Luke.Thatcher [PLATFORM] [PS4] [!] Fix crash in PS4 packaging step. - Parallel-for accessing the same log files, causing IOException. Change 3178573 on 2016/10/28 by Dmitry.Rekman Linux: fix for projects not having proper version associations (UE-5954). - Fixed by CengizT. Change 3180487 on 2016/10/31 by Josh.Adams Moved new file to peoper spot Change 3180508 on 2016/10/31 by Josh.Adams - Fixed crash on audio free for Wolf Change 3181821 on 2016/11/01 by Josh.Adams - Fixed ShooterGame cooking after sync from main Change 3182469 on 2016/11/01 by Josh.Adams - test/shipping build wolf fixes Change 3183078 on 2016/11/02 by Josh.Adams - Added AllDesktop back in for Windows (File | Package) Change 3183229 on 2016/11/02 by Josh.Adams - Fixed wrong path in JunkManifest.txt Change 3184245 on 2016/11/02 by Dmitry.Rekman Linux: add AArch64 (ARM64) libs. Change 3184326 on 2016/11/02 by Dmitry.Rekman Linux: add more files for AArch64. Change 3184353 on 2016/11/02 by Dmitry.Rekman Linux: Add missed AArch64 libpng. Change 3184871 on 2016/11/03 by Luke.Thatcher [PLATFORM] [PS4] [!] Fix broken DownloadImage blueprint node on PS4. - Node should return a UTexture2DDynamic, otherwise the RHI assumes the data has been pre-formatted for the GPU, and we get pitch/layout issues. #jira UE-36365 Change 3185407 on 2016/11/03 by Dmitry.Rekman Linux: fix PhysX on AArch64. (Edigrating 3184484 from Wombat to Dev-Platform). Change 3187488 on 2016/11/04 by Josh.Adams Copying //Tasks/UE4/Private-Platform-Switch to Dev-Platform-Minimal (//UE4/Dev-Platform-Minimal) Change 3187740 on 2016/11/04 by Josh.Adams - Re-copying the Switch files, now with proper case in the directory names Change 3188304 on 2016/11/07 by Dan.Mahashin - Removed deprecated functions in NVN window creation Change 3188865 on 2016/11/07 by Luke.Thatcher [PLATFORM] [PS4] [~] Move PS4 console input handler into engine classes from OrionGame. - Enables console input from Sony's "Console Output" tool for all games, in debug/development builds. #jira UE-37672 Change 3189517 on 2016/11/07 by Jeff.Campeau Fix incorrect local platform identification in device manager. #jira UE-38312 Change 3189897 on 2016/11/08 by Luke.Thatcher [PLATFORM] [!] Fix width/height mismatch in DownloadImage blueprint node. Change 3190042 on 2016/11/08 by Josh.Adams - Fixed default and Shooter App Ids for Switch Change 3190181 on 2016/11/08 by Joe.Barnes [UE-37275] Split reflection capture error message into two UE_LOG()s. Line length causes truncation and line wrap on some platforms. Change 3190185 on 2016/11/08 by Joe.Barnes Fix another instance of UE_LOG() where the string was being truncated on Switch platform. Change 3190272 on 2016/11/08 by Daniel.Lamb Add file hashes to depependency tracking info. Moved partial gc controlling code outside of the cooker. Store cooked file hashes in cooked asset registry. Cooked asset registry is now part of the cooker instead of chunking manifest. #test cook paragon Change 3190332 on 2016/11/08 by Omar.Rodriguez Fixing issues with iOS remote notifications * Update UPlatformGameInstance::FPlatformRegisteredForRemoteNotificationsDelegate signature so the parameter is const& which will work with BlueprintAssignable * Fix misspelling when doing respondsToSelector check * Update generated Xcode project to use the generated entitlements file * Add remote-notification as a background mode * Update the generated entitlements file contents to include APS environment for push notifications * Added bEnableRemoteNotificationsSupport ini parameter to control whether iOS push notifications code is compiled Change 3190391 on 2016/11/08 by Brent.Pease UE-31739 - Crash when Deploying to iPad Air with BC4 Texture Compression Setting (Josh's suggestion worked out of the box) Change 3190786 on 2016/11/08 by Bart.Hawthorne Fix some missing PLATFORM_WOLF changes to PLATFORM_SWITCH in ShooterGame Change 3190902 on 2016/11/08 by Alicia.Cano Allow RTTI and exceptions to be enabled for Android #jira UE-37845 #android Change 3190973 on 2016/11/08 by Chris.Babcock Add ability to set element value field with new text parameter for UPL #jira UE-37390 #PR #2869 #ue4 #upl Change 3191411 on 2016/11/09 by Josh.Stoddard Warn when user tries to use a shared pak reader on the wrong thread #jira UE-38049 Change 3191635 on 2016/11/09 by Josh.Stoddard More useful message during cook when AT9 assets fail to encode using SCE's tool #jira UE-38053 Change 3191663 on 2016/11/09 by Peter.Sauerbrei fix for ios build from PC Change 3191701 on 2016/11/09 by Brent.Pease implement iOS device logs on windows Change 3191794 on 2016/11/09 by Daniel.Lamb Fixed up compile error missing header file. #test Compile editor #jira UE-38414 Change 3191807 on 2016/11/09 by Josh.Adams - Fixed one chage that was missed in the WolfPlat->Switch rename Change 3191867 on 2016/11/09 by Josh.Adams - Enabled Switch for ShooterGame project Change 3191958 on 2016/11/09 by Jeff.Campeau Add warning for anyone still using XP Change 3192185 on 2016/11/09 by Josh.Adams - Updated to SDK 0.11.12 - Added TrackLotCheckItem API to track guidelines with limits (nothing using it yet) Change 3192241 on 2016/11/09 by Josh.Adams Merging //UE4/Dev-Main to Dev-Platform (//UE4/Dev-Platform) Change 3192324 on 2016/11/09 by Josh.Adams - Worked around an issue with RunOnTarget stripping quotes around paths with spaces #jira UE-38388 Change 3192387 on 2016/11/09 by Josh.Adams - Updating editor icon for Switch #jira UE-38295 Change 3192476 on 2016/11/09 by Dmitry.Rekman Linux: put correct OpenAL lib per architecture. (Edigrating CL 3185947 from Wombat to Dev-Platform) Change 3192527 on 2016/11/09 by Josh.Adams - Fixed a shadow variable warning #jira UE-38408 Change 3192606 on 2016/11/09 by Jeff.Campeau XP option removed #jira UEPLAT-1542 Change 3192644 on 2016/11/09 by Josh.Adams - Fixed a CIS error (not sure why I don't get it, but hey) Change 3192659 on 2016/11/09 by Josh.Adams - Fixed a crash in DeploymentServer Change 3192672 on 2016/11/09 by Jeff.Campeau Fix WinXP message spamming Change 3193252 on 2016/11/10 by Josh.Adams - Remove assertion in SwitchTextureFormat when the SDK can't be found (if you are sharing DLLs) Change 3193756 on 2016/11/10 by Dmitry.Rekman Linux: add support for touch events. (Edigrating CL 3188159 from Wombat to Dev-Platform). Change 3194297 on 2016/11/10 by Jeff.Campeau HarfBuzz implementation for Xbox One #jira UE-28590 Change 3194299 on 2016/11/10 by Jeff.Campeau Pump Xbox One messaging during slow startup tasks #jira UEPLAT-1276 Change 3194300 on 2016/11/10 by Jeff.Campeau Use response files when building for Xbox One #jira UEPLAT-1296 Change 3194313 on 2016/11/11 by Jeff.Campeau Stop uploading symbols on the first error Show a more detailed error message if symbol uploading fails Add a command line option to disable upload of symbols #1852 #jira UE-24425 Change 3194327 on 2016/11/11 by Jeff.Campeau Deduplicate Xbox One build.cs setup for several modules #jira UE-37540 Change 3194402 on 2016/11/11 by Dmitry.Rekman Linux: do not apply mouse workaround unnecessarily. - Only matters when there is more than one window. (Edigrating 3194399 from Wombat to Dev-Platform). Change 3194434 on 2016/11/11 by Dan.Mahashin - Ported fix CL 3193690: Add workaround to file I/O error about ResultInvalidCurrentMemory when reloading levels - remove uncached attribute during memory pool finalization Change 3194569 on 2016/11/11 by Daniel.Lamb Fixed issue with CreateLinker failing to return LinkerLoad but creating a UPackage which can't be cleaned up. Change 3194570 on 2016/11/11 by Daniel.Lamb Fix for DiffSerializeArchive not using the correct archive when saving packages. #test Cook paragon Change 3194571 on 2016/11/11 by Daniel.Lamb Make sure dependent packages are valid before using them. Added FastBuildCookRun bat file for paragon testing. #test Cook Paragon Change 3194575 on 2016/11/11 by Daniel.Lamb Reworked a warning for the cooker. Change 3194698 on 2016/11/11 by Daniel.Lamb Skip skin verify only runs on build machines now. Saves paragon cook time. Change 3194699 on 2016/11/11 by Daniel.Lamb Changed the wording of skip editor content setting so it's more clear. #test none Change 3194702 on 2016/11/11 by Daniel.Lamb Potential fix for default materials not being in chunk zero. #test run ps4 cooked build paragon Change 3194711 on 2016/11/11 by Alicia.Cano Allow RTTI and exceptions to be enabled for Android Allow RTTI to be enabled for IOS, Mac #jira UE-37845, UE-20314 #android #ios #mac Change 3194956 on 2016/11/11 by Josh.Adams - Removed the crash with unknown socket error code, left in the warning Change 3195028 on 2016/11/11 by Dmitry.Rekman Linux: repair launch on. (Edigrating 3194384 from //UE4/Private-Wombat/... to //UE4/Dev-Platform/...) Change 3195041 on 2016/11/11 by Dmitry.Rekman Linux: support selecting architectures per project. (Edigrating 3192783 from Wombat to Dev-Platform). Change 3195058 on 2016/11/11 by Dmitry.Rekman Linux: fix code to determine number of cores. - ARM topology seems not to be in line with the assumptions made by x86-centric code. (Merging 3184632 from Wombat to Dev-Platform). Change 3195082 on 2016/11/11 by Josh.Adams - Fixed name of packaged Switch builds to have the config in it (Shipping, etc) #jira UE-38394 Change 3195151 on 2016/11/11 by Bart.Hawthorne - Add game server settings to project settings to connect to the actual game server, instead of the debug login - Use the system software dialog box to show error codes for login failures Change 3195153 on 2016/11/11 by Josh.Adams - Fixed copy and paste logs errors Change 3195156 on 2016/11/11 by Josh.Adams - Fixed some default values, especially for save games (uses their default of 4MB size) - Added some LotCheck write tracking Change 3195285 on 2016/11/11 by Jeff.Campeau Fix HarfBuzz warning on Xbox One Change 3195477 on 2016/11/11 by Josh.Adams - Fixed up some IsGameOnly calls #jira UE-37575 Change 3195490 on 2016/11/11 by Dmitry.Rekman UAT: fix CIS (removed old variables). Change 3195724 on 2016/11/11 by Josh.Adams - Final fix for name of .nsp (content only projects in Shipping config, etc) #jira UE-38394 Change 3195755 on 2016/11/11 by Josh.Adams - Made translucent Switch icons Change 3195771 on 2016/11/11 by Josh.Adams - Fixed some Switch "space in path" issues #jira UE-38393 Change 3195801 on 2016/11/11 by Josh.Adams - Handle making sure the save is completed before we shutdown #jira UE-38215 Change 3196593 on 2016/11/14 by Michael.Trepka Implemented Info string in AvfMedia for display in Media Player Editor #jira UE-35386 Change 3196782 on 2016/11/14 by Josh.Adams - Added a comment for a workaround Change 3196784 on 2016/11/14 by Michael.Trepka Alembic importer for Mac #jira UE-37708 Change 3196901 on 2016/11/14 by Alicia.Cano ADB over wifi fails to deploy on Launch on. #jira UE-37957 #android Change 3197055 on 2016/11/14 by Josh.Adams - Fixed BinnedAllocator crash that happened with PoisonProxy and large allocations with large alignment Change 3197059 on 2016/11/14 by Josh.Adams - Removed some stat code with no STATS Change 3197066 on 2016/11/14 by Josh.Adams - Fixed the generic growableallocator to not free metadata before it's used for stats, and cleaned up a couple minor things Change 3197176 on 2016/11/14 by Josh.Adams - Added some helper scripts to switch in and out of debug mode on Switch Change 3197183 on 2016/11/14 by Bart.Hawthorne Error dialog fixes based on peer review feedback from JoshA Change 3197339 on 2016/11/14 by Josh.Adams Allow -htcs on the commandline now to override disabling Htcs in packaged builds Change 3197401 on 2016/11/14 by Josh.Adams - Fixed the Switch package installation script to remove the path of the package, since it causes problems with spaces, and also it makes the script less portable! #jira UE-38556 Change 3197691 on 2016/11/14 by Dmitry.Rekman Linux: save added devices. (Edigrating 3196529 from Wombat to Dev-Platform). Change 3197854 on 2016/11/15 by Dan.Mahashin - MemoryProfiler2: fixed Switch parser file path in the csproj Change 3197960 on 2016/11/15 by Dan.Mahashin - NVN RHITransitionResources() directly uses a barrier instead of relying on CopyToResolveTarget() side effect (UE-33834) Change 3198488 on 2016/11/15 by Bart.Hawthorne Submit missing NoRedist/DefaultEngine.ini file Change 3198970 on 2016/11/15 by Michael.Trepka Don't try to use installed Mono 4.6 on Mac as it's known to have issues on macOS 10.12 (for example building the editor with UBT often fails with Mono running out of file desriptors) Change 3199050 on 2016/11/15 by Daniel.Lamb Some more output to help track down iterative cooking scenarios #test Cook paragon Change 3199097 on 2016/11/15 by Josh.Adams - Fixed up Switch packaging to re-generate the meta data in case it changed since compile time (esp with content only projects - Fixed default Program Id in code - Fixed a problem with Run with a space in the path #jira UE-38608 Change 3199181 on 2016/11/15 by Dmitry.Rekman Fix CIS (compiling LinuxTargetDevice without engine). Change 3199253 on 2016/11/15 by Dmitry.Rekman Hopeful fix for a static analysis warning. Change 3199325 on 2016/11/15 by Joe.Barnes Start a new CommandBuffer immediately upon ending one. Prevents fetching when there's no CommandBuffer. Needed for Loading Screen movie playback. Change 3199814 on 2016/11/15 by Dmitry.Rekman Linux: remove forced -windowed when launching. (Merging CL 3199789 from Wombat to Dev-Platform) Change 3200580 on 2016/11/16 by Josh.Adams Updasted DeploymentServer Change 3200595 on 2016/11/16 by Joe.Barnes Removed inadvertent SleepThread() when starting movie playback. Change 3200604 on 2016/11/16 by Josh.Adams - Added NN_MIDDLEWARE macros to tag ths apps as using UE4 middleware Change 3200632 on 2016/11/16 by Brent.Pease Update PlatformShowcase with latest tests Change 3200704 on 2016/11/16 by Dmitry.Rekman Linux: fix native compilation. Change 3200711 on 2016/11/16 by Brent.Pease - Support ios audio streaming from disk - Flushed out ADPCMAudioInfo to be more flexible with buffer management in addition to support streaming from disk. This should make more code platform independent. + Other platforms should work fine but will need to be updated to use the new buffer flexability (and hence simplify their own code and buffer management) - IOS audio implementation simplified to use new ADPCMAudioInfo functionality - Fixed adpcm seamless looping NOTE: While everything works with my testing (admittedly simple tests) a little more code cleanup needs to happen... Change 3201015 on 2016/11/16 by Josh.Adams Merging //UE4/Dev-Main to Dev-Platform (//UE4/Dev-Platform) Change 3201023 on 2016/11/16 by Josh.Stoddard Fix splash screen assignment for iPad #jira UE-38623 Change 3201215 on 2016/11/16 by Brent.Pease Hopefully final fix for build breakage Change 3201259 on 2016/11/16 by Josh.Adams - Removed the clock rate settings from the Project Settings, and the cvars - it was just confusing - Further improved the metadata recreation during packaging (can get rid of the temp meta/desc files now I believe) - Reduced audio pool alignment to not waste massive memory from it Change 3202332 on 2016/11/17 by Daniel.Lamb Changed build scripts to support iterative cooking #test Ran new build scripts Change 3202371 on 2016/11/17 by Michael.Trepka Changed FAppleHttpResponse::GetContentLength to return expected content size instead of payload size so it's consistent with other implementations #jira UE-38392 Change 3202421 on 2016/11/17 by Michael.Trepka Decrease the number of max open files for a thread on Apple platforms from 256 to 192 to leave more file descriptors to Cocoa #jira UE-18343 Change 3202462 on 2016/11/17 by Michael.Trepka Fixed HTTP If-None-Match response code on Mac and iOS Fixed by iktomi, https://answers.unrealengine.com/questions/492514/http-if-none-match-logic-isnt-working-on-mac-due-t.html #jira UE-36317 Change 3202620 on 2016/11/17 by Daniel.Lamb Fixed issue with some objects being garbage collected which shouldn't be because the collection handler didn't get registered. Commandlets now do not always have GIsRequestingExit true. Made crash handler check for commandlets running and exit appropriately. #test Rebuild lighting QAGame Change 3202955 on 2016/11/17 by Daniel.Lamb Add support for clearing all the cached cooked platform data for a platform when requested. #test cook QA game #jira UE-38361 Change 3202983 on 2016/11/17 by Daniel.Lamb Added support to rebuild lightmaps commandlet for building lightmaps in seperate files. #test rebuild lighting Custom QAGame maps. #jira OR-31907 Change 3203128 on 2016/11/17 by Josh.Adams - Fixed split screen user selection in ShooterGame (brought over some changes from NickD for it as well) Change 3203537 on 2016/11/18 by Dmitry.Rekman Fix ProjectWorldToScreen node for letterboxed viewports. (Merging CL 3201546 from Wombat to Dev-Platform). Change 3203540 on 2016/11/18 by Dmitry.Rekman Linux: be more verbose when setting vblank sync. (Merging CL 3199633 from Private-Wombat to Dev-Platform). Change 3203599 on 2016/11/18 by Dmitry.Rekman Speedup bForceCompilationAtStartup=True when nothing changed (UE-37067). - PR #2849: Contributed by slonopotamus. Change 3203610 on 2016/11/18 by Dmitry.Rekman Add CEF support for Linux (UE-6743). Change 3203615 on 2016/11/18 by Dmitry.Rekman Linux: fix bootstrap script so it is independent of working dir (UE-37016). - PR #2842 contributed by slonopotamus Change 3203645 on 2016/11/18 by Dmitry.Rekman Linux: fix UnrealCEFSubProcess. Change 3203658 on 2016/11/18 by Dmitry.Rekman Remove hard-coded paths to mono binary (UE-35228). - Another way to implement pull request #2741. Change 3203770 on 2016/11/18 by Josh.Adams - Brought over some changes from Dev-Core to not crash in AsyncLoading with debug code Change 3204244 on 2016/11/18 by Dmitry.Rekman Unsuppress mistakenly suppressed warnings and fix one more (UE-38788). Change 3204277 on 2016/11/18 by Brent.Pease + Fix seamless looping bug found on Dan's QAGame test + Fix static analyzer warning (which was a real bug with uncompressed streaming) + Code review feedback from Aaron + Small addition from channel sync ios bug fix Change 3204576 on 2016/11/18 by Omar.Rodriguez Expose the bEnableRemoteNotificationsSupport ini setting in the iOS project settings. Change 3204629 on 2016/11/18 by Chris.Babcock Fix case of VulkanSwapChain.h #include #jira UE-38843 #ue4 #vulkan Change 3204708 on 2016/11/18 by Josh.Adams - Set SwitchMoviePlayer to include the libs from the proper directory Change 3204730 on 2016/11/18 by Josh.Adams - Changed a check to a checkf to narrow down why FMaterialUniformExpressionType::GetTypeMap().FindRef(TypeName) is returning nullptr on tvOS Change 3204865 on 2016/11/18 by Brent.Pease + Turn off ios console logs on Windows to help sort through ios packaging and launch-on issues - This is NOT a fix but it should make it easier to track down the problem with it off. Change 3204883 on 2016/11/18 by Dmitry.Rekman Linux: fix native LaunchOn (UE-38616). Change 3204914 on 2016/11/18 by Brent.Pease + Turn off the device check to prevent it from conflicting with remote packaging/launch-on Change 3204940 on 2016/11/18 by Josh.Adams Backing out changes to the profiler for Switch. Shouldn't have checked it in today during smoke Change 3204952 on 2016/11/18 by Dmitry.Rekman Linux: fix bootstrap script (UE-38851). - Caused by UE-37016. Change 3205630 on 2016/11/21 by Brent.Pease + Fix audio sound queuing bug by ensuring audio buffers are not reused by different sound source objects. + Cleaned up the locking mechanism around stopping sound sources to make its intent and function are clear + Cleaned up memory tracking and freeing. #jira ue-38846 Change 3205787 on 2016/11/21 by Josh.Adams Merging //UE4/Dev-Main to Dev-Platform (//UE4/Dev-Platform) [CL 3206922 by Josh Adams in Main branch]
2016-11-21 20:27:58 -05:00
int ret = MobileDevice.DeviceImpl.NotificationSubscribe(DeviceCallbackHandle);
if (ret != 0)
{
throw new Exception("AMDeviceNotificationSubscribe failed with error " + ret);
}
}
/// <summary>
/// Raises the <see>Connect</see> event.
/// </summary>
/// <param name="args">A <see cref="ConnectEventArgs"/> that contains the event data.</param>
protected static void OnConnect(ConnectEventArgs args)
{
ConnectEventHandler handler = ConnectEH;
if (handler != null)
{
handler(null, args);
}
}
/// <summary>
/// Raises the <see>Disconnect</see> event.
/// </summary>
/// <param name="args">A <see cref="ConnectEventArgs"/> that contains the event data.</param>
protected static void OnDisconnect(ConnectEventArgs args)
{
ConnectEventHandler handler = DisconnectEH;
if (handler != null)
{
handler(null, args);
}
}
private static void NotifyCallback(ref AMDeviceNotificationCallbackInfo callback)
{
if (callback.msg == NotificationMessage.Connected)
{
MobileDeviceInstance Inst;
if (ConnectedDevices.TryGetValue(callback.dev, out Inst))
{
// Already connected, not sure why we got another message...
}
else
{
Inst = new MobileDeviceInstance(callback.dev);
ConnectedDevices.Add(callback.dev, Inst);
}
if (Inst.ConnectToPhone())
{
OnConnect(new ConnectEventArgs(callback));
}
}
else if (callback.msg == NotificationMessage.Disconnected)
{
MobileDeviceInstance Inst;
if (ConnectedDevices.TryGetValue(callback.dev, out Inst))
{
Inst.connected = false;
OnDisconnect(new ConnectEventArgs(callback));
ConnectedDevices.Remove(callback.dev);
}
}
}
}
/// <summary>
/// Exposes access to a mobile device running iOS
/// </summary>
public class MobileDeviceInstance
{
#region Locals
private DeviceRestoreNotificationCallback drn1;
private DeviceRestoreNotificationCallback drn2;
private DeviceRestoreNotificationCallback drn3;
private DeviceRestoreNotificationCallback drn4;
internal TypedPtr<AppleMobileDeviceConnection> iPhoneHandle;
internal TypedPtr<AFCCommConnection> AFCCommsHandle;
internal IntPtr hSyslogService;
public bool connected;
private string current_directory;
#endregion // Locals
#region Constructors
/// <summary>
/// Initializes a new iPhone object.
/// </summary>
private void doConstruction()
{
drn1 = new DeviceRestoreNotificationCallback(DfuConnectCallback);
drn2 = new DeviceRestoreNotificationCallback(RecoveryConnectCallback);
drn3 = new DeviceRestoreNotificationCallback(DfuDisconnectCallback);
drn4 = new DeviceRestoreNotificationCallback(RecoveryDisconnectCallback);
int ret = MobileDevice.DeviceImpl.RestoreRegisterForDeviceNotifications(drn1, drn2, drn3, drn4, 0, IntPtr.Zero);
if (ret != 0)
{
throw new Exception("AMRestoreRegisterForDeviceNotifications failed with error " + ret);
}
current_directory = "/";
}
/// <summary>
/// Creates a new iPhone object. If an iPhone is connected to the computer, a connection will automatically be opened.
/// </summary>
public MobileDeviceInstance(TypedPtr<AppleMobileDeviceConnection> Connection)
{
iPhoneHandle = Connection;
doConstruction();
}
#endregion // Constructors
#region Properties
/// <summary>
/// Gets the current activation state of the phone
/// </summary>
public string ActivationState
{
get
{
return MobileDevice.AMDeviceCopyValue(iPhoneHandle, "ActivationState");
}
}
/// <summary>
/// Returns true if an iPhone is connected to the computer
/// </summary>
public bool IsConnected
{
get
{
return connected;
}
}
/// <summary>
/// Returns the Device information about the connected iPhone
/// </summary>
public TypedPtr<AppleMobileDeviceConnection> Device
{
get
{
return iPhoneHandle;
}
}
///<summary>
/// Returns the 40-character UUID of the device
///</summary>
public string DeviceId
{
get
{
return MobileDevice.AMDeviceCopyValue(iPhoneHandle, "UniqueDeviceID");
}
}
///<summary>
/// Returns the type of the device, should be either 'iPhone' or 'iPod'.
///</summary>
public string DeviceType
{
get
{
return MobileDevice.AMDeviceCopyValue(iPhoneHandle, "DeviceClass");
}
}
///<summary>
/// Returns the current OS version running on the device (2.0, 2.2, 3.0, 3.1, etc).
///</summary>
public string DeviceVersion
{
get
{
return MobileDevice.AMDeviceCopyValue(iPhoneHandle, "ProductVersion");
}
}
///<summary>
/// Returns the name of the device, like "Dan's iPhone"
///</summary>
public string DeviceName
{
get
{
return MobileDevice.AMDeviceCopyValue(iPhoneHandle, "DeviceName");
}
}
///<summary>
/// Returns the model number of the device, like "MA712"
///</summary>
public string ModelNumber
{
get
{
return MobileDevice.AMDeviceCopyValue(iPhoneHandle, "ModelNumber");
}
}
///<summary>
/// Returns the product type of the device, like "iPhone1,1"
///</summary>
public string ProductType
{
get
{
return MobileDevice.AMDeviceCopyValue(iPhoneHandle, "ProductType");
}
}
/// <summary>
/// Returns the handle to the iPhone com.apple.afc service
/// </summary>
public TypedPtr<AFCCommConnection> AFCHandle
{
get
{
return AFCCommsHandle;
}
}
/// <summary>
/// Gets/Sets the current working directory, used by all file and directory methods
/// </summary>
public string CurrentDirectory
{
get
{
return current_directory;
}
set
{
string new_path = FullPath(current_directory, value);
if (!IsDirectory(new_path))
{
throw new Exception("Invalid directory specified");
}
current_directory = new_path;
}
}
#endregion // Properties
#region Events
/// <summary>
/// Write Me
/// </summary>
public event EventHandler DfuConnect;
/// <summary>
/// Raises the <see>DfuConnect</see> event.
/// </summary>
/// <param name="args">A <see cref="DeviceNotificationEventArgs"/> that contains the event data.</param>
protected void OnDfuConnect(DeviceNotificationEventArgs args)
{
EventHandler handler = DfuConnect;
if (handler != null)
{
handler(this, args);
}
}
/// <summary>
/// Write Me
/// </summary>
public event EventHandler DfuDisconnect;
/// <summary>
/// Raises the <see>DfiDisconnect</see> event.
/// </summary>
/// <param name="args">A <see cref="DeviceNotificationEventArgs"/> that contains the event data.</param>
protected void OnDfuDisconnect(DeviceNotificationEventArgs args)
{
EventHandler handler = DfuDisconnect;
if (handler != null)
{
handler(this, args);
}
}
/// <summary>
/// The RecoveryModeEnter event is triggered when the attached iPhone enters Recovery Mode
/// </summary>
public event EventHandler RecoveryModeEnter;
/// <summary>
/// Raises the <see>RecoveryModeEnter</see> event.
/// </summary>
/// <param name="args">A <see cref="DeviceNotificationEventArgs"/> that contains the event data.</param>
protected void OnRecoveryModeEnter(DeviceNotificationEventArgs args)
{
EventHandler handler = RecoveryModeEnter;
if (handler != null)
{
handler(this, args);
}
}
/// <summary>
/// The RecoveryModeLeave event is triggered when the attached iPhone leaves Recovery Mode
/// </summary>
public event EventHandler RecoveryModeLeave;
/// <summary>
/// Raises the <see>RecoveryModeLeave</see> event.
/// </summary>
/// <param name="args">A <see cref="DeviceNotificationEventArgs"/> that contains the event data.</param>
protected void OnRecoveryModeLeave(DeviceNotificationEventArgs args)
{
EventHandler handler = RecoveryModeLeave;
if (handler != null)
{
handler(this, args);
}
}
#endregion // Events
#region Filesystem
/// <summary>
/// Sanitizes a filename for use on PC (just the filename, not a full path)
/// </summary>
static public string SanitizeFilename(string InputFilename)
{
char[] Filename = InputFilename.ToCharArray();
char[] BadChars = Path.GetInvalidFileNameChars();
for (int i = 0; i < Filename.Length; ++i)
{
foreach (char BadChar in BadChars)
{
if (Filename[i] == BadChar)
{
Filename[i] = '_';
break;
}
}
}
return new string(Filename);
}
/// <summary>
/// Sanitizes a path for use on PC (just the path, no filename)
/// </summary>
static public string SanitizePathNoFilename(string InputPath)
{
char[] DirectoryName = InputPath.ToCharArray();
char[] BadChars = Path.GetInvalidPathChars();
for (int i = 0; i < DirectoryName.Length; ++i)
{
foreach (char BadChar in BadChars)
{
if ((DirectoryName[i] == BadChar) || (DirectoryName[i] == ':'))
{
DirectoryName[i] = '_';
break;
}
}
}
return new string(DirectoryName);
}
void RecursiveBackup(string SourceFolderOnDevice, string TargetFolderOnPC)
{
string[] Directories = GetDirectories(SourceFolderOnDevice);
foreach (string Directory in Directories)
{
string NewSourceFolder = SourceFolderOnDevice + Directory + "/";
string NewTargetFolder = Path.Combine(TargetFolderOnPC, SanitizePathNoFilename(Directory));
RecursiveBackup(NewSourceFolder, NewTargetFolder);
}
string[] Filenames = GetFiles(SourceFolderOnDevice);
foreach (string Filename in Filenames)
{
string SourceFilename = SourceFolderOnDevice + Filename;
string DestFilename = Path.Combine(TargetFolderOnPC, SanitizeFilename(Filename));
WriteProgressLine("Copying '{0}' -> '{1}' ...", 0, SourceFilename, DestFilename);
CopyFileFromPhone(DestFilename, SourceFilename, 1024 * 1024);
}
}
void RecursiveCopy(string SourceFolderOnPC, string TargetFolderOnDevice)
{
string[] Directories = System.IO.Directory.GetDirectories(SourceFolderOnPC);
foreach (string Directory in Directories)
{
string NewSourceFolder = Directory;
string NewTargetFolder = TargetFolderOnDevice + Directory.Substring(Directory.LastIndexOf(Path.DirectorySeparatorChar)+1) + "/";
WriteProgressLine("Copying folder {0} to {1}", 0, NewSourceFolder, NewTargetFolder);
RecursiveCopy(NewSourceFolder, NewTargetFolder);
}
string[] Filenames = System.IO.Directory.GetFiles(SourceFolderOnPC);
foreach (string Filename in Filenames)
{
string SourceFilename = Filename;
string DestFilename = TargetFolderOnDevice + Path.GetFileName(Filename);
WriteProgressLine("Copying '{0}' -> '{1}' ...", 0, SourceFilename, DestFilename);
CopyFileToPhone(SourceFilename, DestFilename, 1024 * 1024);
}
}
public void DumpInstalledApplications()
{
Dictionary<string, object> AppBundles;
MobileDevice.DeviceImpl.LookupApplications(iPhoneHandle, IntPtr.Zero, out AppBundles);
foreach (var Bundle in AppBundles)
{
WriteProgressLine(String.Format("Application bundle {0} has the following pairs:", Bundle.Key), 0);
Dictionary<object, object> BundlePairs = (Dictionary<object, object>)Bundle.Value;
foreach (var KVP in BundlePairs)
{
WriteProgressLine(String.Format(" {0} -> {1}", KVP.Key, KVP.Value), 0);
}
}
}
/// <summary>
/// Tries to back up all of the files on a phone in a particular directory to the PC
/// (requires the bundle identifier to be able to mount that directory)
/// </summary>
public bool TryBackup(string BundleIdentifier, string SourceFolderOnDevice, string TargetFolderOnPC)
{
if (ConnectToBundle(BundleIdentifier))
{
WriteProgressLine("Connected to bundle '{0}'", 0, BundleIdentifier);
try
{
RecursiveBackup(SourceFolderOnDevice, TargetFolderOnPC);
return true;
}
catch (Exception ex)
{
WriteProgressLine("Failed to transfer a file, extended error is '{0}'", 100, ex.Message);
return false;
}
}
else
{
WriteProgressLine("Error: Failed to connect to bundle '{0}'", 100, BundleIdentifier);
return false;
}
}
/// <summary>
/// Tries to copy the specified file from the PC to a specified file path on the target device.
/// (requires the bundle identifier to be able to mount that directory)
/// </summary>
public bool TryCopyFile(string BundleIdentifier, string SourceFileOnPC, string TargetFileOnDevice)
{
if (ConnectToBundle(BundleIdentifier))
{
WriteProgressLine("Connected to bundle '{0}'", 0, BundleIdentifier);
try
{
CopyFileToPhone(SourceFileOnPC, TargetFileOnDevice, 1024 * 1024);
return true;
}
catch (Exception ex)
{
WriteProgressLine("Failed to transfer a file, extended error is '{0}'", 100, ex.Message);
return false;
}
}
else
{
WriteProgressLine("Error: Failed to connect to bundle '{0}'", 100, BundleIdentifier);
return false;
}
}
/// <summary>
/// Tries to copy the specified file from the device to a specified file path on the PC.
/// (requires the bundle identifier to be able to mount that directory)
/// </summary>
public bool TryCopyFileOut(string BundleIdentifier, string SourceFileOnDevice, string TargetFileOnPC)
{
if (ConnectToBundle(BundleIdentifier))
{
WriteProgressLine("Connected to bundle '{0}'", 0, BundleIdentifier);
try
{
CopyFileFromPhone(TargetFileOnPC, SourceFileOnDevice, 1024 * 1024);
return true;
}
catch (Exception ex)
{
WriteProgressLine("Failed to transfer a file, extended error is '{0}'", 100, ex.Message);
return false;
}
}
else
{
WriteProgressLine("Error: Failed to connect to bundle '{0}'", 100, BundleIdentifier);
return false;
}
}
/// <summary>
/// Tries to copy all of the files in a particular directory on the PC to the phone directory
/// (requires the bundle identifier to be able to mount that directory)
/// </summary>
public bool TryCopy(string BundleIdentifier, string SourceFolderOnPC, string TargetFolderOnDevice)
{
if (ConnectToBundle(BundleIdentifier))
{
WriteProgressLine("Connected to bundle '{0}'", 0, BundleIdentifier);
try
{
RecursiveCopy(SourceFolderOnPC, TargetFolderOnDevice);
return true;
}
catch (Exception ex)
{
WriteProgressLine("Failed to transfer a file, extended error is '{0}'", 100, ex.Message);
return false;
}
}
else
{
WriteProgressLine("Error: Failed to connect to bundle '{0}'", 100, BundleIdentifier);
return false;
}
}
Copying //UE4/Dev-Mobile to //UE4/Dev-Main (Source: //UE4/Dev-Mobile @ 3383462) #lockdown Nick.Penwarden ========================== MAJOR FEATURES + CHANGES ========================== Change 3292174 on 2017/02/08 by Nick.Shin HTML5 emscripten: wasm and webgl2 support - Linux toolchain #jira UEPLAT-1437 Switch [to] web assembly Change 3292193 on 2017/02/08 by Nick.Shin HTML5 emscripten: wasm and webgl2 support - ThirdParty libs compiled with new toolchain with wasm support #jira UEPLAT-1437 Switch [to] web assembly Change 3292215 on 2017/02/08 by Nick.Shin HTML5 emscripten: wasm and wbegl2 support - emscripten toolchain #jira UEPLAT-1437 Switch [to] web assembly Change 3292222 on 2017/02/08 by Nick.Shin HTML5 emscripten: wasm support - ENGINE changes (c# & cpp files) #jira UEPLAT-1437 Switch [to] web assembly Change 3292223 on 2017/02/08 by Nick.Shin HTML5 merge ThirdParty lib build scripts from Dev-Platform to Dev-Mobile Change 3292228 on 2017/02/08 by Nick.Shin HTML5 emscripten: webgl support - webgl patches - and a lot of UE4 patches to package HTML5 on LINUX - mostly from mozilla's jukka -- thx jukka! #jira UEPLAT-828 (4.16) Support ES3 / WebGL2 in HTML5 Change 3292285 on 2017/02/08 by Nick.Shin HTML5 emscripten: wasm and webgl2 support - Windows toolchain #jira UEPLAT-1437 Switch [to] web assembly Change 3293994 on 2017/02/09 by Nick.Shin HTML5 emscripten: wasm and webgl2 support - OSX toolchain #jira UEPLAT-1437 Switch [to] web assembly Change 3294391 on 2017/02/09 by Nick.Shin HTML5 "black box issues" revisited - jukka rewrote the window resize handler -- much cleaner and more straightforward #jira UE-36341 HTML5 - View is incorrectly drawn #jira UE-32311 Templates on Firefox/Chrome on HTML5 are not full screen during Launch On Change 3296421 on 2017/02/10 by Jack.Porter Fix landscape spline segment splitting placing when using streaming levels Change 3296587 on 2017/02/10 by Jack.Porter Additional fix for landscape spline segment splitting when using streaming levels Change 3301241 on 2017/02/14 by Mi.Wang Fixed DeviceProfileEditor bug for incorrect clamp the Texture Mip LOD size. #jira UE-36237 #rb jack.porter Change 3301387 on 2017/02/14 by Nick.Shin HTML5 emscripten: webgl support - webgl patches from mozilla's jukka + hardware instancing + glBlitFramebuffer + GL AlaphaBlendOperation #jira UEPLAT-828 (4.16) Support ES3 / WebGL2 in HTML5 Change 3301405 on 2017/02/14 by Nick.Shin HTML5 plugin fix when blueprint projects are promoted to code projects automatically. #jira UE-41710 HTML5 - Package Failure - Failed to Produce item ProjectName-OnlineSubsystemNull.bc Change 3302278 on 2017/02/14 by Omar.Rodriguez UE-36651: Mac Vulkan Android Projects crash on launch. * Glslang library has been built for Mac but flag was not updated * Set GlslangAvailable to true for Mac when building an Android project with vulkan #jira UE-36651 Change 3302773 on 2017/02/14 by Chris.Babcock Add a dropdown with some common console commands on Android (contributed by rafortis) #jira UE-40834 #PR #3143 #ue4 #android Change 3305604 on 2017/02/16 by Nick.Shin HTML5 webgl2 shader- turn on: instance static mesh vertex factory #jira UEPLAT-828 (4.16) Support ES3 / WebGL2 in HTML5 Change 3308154 on 2017/02/16 by Nick.Shin HTML5 GitHub PR #jira UE-42019 GitHub 3258 : Added suport for emscripten --pre-js and --post-js option when building for HTML5 Change 3308510 on 2017/02/16 by Nick.Shin HTML5 webgl2 shader fixes #jria UEMOB-201 Support ES3 / WebGL2 in HTML5 Change 3308971 on 2017/02/17 by Jack.Porter Fix for landscape painting when height<0 in the Ortho viewports Change 3309075 on 2017/02/17 by Allan.Bentham Include static subject meshes when masking out modulated shadow casters. #jira UE-41581 Change 3309531 on 2017/02/17 by Chris.Babcock Handle large OBB files in APK #jira UE-41443 #ue4 #android Change 3311320 on 2017/02/19 by Dmitriy.Dyomin Fixed: Particle Cutout Crashes On Mobile Devices That Don't Support Hardware Instancing (Mali-400 GPU) #jira UE-41970 Change 3311347 on 2017/02/20 by Dmitriy.Dyomin Fixed: Engine Crashes When Previewing ES3_1 With Material Using World Position Offset (Need Custom Stencil) #jira UE-41976 Change 3311398 on 2017/02/20 by Dmitriy.Dyomin Fixed: Landscapes do not render on PowerVR device #jira UE-35530 Change 3311428 on 2017/02/20 by Dmitriy.Dyomin Fixed: Exposure Is More Extreme In High-End Mobile Preview Modes #jira UE-42036 Change 3311448 on 2017/02/20 by Dmitriy.Dyomin Fixed: Packaged game Crashes on android after entering "Help" command twice #jira UE-41956 Change 3311587 on 2017/02/20 by Allan.Bentham ES2 GLSL - Silently swap all uint to ints #jira UE-41548 Change 3313930 on 2017/02/21 by Allan.Bentham Print literal uints as ints when generating ES2 code. #jira UE-41548 Change 3317924 on 2017/02/22 by Nick.Shin HTML5 emscripten: wasm & webgl2 support - RC1 - Linux toolchain #jira UEMOB-263 Switch [to] web assembly #jira UEMOB-201 Support ES3 / WebGL2 in HTML5 Change 3317929 on 2017/02/22 by Nick.Shin HTML5 emscripten: wasm & webgl2 support - RC1 - ThirdParty libs compiled with new toolchain with wasm and webgl2 support #jira UEMOB-263 Switch [to] web assembly #jira UEMOB-201 Support ES3 / WebGL2 in HTML5 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 Change 3318004 on 2017/02/22 by Nick.Shin HTML5 emscripten: wasm & webgl2 support - RC1 - windows toolchain #jira UEMOB-263 Switch [to] web assembly #jira UEMOB-201 Support ES3 / WebGL2 in HTML5 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 Change 3318672 on 2017/02/23 by Nick.Shin HTML5 webgl2 shader fixes #jria UEMOB-201 Support ES3 / WebGL2 in HTML5 Change 3318819 on 2017/02/23 by Dmitriy.Dyomin Fixed: Rendering artifacts with bloom on iPhone7 Metal #jira UE-40978 Change 3319702 on 2017/02/23 by Chris.Babcock Disable eglSwapInterval since it can cause issues with some drivers #ue4 #android Change 3320880 on 2017/02/24 by Dmitriy.Dyomin Added r.Mobile.TonemapperFilm cvar which can be used to enable/disable filmic tonemapper on mobile, independently from desktop (disabled by default) #jira UEMOB-195 Change 3321042 on 2017/02/24 by Jack.Porter Fixed incorrect sizeof in Vulkan pipleine cache pointed out here: http://coconutlizard.co.uk/blog/ue4/ue4-its-a-size-jim/ #code_review: rolando.caloca Change 3322383 on 2017/02/24 by Chris.Babcock Fix issue with ad banner on Android 7.0 devices #jira UE-42390 #ue4 #android Change 3322479 on 2017/02/24 by Omar.Rodriguez UEMOB-199 - WEX: Improved virtual keyboard for Android * Calculating the area covered by the virtual keyboard * Calling OnVirtualKeyboardShown and OnVirtualKeyboardHidden events * Passing the Rect of the area covered by the virtual keyboard OnVirtualKeyboardShown event #jira UEMOB-199 Change 3323353 on 2017/02/27 by Allan.Bentham Fix broken mobile scene captures when !mobileHDR and RHINeedsToSwitchVerticalAxis #jira UE-42191 Change 3323431 on 2017/02/27 by Allan.Bentham CIS fix Change 3323687 on 2017/02/27 by Allan.Bentham Disable GRHINeedsUnatlasedCSMDepthsWorkaround for mobile devices. #jira UE-42131 Change 3324652 on 2017/02/28 by Dmitriy.Dyomin Fixed: Canvas elements appear darker on iOS Metal Change 3324885 on 2017/02/28 by Jack.Porter Fixed "Minimum iOS Version" setting display name #jira UE-42270 Change 3324899 on 2017/02/28 by Jack.Porter GitHub 3063 : removed duplicate gc.MaxObjectsInGame setting in IOSEngine.ini #jira UE-40018 #3063 Change 3324932 on 2017/02/28 by Jack.Porter GitHub 3257 : iPhonePackager errors in output log when opening project settings on Windows #jira UE-41984 #3257 #codereview: Peter.Sauerbrei Change 3324956 on 2017/02/28 by Jack.Porter FOpenGLFrontend::GetMaxSamplers incorrect for IOS #jira UE-42038 #3264 Change 3325478 on 2017/02/28 by Allan.Bentham PR # 3188 : Fix far distance bug with cascaded shadows on mobile (Metal) and PC mobile preview (Contributed by ufna) #jira UE-41442 Change 3327300 on 2017/03/01 by Allan.Bentham PR #3175 : Fixes high quality reflection blending seams (Contributed by kallehamalainen) #jira UE-41257 Change 3328917 on 2017/03/02 by Nick.Shin HTML5 project settings expose ini settings to edtior HTML5 project settings panel #jira UE-42331 Project Settings - HTML5 SDK - HTML Device population should be moved to an .ini #jira UE-41584 Editor locks up when adding an element for HTML5 devices on Mac #jira UE-41701 Editor freezes when setting browser filepath for inserted element in project settings Change 3329169 on 2017/03/02 by Allan.Bentham increase render thread timeout to 1 minute for suntemple / android. Prevents low end devices timing out during load. #jira UE-40696 Change 3330849 on 2017/03/02 by Nick.Shin HTML5 project settings expose ini settings to edtior HTML5 project settings panel #jira UE-42331 Project Settings - HTML5 SDK - HTML Device population should be moved to an .ini Change 3331078 on 2017/03/03 by Dmitriy.Dyomin Fixed: Device output log partial lines integrated from WEX (3250488) Change 3331112 on 2017/03/03 by Dmitriy.Dyomin Reduced state setup for slate draw calls (saves about 4ms RT time on mobile) integrated from WEX (3256584) Change 3331117 on 2017/03/03 by Dmitriy.Dyomin Fixed redundant blend state changes in opengl integrated from WEX (3256586) Change 3331173 on 2017/03/03 by Dmitriy.Dyomin Slate pixel shaders will use half precision where possible on mobile integrated from WEX (3256656) Change 3332865 on 2017/03/06 by Dmitriy.Dyomin Better MobileContentScaleFactor defaults for iOS devices #jira UEMOB-330 Change 3333129 on 2017/03/06 by Peter.Sauerbrei move to Library/Caches instead of documents for saved files re-enable iterative deploy on TVOS #jira UEMOB-284 Change 3334692 on 2017/03/06 by Jack.Porter Allow r.MobileContentScaleFactor to be changed at runtime on Android #jira UEMOB-173 Change 3336255 on 2017/03/07 by Nick.Shin HTML5 project settings marking SIMD and multithreading as experimental - these do not play nice with WASM builds currently... #jira UE-42331 Project Settings - HTML5 SDK - HTML Device population should be moved to an .ini Change 3337094 on 2017/03/08 by Nick.Shin HTML5 project settings marking SIMD and multithreading as experimental - these do not play nice with WASM builds currently... #jira UE-42331 Project Settings - HTML5 SDK - HTML Device population should be moved to an .ini Change 3338800 on 2017/03/08 by Chris.Babcock Update AAR handling to deal with versioning, subproject dependencies for resources, and scope #jira UE-42677 #ue4 #android Change 3338813 on 2017/03/08 by Chris.Babcock Pass build configuration to UPL for access during packaging as $S(Configuration) #jira UE-42678 #ue4 #android #ios Change 3339401 on 2017/03/09 by Alicia.Cano Android runtime permissions - Fix for WRITE_EXTERNAL_STORAGE if it is not granted at time of onCreate for non-shipping builds - Fix for Location Services - Fix for if target sdk is not set to 23+ #jira UE-38512 #android #rb: chris.babcock Change 3340736 on 2017/03/09 by Chris.Babcock Implement support for new controllers (Xbox Wireless, SteelSeries Stratus XL, PS4) (contributed by TRS-justing) #jira UE-41965 #PR #3254 #ue4 #android Change 3340744 on 2017/03/09 by Jack.Porter Expose Custom Depth to Foliage #jira UE-6061 Change 3340849 on 2017/03/09 by Dmitriy.Dyomin Fixed: iOS movie become laggy and crashes when played in iPhone 6/6s. #jira UE-42351 Change 3341268 on 2017/03/10 by Alicia.Cano PR #2894: Initial VoiceModuleAndroid support. (Contributed by devbm) #jira UE-37945 #android #rb: chris.babcock, jack.porter Change 3341303 on 2017/03/10 by Allan.Bentham Remove optimisation that prevents full specular occulsion on mobile. PR #3186 : Specular can't be blocked on high-end mobile. #jira UE-41393 Change 3342304 on 2017/03/10 by Alicia.Cano build fix #rb: chris.babcock Change 3343344 on 2017/03/13 by Alicia.Cano build fix #rb: chris.babcock Change 3343591 on 2017/03/13 by Brent.Pease iOS multiplayer fix part 1. Correct byte ordering. #jira UE-34875 Change 3343669 on 2017/03/13 by Chris.Babcock Update carefullyredist script version #jira UE-42832 Change 3344212 on 2017/03/13 by Will.Fissler Various compile fixes for Xcode 8.3. These fixes must also be added to //UE4/Release-4.15. #jira UE-41313 Change 3344396 on 2017/03/13 by Chris.Babcock Fix Java 1.5 obsolete warnings #jira UE-42851 #ue4 #android Change 3345132 on 2017/03/14 by Will.Fissler Added ifdef wrapper to check clang version for presentDrawable. Change 3345336 on 2017/03/14 by Will.Fissler Moved #if (__clang_major__ > 8) || (__clang_major__ == 8 && __clang_minor__ >= 1) check inside of the presentDrawable method. Change 3345460 on 2017/03/14 by Will.Fissler ifdef changes for presentDrawable. The last submission duped the changes, instead of merging. #rb none Change 3346046 on 2017/03/14 by Will.Fissler Fixed MetalCommandBuffer.cpp [again] after last submission duped changes instead of merging. Change 3346367 on 2017/03/14 by Chris.Babcock Fix issue with GoogleVR ARMv7 libraries included for other architectures in link #ue4 #android Change 3347682 on 2017/03/15 by Allan.Bentham Enable HW sRGB correction with retainer widget's render target. Use slate's gamma correction for mobile (where no such support exists) Render retainer box RT content with gamma correction. #jira UE-40967 Change 3348712 on 2017/03/15 by Nick.Shin HTML5 - upload to S3 updated to AWS "signature version 4" authentication #jira UE-42525 HTML5 Upload to Amazon S3 fails with Incorrect Configuration error Change 3349254 on 2017/03/16 by Jack.Porter Fix for crash using the mobile previewer when the LQ lightmap shader permutation is disabled. #jira UE-42971 Change 3349739 on 2017/03/16 by Nick.Shin HTML5 - upload to S3 better error message feedback on upload failures #jira UE-42525 HTML5 Upload to Amazon S3 fails with Incorrect Configuration error Change 3349765 on 2017/03/16 by Alicia.Cano Disable mouseover events in Mobile Previewer #jira UE-19903 #mobile #rb: Jack.Porter Change 3350049 on 2017/03/16 by Nick.Shin HTML5 - upload to S3 folder in bucket is optional #jira UE-42525 HTML5 Upload to Amazon S3 fails with Incorrect Configuration error Change 3350153 on 2017/03/16 by Nick.Shin HTML5 - upload to S3 updated S3 public link generator #jira UE-42525 HTML5 Upload to Amazon S3 fails with Incorrect Configuration error Change 3351582 on 2017/03/17 by Will.Fissler Reverting the attempted fix for Xcode 8.3: Result += " -mcpu=cortex-a9"; Currently we cannot build arm64 for iOS with this change. Change 3352085 on 2017/03/17 by Alicia.Cano iOS doesn't honor request to close the virtual keyboard leading to a crash #jira UE-36447 #ios #rb:Peter.Sauerbrei Change 3353313 on 2017/03/19 by Ben.Marsh Always allow large *.js files in Github. Change 3354444 on 2017/03/20 by Nick.Shin HTML5 - upload to S3 to help make it obvious that "upload to S3" checkbox is set/or not -- disable S3 details if checkbox for "uploading to S3" is not set #jira UE-42525 HTML5 Upload to Amazon S3 fails with Incorrect Configuration error Change 3355618 on 2017/03/20 by Nick.Shin HTML5 Save Game System - ripped out HTML5 code [from Engine's SaveGameSystem.h] and placed it in HTML5Platform.cpp - cleaned up HTML5PlatformFile.cpp (make it match as clost to linux's version) - created HTML5's own PlatformFeature & SaveGameSystem files -- and updated HTML5PlatformMisc to make use of the the new HTML5 SaveGame code #jira UE-42081 Remove heinous HTML5 code from engine Change 3355621 on 2017/03/20 by Nick.Shin remove temp debugging code #jira UE-42081 Remove heinous HTML5 code from engine Change 3356937 on 2017/03/21 by Chris.Babcock Add "stat vulkanrhi" to new console dropdown #jira UE-43149 #ue4 #android Change 3357652 on 2017/03/21 by Nick.Shin HTML5 performance speed ups added "use fixed timestep" setting option for HTML5 builds (this has been separated from Engine - General Settings - Framerate) - this is slightly different to smooth framerate and fixed framerate - thus, the timestep option was put in the HTML5 specific panel this option is based on the suggestions by jukka's post: - https://answers.unrealengine.com/questions/409629/smooth-frame-rate-and-use-fixed-frame-rate-should.html however, using this option will make the player "run faster" on (for example) thirdperson blueprint template -- but, it has no effect on other (for example) zen garden... #jira UE-30214 - Implement a warning message for fps settings Change 3360415 on 2017/03/23 by Allan.Bentham Fix crash that occurs when ES3.1 preview is used with r.MobileHDR32bppMode modes. Change 3360418 on 2017/03/23 by Allan.Bentham Disable filmic tonemapper if r.MobileHDR32bppMode is in use. #jira UE-40913 Change 3360557 on 2017/03/23 by Allan.Bentham Better fix for mobile CSM shadow flickering (UE-42131), now works for PC OpenGL based mobile preview. #jira UE-42131 Change 3362258 on 2017/03/23 by Dmitriy.Dyomin Fixed: Canvas texture element gamma issues on iOS Metal Change 3362321 on 2017/03/24 by Dmitriy.Dyomin GitHub 3173 : MaterialAO support for mobile rendering path (contributed by kallehamalainen) #3173 Change 3363550 on 2017/03/24 by Alicia.Cano build fix for devices < Android 5.0 #jira UE-43299 #android #rb: chris.babcock Change 3363687 on 2017/03/24 by Chris.Babcock Fix Android password hiding in input dialog #jira WEX-5159 #ue4 #android Change 3365280 on 2017/03/27 by Dmitriy.Dyomin Fix for GL_EXT_shader_framebuffer_fetch on Zenfone5. Use UE_EXT_shader_framebuffer_fetch define on all devices to enable extension Change 3365291 on 2017/03/27 by Dmitriy.Dyomin Copied form WEX CL# 3308653 Fixed: Enabling shader cache causes crash on NVIDIA Shield #jira UE-41639 Change 3365293 on 2017/03/27 by Dmitriy.Dyomin GitHub 3411 : Fix crash in patching utils mount method (contributed by nverenik) #jira UE-43247 #3411 Change 3365340 on 2017/03/27 by Dmitriy.Dyomin Fixed: Moving sublevel in world composition browser does not appear in Undo History #jira UE-35535 Change 3365564 on 2017/03/27 by Allan.Bentham SkyLightComponent now serializes IrradianceMap SH values. clicking Recapture sky button in mobile preview switches back to SM4/5 to update captures. Skylights that are dirty from load will trigger reflection capture update once shaders are rebuilt. #jira UE-42436 Change 3366282 on 2017/03/27 by Nick.Shin remove dead links these files to not exist anywhere in the make-3.81 subfolders #UDN-354501 #jira none Change 3366306 on 2017/03/27 by Nick.Shin HTML5 - disable multi-threading for wasm #jira UE-43219 - HTML5 disable multi-threading for wasm Change 3366307 on 2017/03/27 by Nick.Shin HTML5 packaging Shipping builds big cleanup / additions to *gz file support for amazon s3 * both, uploading to s3 * and allowing s3 to host the games there #jira UE-43002 HTML5 in Shipping fails downloading symbols files #jria UE-43001 HTML5 Shipping Projects fail looking for compressed files when "Compress files during shipping packaging" is not selected. Change 3367385 on 2017/03/28 by Allan.Bentham Display skylight serialization warning only when cooking for mobile platforms. #jira UE-42436 Change 3368583 on 2017/03/28 by Chris.Babcock Expose JAVA_HOME setting in Android SDK project settings on Mac #jira UE-43418 #ue4 #android Change 3368803 on 2017/03/28 by Chris.Babcock Fix features requested in manifest for "Daydream and Cardboard" mode #jira UE-43314 #ue4 #android Change 3369087 on 2017/03/28 by Jack.Porter Changed tooltip and added supported devices in paretheses for Android Mobile Deferred / ES31+AEP #jira UE-42438 Change 3369372 on 2017/03/29 by Allan.Bentham Fix disappearing meshes when r.mobile.allowdistancefieldshadows is disabled. #jira UE-43366 Change 3369381 on 2017/03/29 by Jack.Porter Show warnings when mobile shader permutations required for rendering are disbaled Made FReadOnlyCVARCache a singleton and added mobile CVars, used for MobileBasePassRendering. #jira UE-43050 Change 3369430 on 2017/03/29 by Allan.Bentham fix CIS build Change 3369740 on 2017/03/29 by Allan.Bentham Added Android option to enable builds with hidden symbol visbility by default. (bBuildWithHiddenSymbolVisibility) Android links with -gc-sections to remove unused code/data Add JNI_METHOD for java accessible native functions, fixed up existing JNI functions to use macro. Add support for map file generation with android. Add 'bBuildWithHiddenSymbolVisibility' to AndroidPlatform.HasDefaultBuildConfig() bBuildWithHiddenSymbolVisibility defaults to false in BaseEngine.ini #jira UEMOB-168 Change 3369975 on 2017/03/29 by Nick.Shin HTML5 - AWS S3 shareable link for shipping builds corrected #jira UE-43379 Amazon S3 Shareable link does not generate correct filepath. Change 3369998 on 2017/03/29 by Nick.Shin HTML5 python build scripts PR: https://github.com/Mozilla-Games/UnrealEngine/commit/1cb836d43c3015c6ca0fdd039072bb6c5c273db3 #jira none Change 3370214 on 2017/03/29 by Nick.Shin HTML5 - default bUseFixedTimeStep to false... #jira UE-43380 - Default HTML5 gamespeed is faster than equivalent platforms Change 3370762 on 2017/03/29 by Chris.Babcock Fixes to new keyboard for Android - Ensure the local scope ScreenRect passed into OnVirtualKeyboardShown in AndroidJNI is captured by value instead of by reference. - Moved ShowVirtualKeyboardInput's bKeyboardShowing early-out checks into the UI thread task. This allows the keyboard to continue showing when changing focus between multiple EditableTextBox widgets. #ue4 #android Change 3371344 on 2017/03/30 by Jack.Porter Fixed issue where Vulkan screenshot R/B channels were reversed on Android #jira UE-43479 Change 3372926 on 2017/03/30 by Peter.Sauerbrei start the process of sunsetting 32-bit and GLES2 on iOS #jira UE-42266 Change 3372970 on 2017/03/30 by Nick.Shin HTML5 - 1.37.9 emscripten: wasm & webgl2 support - windows toolchain #jira UEMOB-263 Switch [to] web assembly #jira UEMOB-201 Support ES3 / WebGL2 in HTML5 #rn Change 3372989 on 2017/03/30 by Peter.Sauerbrei fix for Xcode 8.3 build with 32-bit Change 3373007 on 2017/03/30 by Peter.Sauerbrei fix for crash when online subsystem is disabled on IOS Change 3373108 on 2017/03/30 by Nick.Shin HTML5 - 1.37.9 emscripten: wasm & webgl2 support - 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 #rn Change 3373163 on 2017/03/30 by Nick.Shin HTML5 - 1.37.9 emscripten: wasm & webgl2 support - OSX toolchain #jira UEMOB-263 Switch [to] web assembly #jira UEMOB-201 Support ES3 / WebGL2 in HTML5 #rn Change 3373169 on 2017/03/30 by Nick.Shin HTML5 - 1.37.9 emscripten: wasm & webgl2 support license file updated #jira UEMOB-263 Switch [to] web assembly #jira UEMOB-201 Support ES3 / WebGL2 in HTML5 #rnx Change 3373287 on 2017/03/30 by Nick.Shin HTML5 - 1.36.11 emscripten - remove old SDK #jira none #rnx Change 3373289 on 2017/03/30 by Nick.Shin HTML5 - 1.37.9 emscripten: wasm & webgl2 support - Linux toolchain #jira UEMOB-263 Switch [to] web assembly #jira UEMOB-201 Support ES3 / WebGL2 in HTML5 #rn Change 3373595 on 2017/03/30 by Chris.Babcock Reenable GooglePlay for ARM64 now that it doesn't crash #jira UE-36198 #ue4 #android Change 3373606 on 2017/03/30 by Chris.Babcock Submitting Allan's shelved EXT_shader_framebuffer_fetch fix #ue4 #android Change 3375456 on 2017/03/31 by Chris.Babcock Add missing keycodes for Android keyboard (@ and #) #jira WEX-5777 #ue4 #android Change 3376309 on 2017/04/03 by Allan.Bentham Fix overflow issues with mobile DoF. Change 3377041 on 2017/04/03 by Will.Fissler Adding Testbed content for PlatformShowcase. Change 3377582 on 2017/04/03 by Alicia.Cano adding back in GET_ACCOUNTS permission as it is required for Reset Achievements #jira: UE-43265 #android #rb: Chris.Babcock Change 3377643 on 2017/04/03 by Peter.Sauerbrei fix for memory leak in MallocBinned #jira UE-43008 Change 3378033 on 2017/04/04 by Nick.Shin HTML5 - 1.37.9 emscripten: wasm & webgl2 support - ThirdParty libs compiled with new toolchain with wasm and webgl2 support #jira UEMOB-263 Switch [to] web assembly #jira UEMOB-201 Support ES3 / WebGL2 in HTML5 #rn Change 3378034 on 2017/04/04 by Nick.Shin HTML5 - 1.37.9 emscripten: wasm & webgl2 support - ThirdParty build scripts #jira UEMOB-263 Switch [to] web assembly #jira UEMOB-201 Support ES3 / WebGL2 in HTML5 Change 3378035 on 2017/04/04 by Nick.Shin HTML5 - Update GameX template to make it work with trunk Emscripten PR https://github.com/Mozilla-Games/UnrealEngine/commit/dc2b26f452948f8ee07178bc3e8742af80d8919a#commitcomment-21454978 #jira none #rn Change 3378044 on 2017/04/04 by Nick.Shin HTML5 harfbuzz - double checking recompiled with NO multithreading wasm currently does not support pthreads *** THIS IS STILL WIP *** checking in to match 3rd party libs compiled configuration #jira UE-28588 - Build HarfBuzz for HTML5 #rnx Change 3378264 on 2017/04/04 by Allan.Bentham Fix crash when using consolas font on android sdk 24 #jira UE-43464 Change 3379097 on 2017/04/04 by Nick.Shin CIS HTML5 build warning fix #jria none #rnx Change 3379333 on 2017/04/04 by Chris.Babcock Prevent inserting extra permissions into manifest multiple times #jira UE-43583 #ue4 #android Change 3380870 on 2017/04/05 by Chris.Babcock Fix merge issue Change 3380898 on 2017/04/05 by Chris.Babcock Fixed again Change 3381443 on 2017/04/05 by Chris.Babcock Fix for GearVR non-unity build #ue4 #android Change 3381941 on 2017/04/05 by Chris.Babcock Fix HTTPChunkInstaller texture format checks and missing #define warning #jira UE-43706 #ue4 #android Change 3382056 on 2017/04/05 by Chris.Babcock Updates to Android AARs needed for Facebook plugin Change 3382097 on 2017/04/05 by Chris.Babcock Disable java console cmd receiver only in shipping builds #jira UE-43710 #ue4 #android Change 3382497 on 2017/04/06 by Allan.Bentham Fix Fortnite Cooked Server crashes when joining game from lobby. #jira UE-43695 Change 3383227 on 2017/04/06 by Will.Fissler Reverted case sensitive change, from yesterday, and implemented a pragma instead. #jira UE-41313 [CL 3383473 by Jack Porter in Main branch]
2017-04-06 16:13:17 -04:00
/// <summary>
/// Tries to copy all of the files in the manifest on the PC to the library directory
/// (requires the bundle identifier to be able to mount that directory)
/// </summary>
public bool TryCopy(string BundleIdentifier, string Manifest)
{
if (ConnectToBundle(BundleIdentifier))
{
WriteProgressLine("Connected to bundle '{0}'", 0, BundleIdentifier);
try
{
string BaseFolder = Path.GetDirectoryName(Manifest);
string Files = File.ReadAllText(Manifest);
string[] FileList = Files.Split('\n');
foreach (string Filename in FileList)
{
if (!string.IsNullOrEmpty(Filename) && !string.IsNullOrWhiteSpace(Filename))
{
string Trimmed = Filename.Trim();
string SourceFilename = BaseFolder + "\\" + Trimmed;
SourceFilename = SourceFilename.Replace('/', '\\');
Copying //UE4/Dev-Mobile to //UE4/Dev-Main (Source: //UE4/Dev-Mobile @ 3383462) #lockdown Nick.Penwarden ========================== MAJOR FEATURES + CHANGES ========================== Change 3292174 on 2017/02/08 by Nick.Shin HTML5 emscripten: wasm and webgl2 support - Linux toolchain #jira UEPLAT-1437 Switch [to] web assembly Change 3292193 on 2017/02/08 by Nick.Shin HTML5 emscripten: wasm and webgl2 support - ThirdParty libs compiled with new toolchain with wasm support #jira UEPLAT-1437 Switch [to] web assembly Change 3292215 on 2017/02/08 by Nick.Shin HTML5 emscripten: wasm and wbegl2 support - emscripten toolchain #jira UEPLAT-1437 Switch [to] web assembly Change 3292222 on 2017/02/08 by Nick.Shin HTML5 emscripten: wasm support - ENGINE changes (c# & cpp files) #jira UEPLAT-1437 Switch [to] web assembly Change 3292223 on 2017/02/08 by Nick.Shin HTML5 merge ThirdParty lib build scripts from Dev-Platform to Dev-Mobile Change 3292228 on 2017/02/08 by Nick.Shin HTML5 emscripten: webgl support - webgl patches - and a lot of UE4 patches to package HTML5 on LINUX - mostly from mozilla's jukka -- thx jukka! #jira UEPLAT-828 (4.16) Support ES3 / WebGL2 in HTML5 Change 3292285 on 2017/02/08 by Nick.Shin HTML5 emscripten: wasm and webgl2 support - Windows toolchain #jira UEPLAT-1437 Switch [to] web assembly Change 3293994 on 2017/02/09 by Nick.Shin HTML5 emscripten: wasm and webgl2 support - OSX toolchain #jira UEPLAT-1437 Switch [to] web assembly Change 3294391 on 2017/02/09 by Nick.Shin HTML5 "black box issues" revisited - jukka rewrote the window resize handler -- much cleaner and more straightforward #jira UE-36341 HTML5 - View is incorrectly drawn #jira UE-32311 Templates on Firefox/Chrome on HTML5 are not full screen during Launch On Change 3296421 on 2017/02/10 by Jack.Porter Fix landscape spline segment splitting placing when using streaming levels Change 3296587 on 2017/02/10 by Jack.Porter Additional fix for landscape spline segment splitting when using streaming levels Change 3301241 on 2017/02/14 by Mi.Wang Fixed DeviceProfileEditor bug for incorrect clamp the Texture Mip LOD size. #jira UE-36237 #rb jack.porter Change 3301387 on 2017/02/14 by Nick.Shin HTML5 emscripten: webgl support - webgl patches from mozilla's jukka + hardware instancing + glBlitFramebuffer + GL AlaphaBlendOperation #jira UEPLAT-828 (4.16) Support ES3 / WebGL2 in HTML5 Change 3301405 on 2017/02/14 by Nick.Shin HTML5 plugin fix when blueprint projects are promoted to code projects automatically. #jira UE-41710 HTML5 - Package Failure - Failed to Produce item ProjectName-OnlineSubsystemNull.bc Change 3302278 on 2017/02/14 by Omar.Rodriguez UE-36651: Mac Vulkan Android Projects crash on launch. * Glslang library has been built for Mac but flag was not updated * Set GlslangAvailable to true for Mac when building an Android project with vulkan #jira UE-36651 Change 3302773 on 2017/02/14 by Chris.Babcock Add a dropdown with some common console commands on Android (contributed by rafortis) #jira UE-40834 #PR #3143 #ue4 #android Change 3305604 on 2017/02/16 by Nick.Shin HTML5 webgl2 shader- turn on: instance static mesh vertex factory #jira UEPLAT-828 (4.16) Support ES3 / WebGL2 in HTML5 Change 3308154 on 2017/02/16 by Nick.Shin HTML5 GitHub PR #jira UE-42019 GitHub 3258 : Added suport for emscripten --pre-js and --post-js option when building for HTML5 Change 3308510 on 2017/02/16 by Nick.Shin HTML5 webgl2 shader fixes #jria UEMOB-201 Support ES3 / WebGL2 in HTML5 Change 3308971 on 2017/02/17 by Jack.Porter Fix for landscape painting when height<0 in the Ortho viewports Change 3309075 on 2017/02/17 by Allan.Bentham Include static subject meshes when masking out modulated shadow casters. #jira UE-41581 Change 3309531 on 2017/02/17 by Chris.Babcock Handle large OBB files in APK #jira UE-41443 #ue4 #android Change 3311320 on 2017/02/19 by Dmitriy.Dyomin Fixed: Particle Cutout Crashes On Mobile Devices That Don't Support Hardware Instancing (Mali-400 GPU) #jira UE-41970 Change 3311347 on 2017/02/20 by Dmitriy.Dyomin Fixed: Engine Crashes When Previewing ES3_1 With Material Using World Position Offset (Need Custom Stencil) #jira UE-41976 Change 3311398 on 2017/02/20 by Dmitriy.Dyomin Fixed: Landscapes do not render on PowerVR device #jira UE-35530 Change 3311428 on 2017/02/20 by Dmitriy.Dyomin Fixed: Exposure Is More Extreme In High-End Mobile Preview Modes #jira UE-42036 Change 3311448 on 2017/02/20 by Dmitriy.Dyomin Fixed: Packaged game Crashes on android after entering "Help" command twice #jira UE-41956 Change 3311587 on 2017/02/20 by Allan.Bentham ES2 GLSL - Silently swap all uint to ints #jira UE-41548 Change 3313930 on 2017/02/21 by Allan.Bentham Print literal uints as ints when generating ES2 code. #jira UE-41548 Change 3317924 on 2017/02/22 by Nick.Shin HTML5 emscripten: wasm & webgl2 support - RC1 - Linux toolchain #jira UEMOB-263 Switch [to] web assembly #jira UEMOB-201 Support ES3 / WebGL2 in HTML5 Change 3317929 on 2017/02/22 by Nick.Shin HTML5 emscripten: wasm & webgl2 support - RC1 - ThirdParty libs compiled with new toolchain with wasm and webgl2 support #jira UEMOB-263 Switch [to] web assembly #jira UEMOB-201 Support ES3 / WebGL2 in HTML5 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 Change 3318004 on 2017/02/22 by Nick.Shin HTML5 emscripten: wasm & webgl2 support - RC1 - windows toolchain #jira UEMOB-263 Switch [to] web assembly #jira UEMOB-201 Support ES3 / WebGL2 in HTML5 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 Change 3318672 on 2017/02/23 by Nick.Shin HTML5 webgl2 shader fixes #jria UEMOB-201 Support ES3 / WebGL2 in HTML5 Change 3318819 on 2017/02/23 by Dmitriy.Dyomin Fixed: Rendering artifacts with bloom on iPhone7 Metal #jira UE-40978 Change 3319702 on 2017/02/23 by Chris.Babcock Disable eglSwapInterval since it can cause issues with some drivers #ue4 #android Change 3320880 on 2017/02/24 by Dmitriy.Dyomin Added r.Mobile.TonemapperFilm cvar which can be used to enable/disable filmic tonemapper on mobile, independently from desktop (disabled by default) #jira UEMOB-195 Change 3321042 on 2017/02/24 by Jack.Porter Fixed incorrect sizeof in Vulkan pipleine cache pointed out here: http://coconutlizard.co.uk/blog/ue4/ue4-its-a-size-jim/ #code_review: rolando.caloca Change 3322383 on 2017/02/24 by Chris.Babcock Fix issue with ad banner on Android 7.0 devices #jira UE-42390 #ue4 #android Change 3322479 on 2017/02/24 by Omar.Rodriguez UEMOB-199 - WEX: Improved virtual keyboard for Android * Calculating the area covered by the virtual keyboard * Calling OnVirtualKeyboardShown and OnVirtualKeyboardHidden events * Passing the Rect of the area covered by the virtual keyboard OnVirtualKeyboardShown event #jira UEMOB-199 Change 3323353 on 2017/02/27 by Allan.Bentham Fix broken mobile scene captures when !mobileHDR and RHINeedsToSwitchVerticalAxis #jira UE-42191 Change 3323431 on 2017/02/27 by Allan.Bentham CIS fix Change 3323687 on 2017/02/27 by Allan.Bentham Disable GRHINeedsUnatlasedCSMDepthsWorkaround for mobile devices. #jira UE-42131 Change 3324652 on 2017/02/28 by Dmitriy.Dyomin Fixed: Canvas elements appear darker on iOS Metal Change 3324885 on 2017/02/28 by Jack.Porter Fixed "Minimum iOS Version" setting display name #jira UE-42270 Change 3324899 on 2017/02/28 by Jack.Porter GitHub 3063 : removed duplicate gc.MaxObjectsInGame setting in IOSEngine.ini #jira UE-40018 #3063 Change 3324932 on 2017/02/28 by Jack.Porter GitHub 3257 : iPhonePackager errors in output log when opening project settings on Windows #jira UE-41984 #3257 #codereview: Peter.Sauerbrei Change 3324956 on 2017/02/28 by Jack.Porter FOpenGLFrontend::GetMaxSamplers incorrect for IOS #jira UE-42038 #3264 Change 3325478 on 2017/02/28 by Allan.Bentham PR # 3188 : Fix far distance bug with cascaded shadows on mobile (Metal) and PC mobile preview (Contributed by ufna) #jira UE-41442 Change 3327300 on 2017/03/01 by Allan.Bentham PR #3175 : Fixes high quality reflection blending seams (Contributed by kallehamalainen) #jira UE-41257 Change 3328917 on 2017/03/02 by Nick.Shin HTML5 project settings expose ini settings to edtior HTML5 project settings panel #jira UE-42331 Project Settings - HTML5 SDK - HTML Device population should be moved to an .ini #jira UE-41584 Editor locks up when adding an element for HTML5 devices on Mac #jira UE-41701 Editor freezes when setting browser filepath for inserted element in project settings Change 3329169 on 2017/03/02 by Allan.Bentham increase render thread timeout to 1 minute for suntemple / android. Prevents low end devices timing out during load. #jira UE-40696 Change 3330849 on 2017/03/02 by Nick.Shin HTML5 project settings expose ini settings to edtior HTML5 project settings panel #jira UE-42331 Project Settings - HTML5 SDK - HTML Device population should be moved to an .ini Change 3331078 on 2017/03/03 by Dmitriy.Dyomin Fixed: Device output log partial lines integrated from WEX (3250488) Change 3331112 on 2017/03/03 by Dmitriy.Dyomin Reduced state setup for slate draw calls (saves about 4ms RT time on mobile) integrated from WEX (3256584) Change 3331117 on 2017/03/03 by Dmitriy.Dyomin Fixed redundant blend state changes in opengl integrated from WEX (3256586) Change 3331173 on 2017/03/03 by Dmitriy.Dyomin Slate pixel shaders will use half precision where possible on mobile integrated from WEX (3256656) Change 3332865 on 2017/03/06 by Dmitriy.Dyomin Better MobileContentScaleFactor defaults for iOS devices #jira UEMOB-330 Change 3333129 on 2017/03/06 by Peter.Sauerbrei move to Library/Caches instead of documents for saved files re-enable iterative deploy on TVOS #jira UEMOB-284 Change 3334692 on 2017/03/06 by Jack.Porter Allow r.MobileContentScaleFactor to be changed at runtime on Android #jira UEMOB-173 Change 3336255 on 2017/03/07 by Nick.Shin HTML5 project settings marking SIMD and multithreading as experimental - these do not play nice with WASM builds currently... #jira UE-42331 Project Settings - HTML5 SDK - HTML Device population should be moved to an .ini Change 3337094 on 2017/03/08 by Nick.Shin HTML5 project settings marking SIMD and multithreading as experimental - these do not play nice with WASM builds currently... #jira UE-42331 Project Settings - HTML5 SDK - HTML Device population should be moved to an .ini Change 3338800 on 2017/03/08 by Chris.Babcock Update AAR handling to deal with versioning, subproject dependencies for resources, and scope #jira UE-42677 #ue4 #android Change 3338813 on 2017/03/08 by Chris.Babcock Pass build configuration to UPL for access during packaging as $S(Configuration) #jira UE-42678 #ue4 #android #ios Change 3339401 on 2017/03/09 by Alicia.Cano Android runtime permissions - Fix for WRITE_EXTERNAL_STORAGE if it is not granted at time of onCreate for non-shipping builds - Fix for Location Services - Fix for if target sdk is not set to 23+ #jira UE-38512 #android #rb: chris.babcock Change 3340736 on 2017/03/09 by Chris.Babcock Implement support for new controllers (Xbox Wireless, SteelSeries Stratus XL, PS4) (contributed by TRS-justing) #jira UE-41965 #PR #3254 #ue4 #android Change 3340744 on 2017/03/09 by Jack.Porter Expose Custom Depth to Foliage #jira UE-6061 Change 3340849 on 2017/03/09 by Dmitriy.Dyomin Fixed: iOS movie become laggy and crashes when played in iPhone 6/6s. #jira UE-42351 Change 3341268 on 2017/03/10 by Alicia.Cano PR #2894: Initial VoiceModuleAndroid support. (Contributed by devbm) #jira UE-37945 #android #rb: chris.babcock, jack.porter Change 3341303 on 2017/03/10 by Allan.Bentham Remove optimisation that prevents full specular occulsion on mobile. PR #3186 : Specular can't be blocked on high-end mobile. #jira UE-41393 Change 3342304 on 2017/03/10 by Alicia.Cano build fix #rb: chris.babcock Change 3343344 on 2017/03/13 by Alicia.Cano build fix #rb: chris.babcock Change 3343591 on 2017/03/13 by Brent.Pease iOS multiplayer fix part 1. Correct byte ordering. #jira UE-34875 Change 3343669 on 2017/03/13 by Chris.Babcock Update carefullyredist script version #jira UE-42832 Change 3344212 on 2017/03/13 by Will.Fissler Various compile fixes for Xcode 8.3. These fixes must also be added to //UE4/Release-4.15. #jira UE-41313 Change 3344396 on 2017/03/13 by Chris.Babcock Fix Java 1.5 obsolete warnings #jira UE-42851 #ue4 #android Change 3345132 on 2017/03/14 by Will.Fissler Added ifdef wrapper to check clang version for presentDrawable. Change 3345336 on 2017/03/14 by Will.Fissler Moved #if (__clang_major__ > 8) || (__clang_major__ == 8 && __clang_minor__ >= 1) check inside of the presentDrawable method. Change 3345460 on 2017/03/14 by Will.Fissler ifdef changes for presentDrawable. The last submission duped the changes, instead of merging. #rb none Change 3346046 on 2017/03/14 by Will.Fissler Fixed MetalCommandBuffer.cpp [again] after last submission duped changes instead of merging. Change 3346367 on 2017/03/14 by Chris.Babcock Fix issue with GoogleVR ARMv7 libraries included for other architectures in link #ue4 #android Change 3347682 on 2017/03/15 by Allan.Bentham Enable HW sRGB correction with retainer widget's render target. Use slate's gamma correction for mobile (where no such support exists) Render retainer box RT content with gamma correction. #jira UE-40967 Change 3348712 on 2017/03/15 by Nick.Shin HTML5 - upload to S3 updated to AWS "signature version 4" authentication #jira UE-42525 HTML5 Upload to Amazon S3 fails with Incorrect Configuration error Change 3349254 on 2017/03/16 by Jack.Porter Fix for crash using the mobile previewer when the LQ lightmap shader permutation is disabled. #jira UE-42971 Change 3349739 on 2017/03/16 by Nick.Shin HTML5 - upload to S3 better error message feedback on upload failures #jira UE-42525 HTML5 Upload to Amazon S3 fails with Incorrect Configuration error Change 3349765 on 2017/03/16 by Alicia.Cano Disable mouseover events in Mobile Previewer #jira UE-19903 #mobile #rb: Jack.Porter Change 3350049 on 2017/03/16 by Nick.Shin HTML5 - upload to S3 folder in bucket is optional #jira UE-42525 HTML5 Upload to Amazon S3 fails with Incorrect Configuration error Change 3350153 on 2017/03/16 by Nick.Shin HTML5 - upload to S3 updated S3 public link generator #jira UE-42525 HTML5 Upload to Amazon S3 fails with Incorrect Configuration error Change 3351582 on 2017/03/17 by Will.Fissler Reverting the attempted fix for Xcode 8.3: Result += " -mcpu=cortex-a9"; Currently we cannot build arm64 for iOS with this change. Change 3352085 on 2017/03/17 by Alicia.Cano iOS doesn't honor request to close the virtual keyboard leading to a crash #jira UE-36447 #ios #rb:Peter.Sauerbrei Change 3353313 on 2017/03/19 by Ben.Marsh Always allow large *.js files in Github. Change 3354444 on 2017/03/20 by Nick.Shin HTML5 - upload to S3 to help make it obvious that "upload to S3" checkbox is set/or not -- disable S3 details if checkbox for "uploading to S3" is not set #jira UE-42525 HTML5 Upload to Amazon S3 fails with Incorrect Configuration error Change 3355618 on 2017/03/20 by Nick.Shin HTML5 Save Game System - ripped out HTML5 code [from Engine's SaveGameSystem.h] and placed it in HTML5Platform.cpp - cleaned up HTML5PlatformFile.cpp (make it match as clost to linux's version) - created HTML5's own PlatformFeature & SaveGameSystem files -- and updated HTML5PlatformMisc to make use of the the new HTML5 SaveGame code #jira UE-42081 Remove heinous HTML5 code from engine Change 3355621 on 2017/03/20 by Nick.Shin remove temp debugging code #jira UE-42081 Remove heinous HTML5 code from engine Change 3356937 on 2017/03/21 by Chris.Babcock Add "stat vulkanrhi" to new console dropdown #jira UE-43149 #ue4 #android Change 3357652 on 2017/03/21 by Nick.Shin HTML5 performance speed ups added "use fixed timestep" setting option for HTML5 builds (this has been separated from Engine - General Settings - Framerate) - this is slightly different to smooth framerate and fixed framerate - thus, the timestep option was put in the HTML5 specific panel this option is based on the suggestions by jukka's post: - https://answers.unrealengine.com/questions/409629/smooth-frame-rate-and-use-fixed-frame-rate-should.html however, using this option will make the player "run faster" on (for example) thirdperson blueprint template -- but, it has no effect on other (for example) zen garden... #jira UE-30214 - Implement a warning message for fps settings Change 3360415 on 2017/03/23 by Allan.Bentham Fix crash that occurs when ES3.1 preview is used with r.MobileHDR32bppMode modes. Change 3360418 on 2017/03/23 by Allan.Bentham Disable filmic tonemapper if r.MobileHDR32bppMode is in use. #jira UE-40913 Change 3360557 on 2017/03/23 by Allan.Bentham Better fix for mobile CSM shadow flickering (UE-42131), now works for PC OpenGL based mobile preview. #jira UE-42131 Change 3362258 on 2017/03/23 by Dmitriy.Dyomin Fixed: Canvas texture element gamma issues on iOS Metal Change 3362321 on 2017/03/24 by Dmitriy.Dyomin GitHub 3173 : MaterialAO support for mobile rendering path (contributed by kallehamalainen) #3173 Change 3363550 on 2017/03/24 by Alicia.Cano build fix for devices < Android 5.0 #jira UE-43299 #android #rb: chris.babcock Change 3363687 on 2017/03/24 by Chris.Babcock Fix Android password hiding in input dialog #jira WEX-5159 #ue4 #android Change 3365280 on 2017/03/27 by Dmitriy.Dyomin Fix for GL_EXT_shader_framebuffer_fetch on Zenfone5. Use UE_EXT_shader_framebuffer_fetch define on all devices to enable extension Change 3365291 on 2017/03/27 by Dmitriy.Dyomin Copied form WEX CL# 3308653 Fixed: Enabling shader cache causes crash on NVIDIA Shield #jira UE-41639 Change 3365293 on 2017/03/27 by Dmitriy.Dyomin GitHub 3411 : Fix crash in patching utils mount method (contributed by nverenik) #jira UE-43247 #3411 Change 3365340 on 2017/03/27 by Dmitriy.Dyomin Fixed: Moving sublevel in world composition browser does not appear in Undo History #jira UE-35535 Change 3365564 on 2017/03/27 by Allan.Bentham SkyLightComponent now serializes IrradianceMap SH values. clicking Recapture sky button in mobile preview switches back to SM4/5 to update captures. Skylights that are dirty from load will trigger reflection capture update once shaders are rebuilt. #jira UE-42436 Change 3366282 on 2017/03/27 by Nick.Shin remove dead links these files to not exist anywhere in the make-3.81 subfolders #UDN-354501 #jira none Change 3366306 on 2017/03/27 by Nick.Shin HTML5 - disable multi-threading for wasm #jira UE-43219 - HTML5 disable multi-threading for wasm Change 3366307 on 2017/03/27 by Nick.Shin HTML5 packaging Shipping builds big cleanup / additions to *gz file support for amazon s3 * both, uploading to s3 * and allowing s3 to host the games there #jira UE-43002 HTML5 in Shipping fails downloading symbols files #jria UE-43001 HTML5 Shipping Projects fail looking for compressed files when "Compress files during shipping packaging" is not selected. Change 3367385 on 2017/03/28 by Allan.Bentham Display skylight serialization warning only when cooking for mobile platforms. #jira UE-42436 Change 3368583 on 2017/03/28 by Chris.Babcock Expose JAVA_HOME setting in Android SDK project settings on Mac #jira UE-43418 #ue4 #android Change 3368803 on 2017/03/28 by Chris.Babcock Fix features requested in manifest for "Daydream and Cardboard" mode #jira UE-43314 #ue4 #android Change 3369087 on 2017/03/28 by Jack.Porter Changed tooltip and added supported devices in paretheses for Android Mobile Deferred / ES31+AEP #jira UE-42438 Change 3369372 on 2017/03/29 by Allan.Bentham Fix disappearing meshes when r.mobile.allowdistancefieldshadows is disabled. #jira UE-43366 Change 3369381 on 2017/03/29 by Jack.Porter Show warnings when mobile shader permutations required for rendering are disbaled Made FReadOnlyCVARCache a singleton and added mobile CVars, used for MobileBasePassRendering. #jira UE-43050 Change 3369430 on 2017/03/29 by Allan.Bentham fix CIS build Change 3369740 on 2017/03/29 by Allan.Bentham Added Android option to enable builds with hidden symbol visbility by default. (bBuildWithHiddenSymbolVisibility) Android links with -gc-sections to remove unused code/data Add JNI_METHOD for java accessible native functions, fixed up existing JNI functions to use macro. Add support for map file generation with android. Add 'bBuildWithHiddenSymbolVisibility' to AndroidPlatform.HasDefaultBuildConfig() bBuildWithHiddenSymbolVisibility defaults to false in BaseEngine.ini #jira UEMOB-168 Change 3369975 on 2017/03/29 by Nick.Shin HTML5 - AWS S3 shareable link for shipping builds corrected #jira UE-43379 Amazon S3 Shareable link does not generate correct filepath. Change 3369998 on 2017/03/29 by Nick.Shin HTML5 python build scripts PR: https://github.com/Mozilla-Games/UnrealEngine/commit/1cb836d43c3015c6ca0fdd039072bb6c5c273db3 #jira none Change 3370214 on 2017/03/29 by Nick.Shin HTML5 - default bUseFixedTimeStep to false... #jira UE-43380 - Default HTML5 gamespeed is faster than equivalent platforms Change 3370762 on 2017/03/29 by Chris.Babcock Fixes to new keyboard for Android - Ensure the local scope ScreenRect passed into OnVirtualKeyboardShown in AndroidJNI is captured by value instead of by reference. - Moved ShowVirtualKeyboardInput's bKeyboardShowing early-out checks into the UI thread task. This allows the keyboard to continue showing when changing focus between multiple EditableTextBox widgets. #ue4 #android Change 3371344 on 2017/03/30 by Jack.Porter Fixed issue where Vulkan screenshot R/B channels were reversed on Android #jira UE-43479 Change 3372926 on 2017/03/30 by Peter.Sauerbrei start the process of sunsetting 32-bit and GLES2 on iOS #jira UE-42266 Change 3372970 on 2017/03/30 by Nick.Shin HTML5 - 1.37.9 emscripten: wasm & webgl2 support - windows toolchain #jira UEMOB-263 Switch [to] web assembly #jira UEMOB-201 Support ES3 / WebGL2 in HTML5 #rn Change 3372989 on 2017/03/30 by Peter.Sauerbrei fix for Xcode 8.3 build with 32-bit Change 3373007 on 2017/03/30 by Peter.Sauerbrei fix for crash when online subsystem is disabled on IOS Change 3373108 on 2017/03/30 by Nick.Shin HTML5 - 1.37.9 emscripten: wasm & webgl2 support - 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 #rn Change 3373163 on 2017/03/30 by Nick.Shin HTML5 - 1.37.9 emscripten: wasm & webgl2 support - OSX toolchain #jira UEMOB-263 Switch [to] web assembly #jira UEMOB-201 Support ES3 / WebGL2 in HTML5 #rn Change 3373169 on 2017/03/30 by Nick.Shin HTML5 - 1.37.9 emscripten: wasm & webgl2 support license file updated #jira UEMOB-263 Switch [to] web assembly #jira UEMOB-201 Support ES3 / WebGL2 in HTML5 #rnx Change 3373287 on 2017/03/30 by Nick.Shin HTML5 - 1.36.11 emscripten - remove old SDK #jira none #rnx Change 3373289 on 2017/03/30 by Nick.Shin HTML5 - 1.37.9 emscripten: wasm & webgl2 support - Linux toolchain #jira UEMOB-263 Switch [to] web assembly #jira UEMOB-201 Support ES3 / WebGL2 in HTML5 #rn Change 3373595 on 2017/03/30 by Chris.Babcock Reenable GooglePlay for ARM64 now that it doesn't crash #jira UE-36198 #ue4 #android Change 3373606 on 2017/03/30 by Chris.Babcock Submitting Allan's shelved EXT_shader_framebuffer_fetch fix #ue4 #android Change 3375456 on 2017/03/31 by Chris.Babcock Add missing keycodes for Android keyboard (@ and #) #jira WEX-5777 #ue4 #android Change 3376309 on 2017/04/03 by Allan.Bentham Fix overflow issues with mobile DoF. Change 3377041 on 2017/04/03 by Will.Fissler Adding Testbed content for PlatformShowcase. Change 3377582 on 2017/04/03 by Alicia.Cano adding back in GET_ACCOUNTS permission as it is required for Reset Achievements #jira: UE-43265 #android #rb: Chris.Babcock Change 3377643 on 2017/04/03 by Peter.Sauerbrei fix for memory leak in MallocBinned #jira UE-43008 Change 3378033 on 2017/04/04 by Nick.Shin HTML5 - 1.37.9 emscripten: wasm & webgl2 support - ThirdParty libs compiled with new toolchain with wasm and webgl2 support #jira UEMOB-263 Switch [to] web assembly #jira UEMOB-201 Support ES3 / WebGL2 in HTML5 #rn Change 3378034 on 2017/04/04 by Nick.Shin HTML5 - 1.37.9 emscripten: wasm & webgl2 support - ThirdParty build scripts #jira UEMOB-263 Switch [to] web assembly #jira UEMOB-201 Support ES3 / WebGL2 in HTML5 Change 3378035 on 2017/04/04 by Nick.Shin HTML5 - Update GameX template to make it work with trunk Emscripten PR https://github.com/Mozilla-Games/UnrealEngine/commit/dc2b26f452948f8ee07178bc3e8742af80d8919a#commitcomment-21454978 #jira none #rn Change 3378044 on 2017/04/04 by Nick.Shin HTML5 harfbuzz - double checking recompiled with NO multithreading wasm currently does not support pthreads *** THIS IS STILL WIP *** checking in to match 3rd party libs compiled configuration #jira UE-28588 - Build HarfBuzz for HTML5 #rnx Change 3378264 on 2017/04/04 by Allan.Bentham Fix crash when using consolas font on android sdk 24 #jira UE-43464 Change 3379097 on 2017/04/04 by Nick.Shin CIS HTML5 build warning fix #jria none #rnx Change 3379333 on 2017/04/04 by Chris.Babcock Prevent inserting extra permissions into manifest multiple times #jira UE-43583 #ue4 #android Change 3380870 on 2017/04/05 by Chris.Babcock Fix merge issue Change 3380898 on 2017/04/05 by Chris.Babcock Fixed again Change 3381443 on 2017/04/05 by Chris.Babcock Fix for GearVR non-unity build #ue4 #android Change 3381941 on 2017/04/05 by Chris.Babcock Fix HTTPChunkInstaller texture format checks and missing #define warning #jira UE-43706 #ue4 #android Change 3382056 on 2017/04/05 by Chris.Babcock Updates to Android AARs needed for Facebook plugin Change 3382097 on 2017/04/05 by Chris.Babcock Disable java console cmd receiver only in shipping builds #jira UE-43710 #ue4 #android Change 3382497 on 2017/04/06 by Allan.Bentham Fix Fortnite Cooked Server crashes when joining game from lobby. #jira UE-43695 Change 3383227 on 2017/04/06 by Will.Fissler Reverted case sensitive change, from yesterday, and implemented a pragma instead. #jira UE-41313 [CL 3383473 by Jack Porter in Main branch]
2017-04-06 16:13:17 -04:00
string DestFilename = "/Library/Caches/" + Trimmed.Replace("cookeddata/", "");
DestFilename = DestFilename.Replace('\\', '/');
Copying //UE4/Dev-Platform to //UE4/Main (Source: //UE4/Dev-Platform @ 2970079) ========================== MAJOR FEATURES + CHANGES ========================== Change 2945365 on 2016/04/15 by Mark.Satterthwaite Assert if anyone calls RHIClearUAV on a structured-buffer or texture under Metal - there's no clear way to implement these cases yet. Change 2945366 on 2016/04/15 by Mark.Satterthwaite Change the Metal parallel command-context submission to hand-off the entire NSArray of MTLCommandBuffers to avoid race conditions between one use of a context and the next. Change 2945394 on 2016/04/15 by Mark.Satterthwaite Duplicate CL #2943702 from 4.11.2: Change the way Metal validates the render-target state so that in FMetalContext::PrepareToDraw it can issue a last-ditch attempt to restore the render-targets. This won't fix the cause of the Mac Metal crashes but it might mitigate some of them and provide more information about why they are occurring. Change 2945444 on 2016/04/15 by Mark.Satterthwaite Cache the Metal fallback depth-stencil surface for the canvas tile rendering so that we only ever keep one spare depth-stencil surface around. This costs us a little more permanent memory but reduces churn. Change 2945457 on 2016/04/15 by Mark.Satterthwaite Add validation code to MetalRHI to ensure that we don't erroneously re-clear existing render contents when restoring the render command encoder. This will only be active when the Metal debug layer is enabled and is completely compiled away in Test & Shipping builds for performance. Change 2946249 on 2016/04/16 by Nick.Shin build HarfBuzz for HTML5 #jira UE-28552 - HarfBuzz - HTML5 Change 2946250 on 2016/04/16 by Nick.Shin Rename/move file(s) move emscripten (part 1 of 2) from Engine/Source/ThirdParty/HTML5/emsdk to Engine/Extras/ThirdPartyNotUE/emsdk this is a request from legal Change 2946251 on 2016/04/16 by Nick.Shin move emscripten (part 2 of 2) build scripts and cpp files updated with new emscripten path from Engine/Source/ThirdParty/HTML5/emsdk to Engine/Extras/ThirdPartyNotUE/emsdk this is a request from legal Change 2946516 on 2016/04/18 by Mark.Satterthwaite Disable r.DFShadowScatterTileCulling as well as r.AOScatterTileCulling on Mac because we don't have the necessary RW textures on Metal. Change 2947000 on 2016/04/18 by Michael.Trepka Print OS X version to log in FMacPlatformMisc::PlatformInit() Change 2948197 on 2016/04/19 by Lee.Clark PS4 - Use SDK 3.508.031 Change 2948301 on 2016/04/19 by Nick.Shin upgrading zlib openssl libcurl libwebsockets part 1 of 2 -- adding new compiled versions (part 2 will be removing the old version -- which will be done after platform owners are given a chance to recompile for their platform - most notably: zlib) NOTE: Linux libraries are built for CentOS 6.7 (i.e. 2010 - glibc 2.12 and gcc 4.4.7) #jira UEPLAT-1246 - Update libWebsockets #jira UEPLAT-1221 - update websocket library #jira UEPLAT-1223 - Arrange testing for 'update websocket library' #jira UEPLAT-1203 - Add Linux library for libwebsockets #jira UEPLAT-1204 - Rebuild libwebsockets with SSL Change 2948319 on 2016/04/19 by Nick.Shin update zlib to v1.2.8 part 1 of 4 - doing this in stages for tracking purposes #jira UEPLAT-1246 - Update libWebsockets #jira UEPLAT-1221 - update websocket library Change 2948320 on 2016/04/19 by Nick.Shin update OpenSSL to v1.0.1s part 2 of 4 - doing this in stages for tracking purposes also, removing dynamic libs (for windows) -- these are no longer needed as this is now statically linked in editor - tested by installing perforce server setup with ssl access only and pointing editor source code to it as ssl:hostname:port - also tested trying accessing it without ssl which resulted in access denied indicating a successful test of dynamic lib removal #jira UEPLAT-1246 - Update libWebsockets #jira UEPLAT-1221 - update websocket library #jira UEPLAT-1204 - Rebuild libwebsockets with SSL Change 2948322 on 2016/04/19 by Nick.Shin update libwebsockets to v1.7.4 part 4 of 4 - doing this in stages for tracking purposes #jira UEPLAT-1246 - Update libWebsockets #jira UEPLAT-1221 - update websocket library #jira UEPLAT-1204 - Rebuild libwebsockets with SSL Change 2948323 on 2016/04/19 by Nick.Shin build scripts pull source and compile - zlib openssl libcurl & libwebsockets tested on: - Win64 VS2013 & VS2015 - OSX - Linux #jira UEPLAT-1246 - Update libWebsockets #jira UEPLAT-1221 - update websocket library #jira UEPLAT-1203 - Add Linux library for libwebsockets #jira UEPLAT-1204 - Rebuild libwebsockets with SSL Change 2948337 on 2016/04/19 by Lee.Clark VS 2015 libScePad support Change 2948382 on 2016/04/19 by Mark.Satterthwaite Add Mac model, CPU string, num HTs to the log on Mac so that errors reported to us contain the data that Apple want when we turn them into bug-reports. Also added a missing sigaction from the trampoline. Change 2948385 on 2016/04/19 by Mark.Satterthwaite Disambiguate Metal command-buffer failures by vendor & error type so that we don't end up with just one crash-reporting entry for many different kinds of crash and enable this assertion on all builds because it will always be fatal and failing to crash here may end up causing the Mac to reboot. Change 2948460 on 2016/04/19 by Peter.Sauerbrei fix for wrong line endings Change 2948526 on 2016/04/19 by Nick.Shin fix for wrong line endings Change 2949334 on 2016/04/20 by Nick.Shin fix library path for some reason, NetworkFileSystem and HttpNetworkReplayStreaming on Mac platform needs full path - even though lib path was set... Change 2949398 on 2016/04/20 by Lee.Clark PS4 - Fix SDK compile warnings Change 2949656 on 2016/04/20 by Nick.Shin Back out changelist 2948320 but keeping the C# build file as-is Change 2949676 on 2016/04/20 by Mark.Satterthwaite Double-buffer the Metal viewport's back-buffer so that we can access the contents of the back-buffer after EndDrawingViewport is called until BeginDrawingViewport is called again on this viewport, this makes it possible to capture movies on Metal. #jira UE-29140 Change 2950025 on 2016/04/20 by Mark.Satterthwaite Undo CL #2949676 and instead on Mac where we want to be able to capture videos of gameplay we just insert an intermediate texture as the back-buffer and use a manual blit to the drawable prior to present. This also changes the code to enforce that the back-buffer render-target should never be nil as the code & Metal API itself assumes that this situation cannot occur but it would appear from continued crashes inside PrepareToDraw that it actually can in the field. This will address another potential cause of UE-29006. #jira UE-29006 Change 2950084 on 2016/04/20 by Nick.Shin OSX warning fix: UE4 supports down to OSX 10.9 rebuilt the zlib openssl libcurl and libwebsockets to support that build file also updated to use MACOSX_DEVELOPMENT_TARGET=10.9 Change 2950613 on 2016/04/20 by Dmitry.Rekman UAT: Disable modules that are not supported on Linux. #rb none #codereview Ben.Marsh, Michael.Trepka, Josh.Adams #tests Run RunUAT.sh Change 2951065 on 2016/04/21 by Nick.Shin temp: update SSL dlls in Engine/Binaries/ThirdParty/OpenSSL/Win64 Change 2951556 on 2016/04/21 by Nick.Shin static libs double checked #jira UE-29674 - Editor fails to open in Dev-Platform Change 2951559 on 2016/04/21 by Nick.Shin static libs double checked forgot these files - they were in another changelist #jira UE-29674 - Editor fails to open in Dev-Platform Change 2951574 on 2016/04/21 by Nick.Shin remove unused variable warning was bughunt code... Change 2951652 on 2016/04/21 by Josh.Adams - Disabled MRT support on iPad Air 1 devices, since it doesn't support wide enough MRTs that the engine needs (ie, only use MRTs in METAL_MRT mode on iOS) Change 2951656 on 2016/04/21 by Josh.Adams - Fixed Mac compile error in Metal Change 2951718 on 2016/04/21 by Nick.Shin remove shared SSL DLLs in a controlled manner tested with QA help who was able to replicate the bug in the morning - and was able to successfully run the editor with this changelist (shelved - remote unshelved test - thanks Dan.Bullard_volt!) #jira UE-29674 - Editor fails to open in Dev-Platform Change 2951862 on 2016/04/21 by Lee.Clark PS4 - Enable Neo high resolution support. Change 2952409 on 2016/04/22 by Nick.Shin add win32 build targets for zlib openssl libcurl libwebsockets part 1 of 2: these are the libs and header files Change 2952411 on 2016/04/22 by Nick.Shin add win32 build targets for zlib openssl libcurl libwebsockets part 1 of 2: these are the C# build scripts Change 2952580 on 2016/04/22 by Lee.Clark PS4 - Fix staging and deploying of system prxs Change 2953152 on 2016/04/22 by Mark.Satterthwaite Only cache instances of TShadowDepthVS with bIsForGeometryShader=true when the RHI can handle the underlying feature. We can save memory on iOS by only emitting these shaders on Mac Metal or RHI's with Geometry shaders which have the required H/W to do this. Change 2953385 on 2016/04/22 by Nick.Shin use HarfBuzz libs for HTML5 c# build files updated to link in the harfbuzz libs #jira UE-28552 - HarfBuzz - HTML5 Change 2954686 on 2016/04/25 by Nick.Shin from legal: Emscripten approved for redistribution provided that *all* files are checked into the following directory: Engine/Extras/ThirdPartyNotUE Please also check in the attached .tps files and licenses alongside the TPS itself. This will allow us to track third party files within P4. Change 2954928 on 2016/04/25 by Daniel.Lamb Fixed min number of threads allocated for compiling shaders in cooker. Change 2954942 on 2016/04/25 by Daniel.Lamb Added flag -skipcompile for running visual studio. Skip force compilation on -multiprocess flag. #jira UE-22308 #PR 1678 #1678 Change 2954948 on 2016/04/25 by Josh.Adams Merging //UE4/Dev-Main to Dev-Platform (//UE4/Dev-Platform) Change 2955370 on 2016/04/25 by Josh.Adams - Fixing C# error from main #lockdown nick.penwarden Change 2957745 on 2016/04/27 by Daniel.Lamb Pull request from acordon@microsoft.com. Fixed deterministic cooking issue with StaticMeshComponent using StaticMesh before it had it's postload call. Change 2957747 on 2016/04/27 by Daniel.Lamb Pull request from acordon@microsoft.com. Resave packages commandlet now can also rebuild asset registry paths with consistent case. Change 2957750 on 2016/04/27 by Daniel.Lamb Pull request from acordon@microsoft.com. Fixed deterministic cooking issue with StaticMeshComponent using StaticMesh before it had it's postload call. Change 2958708 on 2016/04/28 by Nick.Shin remove boringSSL #jira UE-29970 - QAGame launch on fails for Win64, fatal error LNK1169: one or more multiply defined symbols found #lockdown josh.adams Change 2958724 on 2016/04/28 by Nick.Shin moved setting bVerifyPeer flag AFTER CertBundlePath has been set... otherwise, libCurl is going to try to verify the SSL session - but without a cert file, it makes no sense to try and verify the session - we could (and probably should) make this an error condition - but the constructor has the bVerifyPeer set to true -- which would mean that all games will need to have a cert file and/or know to set bVerifyPeer to false... - and so far, only linux and android seem to have code in place to make use of the cert files... #jira UE-29950 - Orion deticated server MCP authentication fails when using CURL #lockdown josh.adams Change 2959058 on 2016/04/28 by Mark.Satterthwaite Mac Metal RHIGetSupportedResolution & RHIGetAvailableResolutions exactly as they were for Mac OpenGL. Change 2959587 on 2016/04/28 by Jeff.Campeau Use response files for compiling CPPs using the VC toolchain to avoid issues where the command line is too long for XGE Change 2959605 on 2016/04/28 by Jeff.Campeau Reuse existing response files if contents are unmodified. #2278 Change 2959680 on 2016/04/28 by Daniel.Lamb Don't cook clients when building only server configs. #pr 2127 #2127 Change 2959764 on 2016/04/28 by Nick.Shin set PS4 back to using boringSSL - until OpenSSL has been built for it #jira UE-30088 - Orion PS4 Cook and Deploy fails to build for PS4 Change 2959875 on 2016/04/28 by Jeff.Campeau Simplified compression to use a bitwindow param instead of a targetplatform param Added bitwindow parameter for unrealpak Set Xbox One to pass 12 bit window for paks (for hw decompress) Change 2959960 on 2016/04/28 by Nick.Shin removed url protocol scheme from external script loads - this will support fetching scripts with either http or https automatically and added window.focus after game has finished compiling - this will help if game is inside an iframe #jira UE-29886 - HTML5 project does not load using itch.io Change 2960064 on 2016/04/28 by Dmitry.Rekman XMPP: Add missing dependency on OpenSSL on Linux. Change 2961310 on 2016/04/29 by Mark.Satterthwaite DistanceField tile alignment changes to attempt to make it work on Mac. Change 2961602 on 2016/04/29 by Nick.Shin #ifndef'd EMSCRIPTEN around FOpenGL::Flush(); answerhub 409649 - HTML5 OpenGL backend doesn't need to flush GL commands Change 2961604 on 2016/04/29 by Nick.Shin return "()" on empty object answerhub 390139 - JSON Conversion of TMaps of UStructs Can't Deserialize Change 2963068 on 2016/05/02 by Peter.Sauerbrei Merging //UE4/Dev-Main to Dev-Platform (//UE4/Dev-Platform) Change 2963302 on 2016/05/02 by Peter.Sauerbrei fix for PS4 build failure Change 2963731 on 2016/05/02 by Dmitry.Rekman Linux: move crash/ensure info from Binaries to Saved (UE-28411). - Allows running from read/only locations, since Saved can be redirected. #rb none #codereview Chris.Wood, David.Vossel Change 2963737 on 2016/05/02 by Dmitry.Rekman CrashMalloc: get allocation size also from jemalloc. - Editor builds on Linux are otherwise shutting down on attempting to realloc things ("binned" is not used for the editor). #rb none #codereview Chris.Wood, Robert.Manuszewski, Steve.Robb Change 2963989 on 2016/05/03 by Lee.Clark PS4 - Fix texture initialization Change 2964296 on 2016/05/03 by Dmitry.Rekman Better fix for getting previous allocation size. - Suggested by GilG. #codereview Gil.Gribb Change 2964398 on 2016/05/03 by Mark.Satterthwaite Added GetCompressionBitWindow to IPlatformCompression so that FArchive compression can acquire the platform specific window value at runtime even without the Developer-only TargetPlatform modules. This allows the ShaderCache to perform runtime compression of preloaded shaders in-game without crashing. #jira UE-30238 Change 2965966 on 2016/05/04 by Peter.Sauerbrei fix for bad path when deploying from mac #jira UE-30294 #lockdown josh.adams Change 2968380 on 2016/05/05 by Dmitry.Rekman Fix visibility placement which breaks Linux build. #lockdown Josh.Adams #codereview James.Golding Change 2969002 on 2016/05/06 by Nick.Shin use boringssl until webrtc recompiled with openssl work is finished #jira UE-30298 - Fortnite and Orion crash on login #lockdown josh.adams Change 2969545 on 2016/05/06 by Josh.Adams Merging //UE4/Dev-Main to Dev-Platform (//UE4/Dev-Platform) #lockdown nick.penwarden Change 2969923 on 2016/05/06 by Chris.Babcock Fix linker warning (mismatched function/variable for glMapBufferOES and glUnmapBufferOES) #jira UE-30222 #ue4 #android #lockdown Josh.Adams Change 2970016 on 2016/05/07 by Nick.Shin undo all of the following upgrades: - zlib - openssl - libcurl - libwebsockets and reset webrtc #jira UE-30298 - Fortnite and Orion crash on login #lockdown josh.adams #lockdown nick.penwarden [CL 2970080 by Josh Adams in Main branch]
2016-05-07 12:42:47 -04:00
SourceFilename = SourceFilename.Replace('\\', Path.DirectorySeparatorChar);
WriteProgressLine("Copying '{0}' -> '{1}' ...", 0, SourceFilename, DestFilename);
CopyFileToPhone(SourceFilename, DestFilename, 1024 * 1024);
}
}
return true;
}
catch (Exception ex)
{
WriteProgressLine("Failed to transfer a file, extended error is '{0}'", 100, ex.Message);
return false;
}
}
else
{
WriteProgressLine("Error: Failed to connect to bundle '{0}'", 100, BundleIdentifier);
return false;
}
}
/// <summary>
/// Tries to copy all of the files in a particular directory on the PC to the phone directory
/// (requires the bundle identifier to be able to mount that directory)
/// </summary>
public bool TryBackup(string BundleIdentifier, string[] Files)
{
if (ConnectToBundle(BundleIdentifier))
{
WriteProgressLine("Connected to bundle '{0}'", 0, BundleIdentifier);
try
{
string SafeDeviceName = MobileDeviceInstance.SanitizePathNoFilename(DeviceName);
foreach (string Filename in Files)
{
// string BaseFolder = Path.GetDirectoryName(Filename);
string Manifest = Path.GetDirectoryName(Filename) + "\\" + SafeDeviceName + "_" + Path.GetFileName(Filename);
Copying //UE4/Dev-Mobile to //UE4/Dev-Main (Source: //UE4/Dev-Mobile @ 3383462) #lockdown Nick.Penwarden ========================== MAJOR FEATURES + CHANGES ========================== Change 3292174 on 2017/02/08 by Nick.Shin HTML5 emscripten: wasm and webgl2 support - Linux toolchain #jira UEPLAT-1437 Switch [to] web assembly Change 3292193 on 2017/02/08 by Nick.Shin HTML5 emscripten: wasm and webgl2 support - ThirdParty libs compiled with new toolchain with wasm support #jira UEPLAT-1437 Switch [to] web assembly Change 3292215 on 2017/02/08 by Nick.Shin HTML5 emscripten: wasm and wbegl2 support - emscripten toolchain #jira UEPLAT-1437 Switch [to] web assembly Change 3292222 on 2017/02/08 by Nick.Shin HTML5 emscripten: wasm support - ENGINE changes (c# & cpp files) #jira UEPLAT-1437 Switch [to] web assembly Change 3292223 on 2017/02/08 by Nick.Shin HTML5 merge ThirdParty lib build scripts from Dev-Platform to Dev-Mobile Change 3292228 on 2017/02/08 by Nick.Shin HTML5 emscripten: webgl support - webgl patches - and a lot of UE4 patches to package HTML5 on LINUX - mostly from mozilla's jukka -- thx jukka! #jira UEPLAT-828 (4.16) Support ES3 / WebGL2 in HTML5 Change 3292285 on 2017/02/08 by Nick.Shin HTML5 emscripten: wasm and webgl2 support - Windows toolchain #jira UEPLAT-1437 Switch [to] web assembly Change 3293994 on 2017/02/09 by Nick.Shin HTML5 emscripten: wasm and webgl2 support - OSX toolchain #jira UEPLAT-1437 Switch [to] web assembly Change 3294391 on 2017/02/09 by Nick.Shin HTML5 "black box issues" revisited - jukka rewrote the window resize handler -- much cleaner and more straightforward #jira UE-36341 HTML5 - View is incorrectly drawn #jira UE-32311 Templates on Firefox/Chrome on HTML5 are not full screen during Launch On Change 3296421 on 2017/02/10 by Jack.Porter Fix landscape spline segment splitting placing when using streaming levels Change 3296587 on 2017/02/10 by Jack.Porter Additional fix for landscape spline segment splitting when using streaming levels Change 3301241 on 2017/02/14 by Mi.Wang Fixed DeviceProfileEditor bug for incorrect clamp the Texture Mip LOD size. #jira UE-36237 #rb jack.porter Change 3301387 on 2017/02/14 by Nick.Shin HTML5 emscripten: webgl support - webgl patches from mozilla's jukka + hardware instancing + glBlitFramebuffer + GL AlaphaBlendOperation #jira UEPLAT-828 (4.16) Support ES3 / WebGL2 in HTML5 Change 3301405 on 2017/02/14 by Nick.Shin HTML5 plugin fix when blueprint projects are promoted to code projects automatically. #jira UE-41710 HTML5 - Package Failure - Failed to Produce item ProjectName-OnlineSubsystemNull.bc Change 3302278 on 2017/02/14 by Omar.Rodriguez UE-36651: Mac Vulkan Android Projects crash on launch. * Glslang library has been built for Mac but flag was not updated * Set GlslangAvailable to true for Mac when building an Android project with vulkan #jira UE-36651 Change 3302773 on 2017/02/14 by Chris.Babcock Add a dropdown with some common console commands on Android (contributed by rafortis) #jira UE-40834 #PR #3143 #ue4 #android Change 3305604 on 2017/02/16 by Nick.Shin HTML5 webgl2 shader- turn on: instance static mesh vertex factory #jira UEPLAT-828 (4.16) Support ES3 / WebGL2 in HTML5 Change 3308154 on 2017/02/16 by Nick.Shin HTML5 GitHub PR #jira UE-42019 GitHub 3258 : Added suport for emscripten --pre-js and --post-js option when building for HTML5 Change 3308510 on 2017/02/16 by Nick.Shin HTML5 webgl2 shader fixes #jria UEMOB-201 Support ES3 / WebGL2 in HTML5 Change 3308971 on 2017/02/17 by Jack.Porter Fix for landscape painting when height<0 in the Ortho viewports Change 3309075 on 2017/02/17 by Allan.Bentham Include static subject meshes when masking out modulated shadow casters. #jira UE-41581 Change 3309531 on 2017/02/17 by Chris.Babcock Handle large OBB files in APK #jira UE-41443 #ue4 #android Change 3311320 on 2017/02/19 by Dmitriy.Dyomin Fixed: Particle Cutout Crashes On Mobile Devices That Don't Support Hardware Instancing (Mali-400 GPU) #jira UE-41970 Change 3311347 on 2017/02/20 by Dmitriy.Dyomin Fixed: Engine Crashes When Previewing ES3_1 With Material Using World Position Offset (Need Custom Stencil) #jira UE-41976 Change 3311398 on 2017/02/20 by Dmitriy.Dyomin Fixed: Landscapes do not render on PowerVR device #jira UE-35530 Change 3311428 on 2017/02/20 by Dmitriy.Dyomin Fixed: Exposure Is More Extreme In High-End Mobile Preview Modes #jira UE-42036 Change 3311448 on 2017/02/20 by Dmitriy.Dyomin Fixed: Packaged game Crashes on android after entering "Help" command twice #jira UE-41956 Change 3311587 on 2017/02/20 by Allan.Bentham ES2 GLSL - Silently swap all uint to ints #jira UE-41548 Change 3313930 on 2017/02/21 by Allan.Bentham Print literal uints as ints when generating ES2 code. #jira UE-41548 Change 3317924 on 2017/02/22 by Nick.Shin HTML5 emscripten: wasm & webgl2 support - RC1 - Linux toolchain #jira UEMOB-263 Switch [to] web assembly #jira UEMOB-201 Support ES3 / WebGL2 in HTML5 Change 3317929 on 2017/02/22 by Nick.Shin HTML5 emscripten: wasm & webgl2 support - RC1 - ThirdParty libs compiled with new toolchain with wasm and webgl2 support #jira UEMOB-263 Switch [to] web assembly #jira UEMOB-201 Support ES3 / WebGL2 in HTML5 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 Change 3318004 on 2017/02/22 by Nick.Shin HTML5 emscripten: wasm & webgl2 support - RC1 - windows toolchain #jira UEMOB-263 Switch [to] web assembly #jira UEMOB-201 Support ES3 / WebGL2 in HTML5 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 Change 3318672 on 2017/02/23 by Nick.Shin HTML5 webgl2 shader fixes #jria UEMOB-201 Support ES3 / WebGL2 in HTML5 Change 3318819 on 2017/02/23 by Dmitriy.Dyomin Fixed: Rendering artifacts with bloom on iPhone7 Metal #jira UE-40978 Change 3319702 on 2017/02/23 by Chris.Babcock Disable eglSwapInterval since it can cause issues with some drivers #ue4 #android Change 3320880 on 2017/02/24 by Dmitriy.Dyomin Added r.Mobile.TonemapperFilm cvar which can be used to enable/disable filmic tonemapper on mobile, independently from desktop (disabled by default) #jira UEMOB-195 Change 3321042 on 2017/02/24 by Jack.Porter Fixed incorrect sizeof in Vulkan pipleine cache pointed out here: http://coconutlizard.co.uk/blog/ue4/ue4-its-a-size-jim/ #code_review: rolando.caloca Change 3322383 on 2017/02/24 by Chris.Babcock Fix issue with ad banner on Android 7.0 devices #jira UE-42390 #ue4 #android Change 3322479 on 2017/02/24 by Omar.Rodriguez UEMOB-199 - WEX: Improved virtual keyboard for Android * Calculating the area covered by the virtual keyboard * Calling OnVirtualKeyboardShown and OnVirtualKeyboardHidden events * Passing the Rect of the area covered by the virtual keyboard OnVirtualKeyboardShown event #jira UEMOB-199 Change 3323353 on 2017/02/27 by Allan.Bentham Fix broken mobile scene captures when !mobileHDR and RHINeedsToSwitchVerticalAxis #jira UE-42191 Change 3323431 on 2017/02/27 by Allan.Bentham CIS fix Change 3323687 on 2017/02/27 by Allan.Bentham Disable GRHINeedsUnatlasedCSMDepthsWorkaround for mobile devices. #jira UE-42131 Change 3324652 on 2017/02/28 by Dmitriy.Dyomin Fixed: Canvas elements appear darker on iOS Metal Change 3324885 on 2017/02/28 by Jack.Porter Fixed "Minimum iOS Version" setting display name #jira UE-42270 Change 3324899 on 2017/02/28 by Jack.Porter GitHub 3063 : removed duplicate gc.MaxObjectsInGame setting in IOSEngine.ini #jira UE-40018 #3063 Change 3324932 on 2017/02/28 by Jack.Porter GitHub 3257 : iPhonePackager errors in output log when opening project settings on Windows #jira UE-41984 #3257 #codereview: Peter.Sauerbrei Change 3324956 on 2017/02/28 by Jack.Porter FOpenGLFrontend::GetMaxSamplers incorrect for IOS #jira UE-42038 #3264 Change 3325478 on 2017/02/28 by Allan.Bentham PR # 3188 : Fix far distance bug with cascaded shadows on mobile (Metal) and PC mobile preview (Contributed by ufna) #jira UE-41442 Change 3327300 on 2017/03/01 by Allan.Bentham PR #3175 : Fixes high quality reflection blending seams (Contributed by kallehamalainen) #jira UE-41257 Change 3328917 on 2017/03/02 by Nick.Shin HTML5 project settings expose ini settings to edtior HTML5 project settings panel #jira UE-42331 Project Settings - HTML5 SDK - HTML Device population should be moved to an .ini #jira UE-41584 Editor locks up when adding an element for HTML5 devices on Mac #jira UE-41701 Editor freezes when setting browser filepath for inserted element in project settings Change 3329169 on 2017/03/02 by Allan.Bentham increase render thread timeout to 1 minute for suntemple / android. Prevents low end devices timing out during load. #jira UE-40696 Change 3330849 on 2017/03/02 by Nick.Shin HTML5 project settings expose ini settings to edtior HTML5 project settings panel #jira UE-42331 Project Settings - HTML5 SDK - HTML Device population should be moved to an .ini Change 3331078 on 2017/03/03 by Dmitriy.Dyomin Fixed: Device output log partial lines integrated from WEX (3250488) Change 3331112 on 2017/03/03 by Dmitriy.Dyomin Reduced state setup for slate draw calls (saves about 4ms RT time on mobile) integrated from WEX (3256584) Change 3331117 on 2017/03/03 by Dmitriy.Dyomin Fixed redundant blend state changes in opengl integrated from WEX (3256586) Change 3331173 on 2017/03/03 by Dmitriy.Dyomin Slate pixel shaders will use half precision where possible on mobile integrated from WEX (3256656) Change 3332865 on 2017/03/06 by Dmitriy.Dyomin Better MobileContentScaleFactor defaults for iOS devices #jira UEMOB-330 Change 3333129 on 2017/03/06 by Peter.Sauerbrei move to Library/Caches instead of documents for saved files re-enable iterative deploy on TVOS #jira UEMOB-284 Change 3334692 on 2017/03/06 by Jack.Porter Allow r.MobileContentScaleFactor to be changed at runtime on Android #jira UEMOB-173 Change 3336255 on 2017/03/07 by Nick.Shin HTML5 project settings marking SIMD and multithreading as experimental - these do not play nice with WASM builds currently... #jira UE-42331 Project Settings - HTML5 SDK - HTML Device population should be moved to an .ini Change 3337094 on 2017/03/08 by Nick.Shin HTML5 project settings marking SIMD and multithreading as experimental - these do not play nice with WASM builds currently... #jira UE-42331 Project Settings - HTML5 SDK - HTML Device population should be moved to an .ini Change 3338800 on 2017/03/08 by Chris.Babcock Update AAR handling to deal with versioning, subproject dependencies for resources, and scope #jira UE-42677 #ue4 #android Change 3338813 on 2017/03/08 by Chris.Babcock Pass build configuration to UPL for access during packaging as $S(Configuration) #jira UE-42678 #ue4 #android #ios Change 3339401 on 2017/03/09 by Alicia.Cano Android runtime permissions - Fix for WRITE_EXTERNAL_STORAGE if it is not granted at time of onCreate for non-shipping builds - Fix for Location Services - Fix for if target sdk is not set to 23+ #jira UE-38512 #android #rb: chris.babcock Change 3340736 on 2017/03/09 by Chris.Babcock Implement support for new controllers (Xbox Wireless, SteelSeries Stratus XL, PS4) (contributed by TRS-justing) #jira UE-41965 #PR #3254 #ue4 #android Change 3340744 on 2017/03/09 by Jack.Porter Expose Custom Depth to Foliage #jira UE-6061 Change 3340849 on 2017/03/09 by Dmitriy.Dyomin Fixed: iOS movie become laggy and crashes when played in iPhone 6/6s. #jira UE-42351 Change 3341268 on 2017/03/10 by Alicia.Cano PR #2894: Initial VoiceModuleAndroid support. (Contributed by devbm) #jira UE-37945 #android #rb: chris.babcock, jack.porter Change 3341303 on 2017/03/10 by Allan.Bentham Remove optimisation that prevents full specular occulsion on mobile. PR #3186 : Specular can't be blocked on high-end mobile. #jira UE-41393 Change 3342304 on 2017/03/10 by Alicia.Cano build fix #rb: chris.babcock Change 3343344 on 2017/03/13 by Alicia.Cano build fix #rb: chris.babcock Change 3343591 on 2017/03/13 by Brent.Pease iOS multiplayer fix part 1. Correct byte ordering. #jira UE-34875 Change 3343669 on 2017/03/13 by Chris.Babcock Update carefullyredist script version #jira UE-42832 Change 3344212 on 2017/03/13 by Will.Fissler Various compile fixes for Xcode 8.3. These fixes must also be added to //UE4/Release-4.15. #jira UE-41313 Change 3344396 on 2017/03/13 by Chris.Babcock Fix Java 1.5 obsolete warnings #jira UE-42851 #ue4 #android Change 3345132 on 2017/03/14 by Will.Fissler Added ifdef wrapper to check clang version for presentDrawable. Change 3345336 on 2017/03/14 by Will.Fissler Moved #if (__clang_major__ > 8) || (__clang_major__ == 8 && __clang_minor__ >= 1) check inside of the presentDrawable method. Change 3345460 on 2017/03/14 by Will.Fissler ifdef changes for presentDrawable. The last submission duped the changes, instead of merging. #rb none Change 3346046 on 2017/03/14 by Will.Fissler Fixed MetalCommandBuffer.cpp [again] after last submission duped changes instead of merging. Change 3346367 on 2017/03/14 by Chris.Babcock Fix issue with GoogleVR ARMv7 libraries included for other architectures in link #ue4 #android Change 3347682 on 2017/03/15 by Allan.Bentham Enable HW sRGB correction with retainer widget's render target. Use slate's gamma correction for mobile (where no such support exists) Render retainer box RT content with gamma correction. #jira UE-40967 Change 3348712 on 2017/03/15 by Nick.Shin HTML5 - upload to S3 updated to AWS "signature version 4" authentication #jira UE-42525 HTML5 Upload to Amazon S3 fails with Incorrect Configuration error Change 3349254 on 2017/03/16 by Jack.Porter Fix for crash using the mobile previewer when the LQ lightmap shader permutation is disabled. #jira UE-42971 Change 3349739 on 2017/03/16 by Nick.Shin HTML5 - upload to S3 better error message feedback on upload failures #jira UE-42525 HTML5 Upload to Amazon S3 fails with Incorrect Configuration error Change 3349765 on 2017/03/16 by Alicia.Cano Disable mouseover events in Mobile Previewer #jira UE-19903 #mobile #rb: Jack.Porter Change 3350049 on 2017/03/16 by Nick.Shin HTML5 - upload to S3 folder in bucket is optional #jira UE-42525 HTML5 Upload to Amazon S3 fails with Incorrect Configuration error Change 3350153 on 2017/03/16 by Nick.Shin HTML5 - upload to S3 updated S3 public link generator #jira UE-42525 HTML5 Upload to Amazon S3 fails with Incorrect Configuration error Change 3351582 on 2017/03/17 by Will.Fissler Reverting the attempted fix for Xcode 8.3: Result += " -mcpu=cortex-a9"; Currently we cannot build arm64 for iOS with this change. Change 3352085 on 2017/03/17 by Alicia.Cano iOS doesn't honor request to close the virtual keyboard leading to a crash #jira UE-36447 #ios #rb:Peter.Sauerbrei Change 3353313 on 2017/03/19 by Ben.Marsh Always allow large *.js files in Github. Change 3354444 on 2017/03/20 by Nick.Shin HTML5 - upload to S3 to help make it obvious that "upload to S3" checkbox is set/or not -- disable S3 details if checkbox for "uploading to S3" is not set #jira UE-42525 HTML5 Upload to Amazon S3 fails with Incorrect Configuration error Change 3355618 on 2017/03/20 by Nick.Shin HTML5 Save Game System - ripped out HTML5 code [from Engine's SaveGameSystem.h] and placed it in HTML5Platform.cpp - cleaned up HTML5PlatformFile.cpp (make it match as clost to linux's version) - created HTML5's own PlatformFeature & SaveGameSystem files -- and updated HTML5PlatformMisc to make use of the the new HTML5 SaveGame code #jira UE-42081 Remove heinous HTML5 code from engine Change 3355621 on 2017/03/20 by Nick.Shin remove temp debugging code #jira UE-42081 Remove heinous HTML5 code from engine Change 3356937 on 2017/03/21 by Chris.Babcock Add "stat vulkanrhi" to new console dropdown #jira UE-43149 #ue4 #android Change 3357652 on 2017/03/21 by Nick.Shin HTML5 performance speed ups added "use fixed timestep" setting option for HTML5 builds (this has been separated from Engine - General Settings - Framerate) - this is slightly different to smooth framerate and fixed framerate - thus, the timestep option was put in the HTML5 specific panel this option is based on the suggestions by jukka's post: - https://answers.unrealengine.com/questions/409629/smooth-frame-rate-and-use-fixed-frame-rate-should.html however, using this option will make the player "run faster" on (for example) thirdperson blueprint template -- but, it has no effect on other (for example) zen garden... #jira UE-30214 - Implement a warning message for fps settings Change 3360415 on 2017/03/23 by Allan.Bentham Fix crash that occurs when ES3.1 preview is used with r.MobileHDR32bppMode modes. Change 3360418 on 2017/03/23 by Allan.Bentham Disable filmic tonemapper if r.MobileHDR32bppMode is in use. #jira UE-40913 Change 3360557 on 2017/03/23 by Allan.Bentham Better fix for mobile CSM shadow flickering (UE-42131), now works for PC OpenGL based mobile preview. #jira UE-42131 Change 3362258 on 2017/03/23 by Dmitriy.Dyomin Fixed: Canvas texture element gamma issues on iOS Metal Change 3362321 on 2017/03/24 by Dmitriy.Dyomin GitHub 3173 : MaterialAO support for mobile rendering path (contributed by kallehamalainen) #3173 Change 3363550 on 2017/03/24 by Alicia.Cano build fix for devices < Android 5.0 #jira UE-43299 #android #rb: chris.babcock Change 3363687 on 2017/03/24 by Chris.Babcock Fix Android password hiding in input dialog #jira WEX-5159 #ue4 #android Change 3365280 on 2017/03/27 by Dmitriy.Dyomin Fix for GL_EXT_shader_framebuffer_fetch on Zenfone5. Use UE_EXT_shader_framebuffer_fetch define on all devices to enable extension Change 3365291 on 2017/03/27 by Dmitriy.Dyomin Copied form WEX CL# 3308653 Fixed: Enabling shader cache causes crash on NVIDIA Shield #jira UE-41639 Change 3365293 on 2017/03/27 by Dmitriy.Dyomin GitHub 3411 : Fix crash in patching utils mount method (contributed by nverenik) #jira UE-43247 #3411 Change 3365340 on 2017/03/27 by Dmitriy.Dyomin Fixed: Moving sublevel in world composition browser does not appear in Undo History #jira UE-35535 Change 3365564 on 2017/03/27 by Allan.Bentham SkyLightComponent now serializes IrradianceMap SH values. clicking Recapture sky button in mobile preview switches back to SM4/5 to update captures. Skylights that are dirty from load will trigger reflection capture update once shaders are rebuilt. #jira UE-42436 Change 3366282 on 2017/03/27 by Nick.Shin remove dead links these files to not exist anywhere in the make-3.81 subfolders #UDN-354501 #jira none Change 3366306 on 2017/03/27 by Nick.Shin HTML5 - disable multi-threading for wasm #jira UE-43219 - HTML5 disable multi-threading for wasm Change 3366307 on 2017/03/27 by Nick.Shin HTML5 packaging Shipping builds big cleanup / additions to *gz file support for amazon s3 * both, uploading to s3 * and allowing s3 to host the games there #jira UE-43002 HTML5 in Shipping fails downloading symbols files #jria UE-43001 HTML5 Shipping Projects fail looking for compressed files when "Compress files during shipping packaging" is not selected. Change 3367385 on 2017/03/28 by Allan.Bentham Display skylight serialization warning only when cooking for mobile platforms. #jira UE-42436 Change 3368583 on 2017/03/28 by Chris.Babcock Expose JAVA_HOME setting in Android SDK project settings on Mac #jira UE-43418 #ue4 #android Change 3368803 on 2017/03/28 by Chris.Babcock Fix features requested in manifest for "Daydream and Cardboard" mode #jira UE-43314 #ue4 #android Change 3369087 on 2017/03/28 by Jack.Porter Changed tooltip and added supported devices in paretheses for Android Mobile Deferred / ES31+AEP #jira UE-42438 Change 3369372 on 2017/03/29 by Allan.Bentham Fix disappearing meshes when r.mobile.allowdistancefieldshadows is disabled. #jira UE-43366 Change 3369381 on 2017/03/29 by Jack.Porter Show warnings when mobile shader permutations required for rendering are disbaled Made FReadOnlyCVARCache a singleton and added mobile CVars, used for MobileBasePassRendering. #jira UE-43050 Change 3369430 on 2017/03/29 by Allan.Bentham fix CIS build Change 3369740 on 2017/03/29 by Allan.Bentham Added Android option to enable builds with hidden symbol visbility by default. (bBuildWithHiddenSymbolVisibility) Android links with -gc-sections to remove unused code/data Add JNI_METHOD for java accessible native functions, fixed up existing JNI functions to use macro. Add support for map file generation with android. Add 'bBuildWithHiddenSymbolVisibility' to AndroidPlatform.HasDefaultBuildConfig() bBuildWithHiddenSymbolVisibility defaults to false in BaseEngine.ini #jira UEMOB-168 Change 3369975 on 2017/03/29 by Nick.Shin HTML5 - AWS S3 shareable link for shipping builds corrected #jira UE-43379 Amazon S3 Shareable link does not generate correct filepath. Change 3369998 on 2017/03/29 by Nick.Shin HTML5 python build scripts PR: https://github.com/Mozilla-Games/UnrealEngine/commit/1cb836d43c3015c6ca0fdd039072bb6c5c273db3 #jira none Change 3370214 on 2017/03/29 by Nick.Shin HTML5 - default bUseFixedTimeStep to false... #jira UE-43380 - Default HTML5 gamespeed is faster than equivalent platforms Change 3370762 on 2017/03/29 by Chris.Babcock Fixes to new keyboard for Android - Ensure the local scope ScreenRect passed into OnVirtualKeyboardShown in AndroidJNI is captured by value instead of by reference. - Moved ShowVirtualKeyboardInput's bKeyboardShowing early-out checks into the UI thread task. This allows the keyboard to continue showing when changing focus between multiple EditableTextBox widgets. #ue4 #android Change 3371344 on 2017/03/30 by Jack.Porter Fixed issue where Vulkan screenshot R/B channels were reversed on Android #jira UE-43479 Change 3372926 on 2017/03/30 by Peter.Sauerbrei start the process of sunsetting 32-bit and GLES2 on iOS #jira UE-42266 Change 3372970 on 2017/03/30 by Nick.Shin HTML5 - 1.37.9 emscripten: wasm & webgl2 support - windows toolchain #jira UEMOB-263 Switch [to] web assembly #jira UEMOB-201 Support ES3 / WebGL2 in HTML5 #rn Change 3372989 on 2017/03/30 by Peter.Sauerbrei fix for Xcode 8.3 build with 32-bit Change 3373007 on 2017/03/30 by Peter.Sauerbrei fix for crash when online subsystem is disabled on IOS Change 3373108 on 2017/03/30 by Nick.Shin HTML5 - 1.37.9 emscripten: wasm & webgl2 support - 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 #rn Change 3373163 on 2017/03/30 by Nick.Shin HTML5 - 1.37.9 emscripten: wasm & webgl2 support - OSX toolchain #jira UEMOB-263 Switch [to] web assembly #jira UEMOB-201 Support ES3 / WebGL2 in HTML5 #rn Change 3373169 on 2017/03/30 by Nick.Shin HTML5 - 1.37.9 emscripten: wasm & webgl2 support license file updated #jira UEMOB-263 Switch [to] web assembly #jira UEMOB-201 Support ES3 / WebGL2 in HTML5 #rnx Change 3373287 on 2017/03/30 by Nick.Shin HTML5 - 1.36.11 emscripten - remove old SDK #jira none #rnx Change 3373289 on 2017/03/30 by Nick.Shin HTML5 - 1.37.9 emscripten: wasm & webgl2 support - Linux toolchain #jira UEMOB-263 Switch [to] web assembly #jira UEMOB-201 Support ES3 / WebGL2 in HTML5 #rn Change 3373595 on 2017/03/30 by Chris.Babcock Reenable GooglePlay for ARM64 now that it doesn't crash #jira UE-36198 #ue4 #android Change 3373606 on 2017/03/30 by Chris.Babcock Submitting Allan's shelved EXT_shader_framebuffer_fetch fix #ue4 #android Change 3375456 on 2017/03/31 by Chris.Babcock Add missing keycodes for Android keyboard (@ and #) #jira WEX-5777 #ue4 #android Change 3376309 on 2017/04/03 by Allan.Bentham Fix overflow issues with mobile DoF. Change 3377041 on 2017/04/03 by Will.Fissler Adding Testbed content for PlatformShowcase. Change 3377582 on 2017/04/03 by Alicia.Cano adding back in GET_ACCOUNTS permission as it is required for Reset Achievements #jira: UE-43265 #android #rb: Chris.Babcock Change 3377643 on 2017/04/03 by Peter.Sauerbrei fix for memory leak in MallocBinned #jira UE-43008 Change 3378033 on 2017/04/04 by Nick.Shin HTML5 - 1.37.9 emscripten: wasm & webgl2 support - ThirdParty libs compiled with new toolchain with wasm and webgl2 support #jira UEMOB-263 Switch [to] web assembly #jira UEMOB-201 Support ES3 / WebGL2 in HTML5 #rn Change 3378034 on 2017/04/04 by Nick.Shin HTML5 - 1.37.9 emscripten: wasm & webgl2 support - ThirdParty build scripts #jira UEMOB-263 Switch [to] web assembly #jira UEMOB-201 Support ES3 / WebGL2 in HTML5 Change 3378035 on 2017/04/04 by Nick.Shin HTML5 - Update GameX template to make it work with trunk Emscripten PR https://github.com/Mozilla-Games/UnrealEngine/commit/dc2b26f452948f8ee07178bc3e8742af80d8919a#commitcomment-21454978 #jira none #rn Change 3378044 on 2017/04/04 by Nick.Shin HTML5 harfbuzz - double checking recompiled with NO multithreading wasm currently does not support pthreads *** THIS IS STILL WIP *** checking in to match 3rd party libs compiled configuration #jira UE-28588 - Build HarfBuzz for HTML5 #rnx Change 3378264 on 2017/04/04 by Allan.Bentham Fix crash when using consolas font on android sdk 24 #jira UE-43464 Change 3379097 on 2017/04/04 by Nick.Shin CIS HTML5 build warning fix #jria none #rnx Change 3379333 on 2017/04/04 by Chris.Babcock Prevent inserting extra permissions into manifest multiple times #jira UE-43583 #ue4 #android Change 3380870 on 2017/04/05 by Chris.Babcock Fix merge issue Change 3380898 on 2017/04/05 by Chris.Babcock Fixed again Change 3381443 on 2017/04/05 by Chris.Babcock Fix for GearVR non-unity build #ue4 #android Change 3381941 on 2017/04/05 by Chris.Babcock Fix HTTPChunkInstaller texture format checks and missing #define warning #jira UE-43706 #ue4 #android Change 3382056 on 2017/04/05 by Chris.Babcock Updates to Android AARs needed for Facebook plugin Change 3382097 on 2017/04/05 by Chris.Babcock Disable java console cmd receiver only in shipping builds #jira UE-43710 #ue4 #android Change 3382497 on 2017/04/06 by Allan.Bentham Fix Fortnite Cooked Server crashes when joining game from lobby. #jira UE-43695 Change 3383227 on 2017/04/06 by Will.Fissler Reverted case sensitive change, from yesterday, and implemented a pragma instead. #jira UE-41313 [CL 3383473 by Jack Porter in Main branch]
2017-04-06 16:13:17 -04:00
CopyFileFromPhone(Manifest, "/Library/Caches/" + Path.GetFileName(Filename), 1024 * 1024);
}
return true;
}
catch (Exception ex)
{
WriteProgressLine("Failed to transfer a file, extended error is '{0}'", 100, ex.Message);
return false;
}
}
else
{
string SafeDeviceName = MobileDeviceInstance.SanitizePathNoFilename(DeviceName);
foreach (string Filename in Files)
{
// string BaseFolder = Path.GetDirectoryName(Filename);
string Manifest = Path.GetDirectoryName (Filename) + "\\" + SafeDeviceName + "_" + Path.GetFileName (Filename);
Copying //UE4/Release-Staging-4.12 to //UE4/Main (Source: //UE4/Release-4.12 @ 2992821) ========================== MAJOR FEATURES + CHANGES ========================== Change 2992821 on 2016/05/27 by Max.Chen Subway Sequencer: Add "Assets" and "Character" to the list of additional directories to cook. #jira UE-31279 #lockdown Cristina.Riveron Change 2992761 on 2016/05/27 by Max.Chen Add assets from "Directories to Always Cook". #jira UE-31279 #lockdown Cristina.Riveron Change 2992371 on 2016/05/26 by Dmitry.Rekman Fix GUBP Tools node (UE-31378). #jira UE-31378 #lockdown Josh.Adams Change 2992279 on 2016/05/26 by Dmitry.Rekman One more fix for UAT compilation failure (UE-31312). - Make EnvVarsToXML target framework v4.5. #lockdown Josh.Adams #jira UE-31312 Change 2992060 on 2016/05/26 by Josh.Adams - Reset PVRTC compression quality to default, so cooks don't take forever for IOS. We shipped with PVRTC Quality 4 for the App Store version. This is set in the Cooker Settings in the Project Settings window. #lockdown cristina.riveron #jira UE-31373 Change 2992009 on 2016/05/26 by Dmitry.Rekman Fix packaging on Linux (UE-31312). - System.Xml was spelled as System.XML. #jira UE-31312 #lockdown Josh.Adams Change 2991784 on 2016/05/26 by Martin.Wilson Fix for RecalcRequiredBones crashing when there is no lod data #jira UE-30028 #lockdown cristina.riveron Change 2991744 on 2016/05/26 by Dmitry.Rekman Fix Linux code project generation (UE-31322). - Also fixes UE-31318 (not reopening when creating BP project). - Apparently, we cannot reset all signals to default, this makes posix_spawn() fail after fork (child exits with 127). - Added logging of child's return code. #lockdown Josh.Adams #jira UE-31322 #jira UE-31318 Change 2991448 on 2016/05/26 by Nick.Darnell Disabling the logging in the git module that was added from the previous commit. #jira UE-30781 #lockdown cristina.riveron Change 2991352 on 2016/05/26 by Max.Chen Subway Sequencer: Add "Sequencer" to the list of additional directories to cook. #jira UE-31279 #lockdown Cristina.Riveron Change 2991121 on 2016/05/26 by Ben.Marsh Fix ShooterGame warnings on XboxOne. #lockdown cristina.riveron Change 2991097 on 2016/05/26 by Nick.Darnell PR #2386: Git Plugin: fix initialization of a new repository broken by new "migrate" support 4.12 (Contributed by SRombauts) #jira UE-30781 #lockdown cristina.riveron Change 2991095 on 2016/05/26 by Dmitry.Rekman Fix packaging on Linux (UE-31312). - Excludes UAT modules unsupported on the platform (e.g. TVOS). #jira UE-31312 #lockdown Josh.Adams Change 2990806 on 2016/05/25 by Michael.Gay Last minute adjustments to SubwaySequencer shots. Fixed Fade track on master and moved Event tracks to shots. #jira UE-30804 #lockdown Cristina.Riveron Change 2990739 on 2016/05/25 by Dan.Oconnor Fix for transaction buffer failing to restore preview widget trees, these are regenerated post undo/redo and should not be tagged as transactional #jira UE-31155 #lockdown cristina.riveron Change 2990657 on 2016/05/25 by Dmitry.Rekman Fix crash in mono when invoked by the engine (UE-31312). - Reset signal mask on spawning a subprocess. We mask out all signals except explicitly handled, which does not play well with mono. - See also https://answers.unrealengine.com/questions/420161/mono-process-crash.html #jira UE-31312 #lockdown Josh.Adams Change 2990564 on 2016/05/25 by Marc.Audy Undo 4.12 change to DetachFromParent when AttachTo is called with a null parent. #jira UE-00000 #lockdown Cristina.Riveron Change 2990429 on 2016/05/25 by Max.Chen Movie Capture: Fix initialization order warning. Follow up to CL #2990314 #jira UE-31285 #lockdown Nick.Penwarden Change 2990338 on 2016/05/25 by Zabir.Hoque TEMP Fix: On server enqued render thread work is dropped. So on server release Reflection capture resouce immediately instead of trying to defer enque. #jira UE-28838 #lockdown cristina.riveron Change 2990314 on 2016/05/25 by Max.Chen Movie Capture: Flush the viewport when grabbing frames. This fixes more frame accuracy issues. #jira UE-31285 #lockdown Nick.Penwarden Change 2990249 on 2016/05/25 by Max.Chen Sequencer: Fix tick prerequisites getting removed on stop and not re-set on play. This fixes frame accuracies when rendering in a separate process. #jira UE-31285 #lockdown Nick.Penwarden Change 2990243 on 2016/05/25 by Lukasz.Furman Fixed behavior tree observers not being applied correctly #jira UE-31307 #lockdown Cristina.Riveron Change 2990206 on 2016/05/25 by Daniel.Lamb Make sure min number of threads in the large thread pool is at least 2. #jira UE-31253 #lockdown Cristina.Riveron Change 2990182 on 2016/05/25 by Max.Chen Sequencer: Fix null ptr crash on trying to record from current player. This is a regression from the off by one frame fixes. #jira UE-31304 #lockdown Nick.Penwarden Change 2990124 on 2016/05/25 by Chris.Bunner Avoid creating additional inline code fragment casting matching uniform types. #lockdown cristina.riveron #jira UE-29089 Change 2989978 on 2016/05/25 by Uriel.Doyon Merged fix for issue with resolution scale in PostProcessVisualizeComplexity #jira UE-29473 #lockdown cristina.riveron Change 2989970 on 2016/05/25 by Taizyd.Korambayil #lockdown cristina.riveron #jira UE-31293 Added TestMaps Folder and moved all Non-Relevant Maps into it. Change 2989911 on 2016/05/25 by Chris.Babcock Remove warning about Android debugging since CodeWorks for Android Nsight supports VS2015 #jira UE-31292 #ue4 #android #lockdown cristina.riveron Change 2989898 on 2016/05/25 by Robert.Manuszewski Splitting inline shader registration from serialization. Serialization can happen on the async loading thread but registration should only happen on the game thread. Removed a lot of critical section locks. Reimplementing CL #2952596 #jira UE-29245 #lockdown Nick.Penwarden Change 2989849 on 2016/05/25 by Max.Preussner Sequencer: Fixed Crash when playing UMG sequence with audio tracks (UE-31289) #jira UE-31289 #lockdown nick.penwarden Change 2989793 on 2016/05/25 by Max.Chen Sequencer: Change automated capture so it captures in response to a sequence update to fix off by one frames. #jira UE-30755 #lockdown Nick.Penwarden Change 2989792 on 2016/05/25 by Max.Chen Sequencer: Put back setting MaxFPS when forcing fixed frame interval playback to fix motion blur in editor. #jira UE-30755 #lockdown Nick.Penwarden Change 2989774 on 2016/05/25 by Mike.Beach Mirroring CL 2946932 Guarding against invalid EdGraphPins (ones that have been moved to the transient package) when constructing the widget - prevents a crash that we've been unable to repro or determine the cause of (turns it instead into an ensure, so we can collect more contextual information on the issue). #lockdown cristina.riveron #jira UE-26998 Change 2989765 on 2016/05/25 by Olaf.Piesche Moivng CL 2967970 from Dev-Rendering - fix for #jira UE-27297 #lockdown nick.penwarden Change 2989481 on 2016/05/25 by Marc.Audy Properly route AttachToComponent to SetupAttachment if called from the constructor #jira UE-31055 #lockdown Cristina.Riveron Change 2989369 on 2016/05/25 by Robert.Manuszewski Don't create asset import data for archetype TileMap. Propagate component flags to TileMap if the component is an archetype. #jira UE-31033 #lockdown Nick.Penwarden Change 2988975 on 2016/05/24 by Max.Preussner Sequencer: Fixed Cinematic Camera look at tool crashes on auto save (UE-31195) #jira UE-31195 #lockdown nick.penwarden Change 2988834 on 2016/05/24 by Max.Chen Movie Capture: Crash fix - Protect against null encoding filter. #jira UE-31233 #lockdown Nick.Penwarden Change 2988764 on 2016/05/24 by Peter.Sauerbrei fix for exception when deploying to tvOS from PC #jira UE-30318 #lockdown cristina.riveron Change 2988540 on 2016/05/24 by Jeff.Campeau Disable incompatible OpenVR for Windows XP builds. Gut SteamVR and SteamVRController for Windows XP builds (rely on OpenVR). #lockdown Nick.Penwarden #jira UE-30823 Change 2988491 on 2016/05/24 by Zak.Middleton #ue4 - (4.12) Remove version check from serialization logic that fixes up stale transient properties. They would still loaded for archetypes and we always want to prevent that in the future. #lockdown cristina.riveron #jira UE-30625 Change 2988427 on 2016/05/24 by Aaron.McLeran #jira UE-31028 Stop Quietest Concurrency does not remove the quietest sound Fix is to not re-add the sound once its stopped due to max concurrency. #tests ran the QA test map that demonstrated the problem #lockdown cristina.riveron Change 2988391 on 2016/05/24 by Taizyd.Korambayil #lockdown cristina.riveron #jira UE-30301 Rebuilt Ligthing for all Content Example Maps Change 2988315 on 2016/05/24 by Allan.Bentham Re-enabled FLUTBlenderPS on vulkan devices. (it's required for protostar) #jira UE-31079 Change 2988227 on 2016/05/24 by Frank.Fella Sequencer - Add support for forcing editor and runtime evaluation to happen on exact fixed frame intervals. Updated the subway sequencer sample to work with these changes. Change missed in first checkin. #Jira UE-30755 Change 2988200 on 2016/05/24 by Robert.Manuszewski Assert if MaxObjectsInEditor or MaxObjectsInGame are too big and collide with EInternalObjectFlags #jira UE-31218 Change 2988181 on 2016/05/24 by Peter.Sauerbrei revert out the last fix and add more logging as I can't reproduce this bug #jira UE-30813 Change 2988140 on 2016/05/24 by Frank.Fella Sequencer - Add support for forcing editor and runtime evaluation to happen on exact fixed frame intervals. Updated the subway sequencer sample to work with these changes. #Jira UE-30755 Change 2988081 on 2016/05/24 by Jamie.Dale Better fix for UE-29651 that will also work with packages saved from a build without an engine version There was no version bump for the change to FFormatArgumentData, but VER_UE4_K2NODE_VAR_REFERENCEGUIDS was added at almost the same time so testing that should handle the vast majority of packages that we have internally, and will handle all external packages. #jira UE-29651 Change 2987964 on 2016/05/24 by Lee.Clark Fix empty ENV path when compiling PS4 targets. #jira UE-31210 Change 2987721 on 2016/05/23 by Dan.Oconnor Reworking node validation change done in 2910382 so that nodes that are going to spawn other nodes in the expansion step are still validated. #jira UE-31099 Change 2987696 on 2016/05/23 by Chris.Babcock Update AndroidWorks 1R1 to CodeWorks for Android 1R4 #jira UEPLAT-1312 #ue4 #android Change 2987624 on 2016/05/23 by Jeff.Campeau Fix a define protection for WinXP stack walking support. #jira UE-30823 Change 2987607 on 2016/05/23 by Jeff.Campeau Windows Stack Walk fixed to work with Windows XP. Use the ASCII calls where needed. Symbol server is unsupported and is disabled when building for Windows XP. #jira UE-30823 Change 2987593 on 2016/05/23 by Zak.Middleton #ue4 - (4.12) Reject old serialized values of UMovementComponent::UpdatedComponent and UpdatedPrimitive that were saved before those were marked transient. Mark UPawnMovementComponent::PawnOwner and UCharacterMovementComponent::CharacterOwner as transient, and similarly reject old saved values. #jira UE-30625 Change 2987548 on 2016/05/23 by Lukasz.Furman Moved newly added gameplay debugger's code out of perception component #jira UE-31090 Change 2987510 on 2016/05/23 by Lukasz.Furman Restored perception category in old gameplay debugger tool #jira UE-31090 Change 2987278 on 2016/05/23 by Ben.Marsh Rocket: Add Mac GenerateProjectFiles.sh script into installed engine distro. #jira UE-31109 Change 2987156 on 2016/05/23 by Chris.Babcock Added GoogleVR to InstalledEngineFilters.ini #jira UE-31186 #ue4 #android Change 2987129 on 2016/05/23 by Mieszko.Zielinski Fixed FNavigationFilterArea not zeroing its properties in default constuctor #UE4 #jira UE-31185 Change 2987100 on 2016/05/23 by Peter.Sauerbrei fix for crash in DeploymentServer when attempting to copy a file with a space in the path or name #jira UE-30813 Change 2987064 on 2016/05/23 by Dmitry.Rekman PR #2164: [Linux] Fix clang '&&' within '||' error (Contributed by slonopotamus) #jira UE-28537 Change 2987002 on 2016/05/23 by Aaron.McLeran #jira UE-31036 Sound volume does not change when moving past the Non Focus Azimuth range if set to greater than 90 degrees Fix was to remove the clamp on the dot-product #tests ran test map with focus factors greater than 90 degrees Change 2986880 on 2016/05/23 by Mark.Satterthwaite Fix UE-31124 due to bad array iteration logic - amazing that this hadn't been seen earlier. #jira UE-31124 Change 2986873 on 2016/05/23 by Lina.Halper #fix issue with morphtarget importings for LODs - this was caused by option not being set correctly #jira: UE-30955 #code review: Alexis.Matte Change 2986804 on 2016/05/23 by Taizyd.Korambayil #jira UE-31132 Added Missing Function to Blueprint. Change 2986801 on 2016/05/23 by Jamie.Dale SSearchBox will now only delay text changes while it has focus A text changed event when it doesn't have focus is usually triggered by code (rather than the user typing), so we need to process it immediately to avoid other operational ordering issues. #jira UE-31101 Change 2986793 on 2016/05/23 by Martin.Wilson Fix for morph curves not getting applied to meshes in cooked builds (smart names were not being corrected). (brought from dev-rendering 2983747) #Jira UE-31166 Change 2986772 on 2016/05/23 by Benn.Gallagher Fixed montage single node instances with negative rate scales only repeating the final section when looping #jira UE-31164 Change 2986766 on 2016/05/23 by Martin.Wilson Fix for preview not updating when tranform curve flags are changed. #Jira UE-31119 Change 2986569 on 2016/05/23 by Robert.Manuszewski Making hang detection disabled bu default and an opt-in for games. #jira UE-31151 Change 2986564 on 2016/05/23 by Martin.Wilson Fix for being able to set montages on an anim track segment. #jira UE-31039 Change 2986205 on 2016/05/21 by Zabir.Hoque Add new instrumentation to bucketize why we are seeing device lost so often. #jira UE-20434 Change 2986071 on 2016/05/20 by Dan.Oconnor Fix for TRASHCLASS sneaking into property list when recompiling a blueprint that has a dependency that is dirty and requires bytecode recompilation of its dependencies. Make sure that the dirty blueprint itself is part of the bytecode recompilation process and make sure that blueprints compiled in this way are compiled after their parent classes #jira UE-30411 Change 2986068 on 2016/05/20 by Dan.Oconnor Fix for blueprint change/compile delegates leaking #jira UE-31118 Change 2986044 on 2016/05/20 by Zabir.Hoque Make OpenGL VB allocation support alignment (16 by default). Future work should expose this up through the RHI layers. #CodeReview: Olaf.Piesche, Simon.Tovey #jira UE-29231 Change 2985934 on 2016/05/20 by Mark.Satterthwaite Further changes to ensure that UE-30710 really is fixed while also not live-leaking memory in MetalRHI. #jira UE-30710 Change 2985852 on 2016/05/20 by Max.Chen Subway Sequencer: Remove level sequence editor from plugin list since it's on by default. #jira UE-31106 Change 2985821 on 2016/05/20 by Phillip.Kavan [UE-22874] Fix UObject duplication to preserve default subobjects created by the native class ctor when the root object is duplicated. change summary: - added FObjectDuplicationHelperMethods::GatherDefaultSubobjectsForDuplication() - modified StaticDuplicateObjectEx() to map default subobjects created in the duplicated root object's ctor before entering the serialization pass. this preserves those instances instead of causing StaticConstructObject to destroy/recreate them during serialization as part of the UObject reference duplication logic. #jira UE-22874 Change 2985750 on 2016/05/20 by Michael.Gay Default Game map set to SubwaySequencer_P #jira UE-31108 Change 2985660 on 2016/05/20 by Michael.Gay Removing unused track animation #jira UE-30804 Change 2985349 on 2016/05/20 by Dan.Oconnor Fix for crash that occurs when repeatedly pasting and undoing an object with subobjects. We were not clearing the internal flags when recycling an object #jira UE-30954 Change 2985346 on 2016/05/20 by Leslie.Nivison Updating 4.12 credit #jira UEPROD-820 Change 2985297 on 2016/05/20 by Jamie.Dale Fixed VS version detection It was checking the file version (which is 12), rather than the VS version (which is 12 for 2013, and 14 for 2015). #jira UE-30977 Change 2985233 on 2016/05/20 by Gareth.Martin Fixed crash when building lighting when using "Use Landscape Lightmap" on landscape grass #jira UE-30975 Change 2985184 on 2016/05/20 by Chris.Babcock Move audio warning to show proper error result code #jira UE-31085 #ue4 #android Change 2985183 on 2016/05/20 by Chad.Taylor GoogleVR disabled by default #jira UE-30921 Change 2985145 on 2016/05/20 by Jack.Porter Fix for precision issue causing blocky landscape LOD on iPad Pro and several other iOS devices #jira UE-24792 Change 2985124 on 2016/05/20 by Alex.Delesky #jira UE-29794 If the editor cannot find the SSL DLLs when enabling the Perforce source control plugin, it will now display a warning in the Source Control log instead of crashing. Change 2985066 on 2016/05/20 by Lee.Clark Fix r.SelectiveBasePassOutputs so that it defaults to off #jira UE-30133 Change 2985063 on 2016/05/20 by Allan.Bentham Fix for modulated shadow precision issues on low end android hardware. #jira UE-29083 Change 2985061 on 2016/05/20 by Max.Chen Viewport: Fix crash when the viewport widget is null. #jira UE-31050 Change 2985059 on 2016/05/20 by Rolando.Caloca UE4.12 - Workaround for crash trying to track down other crash #jira UE-30875 Change 2984876 on 2016/05/20 by Richard.TalbotWatkin Made SceneOutliner visibility code safer, to avoid a potential crash. #jira UE-30831 - [CrashReport] UE4Editor_SceneOutliner!SceneOutliner::FGetVisibilityVisitor::RecurseChildren() [sceneoutlinergutter.cpp:24] Change 2984873 on 2016/05/20 by Richard.TalbotWatkin Clipped selection box bounds in Matinee viewport to prevent crash when reading outside of the viewport area. #jira UE-30968 - Ctrl+Alt selection drag inside to outside of Matinee window will crash the editor Change 2984844 on 2016/05/20 by Matthew.Griffin Fixing compile error in mono games Change 2984825 on 2016/05/20 by Robert.Manuszewski When the application crashes becaused the GPU driver was disabled, make sure the CrashReporterClient window gets the updated screen metrics after the driver is restored. #jira UE-30556 Change 2984693 on 2016/05/20 by Phillip.Kavan [UE-30495] Fix BP editor crash on component rename following undo of component add action. change summary: - modified USimpleConstructionScript::CreateNode() to create the initial component template object in the transient package, so that subsequent undo actions restore to that state rather than to a valid BPGC-owned state. - modified StaticConstructObject_Internal() to restore the inclusion of RF_ArchetypeObject-flagged objects in the logic that sets new objects to 'PendingKill' state before recording them into the transaction buffer. this ensures that they can be GC'd when construction is undone in the editor. Tested against sample/repro steps in UE-21240 to ensure that it no longer crashes even with the original change from CL# 2832225 reverted (that fix has since been superceded). #jira UE-30495 Change 2984684 on 2016/05/20 by Phillip.Kavan [UE-30852] Fix BPGC custom property list delta generation & post-construct initialization/serialization to properly handle array values that differ from default in length but not inner element values. change summary: - modified UBlueprintGeneratedClass::BuildCustomPropertyListForPostConstruction()/BuildCustomArrayPropertyListForPostConstruction() to return a boolean value indicating whether or not a delta value was detected. - modified UBlueprintGeneratedClass::BuildCustomArrayPropertyListForPostConstruction() and FBlueprintEditorUtils::BuildComponentInstancingData() to ensure that array properties are emitted to delta property lists if the size differs from default, even if none of the elements actually differ from the default value - removed the ensure() for the array property case in FObjectInitializer::InitPropertiesFromCustomList(), as it is now a valid case to encounter an array property delta value without any actual delta element value overrides following it in the custom property stream - restored the bCanUsePostConstructLink optimization for non-native class types in FObjectInitializer::InitProperties() - modified UArrayProperty::SerializeItem() for the ArUseCustomPropertyList case to not empty the array when a resize is needed on load (read) - this fixes an edge case in the cooked BP component data stream when array size differed from default but only one or more of the inner values actually differed, in which case all the array slots were being reset (constructed/zeroed) but only the overridden value was being serialized (loaded) from the template data stream #jira UE-30852 Change 2984651 on 2016/05/19 by Zabir.Hoque Forcing GoogleVR plugin to disabled by default since its causing even non HDM machines to render split foveated viewports. #CodeReview: Chad.Taylor, Nick.Whiting #jira UE-30921 Change 2984636 on 2016/05/19 by Zabir.Hoque Explicitly store the cubemap resolution in encoded reflection data. #CodeReview Daniel.Wright, Marcus.Wassmer #jira UE-30341 Change 2984454 on 2016/05/19 by Rolando.Caloca UE4.12 - Fix for vulkan failing to load shader Integration mirroring changelist 2984432 #jira UE-28140 Change 2984452 on 2016/05/19 by Marcus.Wassmer #jira UE-31054 Remove autocompletion for ToggleRHIThread and ShowMaterialDrawEvents as they no longer do anything Change 2984415 on 2016/05/19 by Dan.Oconnor Fix for crash when we fail to spawn the preview actor because the desired class is deprecated #jira UE-31027 Change 2984376 on 2016/05/19 by Dan.Oconnor Fix for regression in GetClassDefaults - we were not handling the 'None' case #jira UE-31034 Change 2984316 on 2016/05/19 by Aaron.McLeran #jira UE-31049 Updating the Oculus Audio SDK to vs 1.02 #tests Ran updated SDK in several test maps, confirmed HRTF spatialization is working. Change 2984315 on 2016/05/19 by Lina.Halper Fix issue with importing morphtarget LOD when it's missing between #jira: UE-30949 Change 2984237 on 2016/05/19 by Dan.Oconnor Fix for ensure/possible stale memory access in UpdateOverlaps #jira UE-30919 Change 2984170 on 2016/05/19 by Max.Chen Movie Capture: Another pass at texture streaming fix for movie capture. #jira UE-30986 Change 2984134 on 2016/05/19 by Chad.Taylor Mac compiler warning fix #jira UE-30921 Change 2983903 on 2016/05/19 by Taizyd.Korambayil #jira UE-30562 Replaced cube With BSP for Floor Change 2983840 on 2016/05/19 by Taizyd.Korambayil #jira UE-30979 Fixed Typo in one of the Stands Change 2983662 on 2016/05/19 by Ben.Marsh GitHub: Add an exception to allow GoogleVR files to be mirrored to GitHub Change 2983653 on 2016/05/19 by Chris.Bunner Modifed previous change to fixup incorrect ensures. #jira UE-30877 Change 2983599 on 2016/05/19 by Chris.Bunner Added ensure and null ptr check to canvas flush. #jira UE-30877 Change 2983596 on 2016/05/19 by Chad.Taylor FluffyBunny #jira UE-30921 Change 2983534 on 2016/05/19 by Brian.Karis 4.12 fix per pixel translucency #jira UE-30902 Change 2983530 on 2016/05/19 by Chris.Babcock Broadcast EMediaEvent::MediaOpened when media opened successfully #jira UE-31006 #ue4 #android Change 2983427 on 2016/05/19 by Richard.TalbotWatkin Conflated "Import" and "Import Scene" in the File menu; the new action is called "Import Into Level". Limited the allowed file types to .t3d and .fbx. #jira UE-30891 - CRASH: Editor crashes when Importing Actors via File > Import Change 2983386 on 2016/05/19 by Michael.Gay minor last tweaks #jira UE-30804 Change 2983280 on 2016/05/19 by Gil.Gribb UE4 - Fixed crash in FHierarchicalStaticMeshSceneProxy related to reflection captures and foliage. #jira UE-30837 Change 2983079 on 2016/05/18 by Max.Chen Movie Capture: Fix so that texture streaming option for movie capture is set when capturing in editor. #jira UE-30986 Change 2983078 on 2016/05/18 by Dmitriy.Dyomin Added more logging to track UE-30878 #jira UE-30878 Change 2983067 on 2016/05/18 by Dmitriy.Dyomin Fixed: Mobile HDR Path doesn't work on GearVR #jira UE-11846 Change 2983049 on 2016/05/18 by Max.Chen Movie Capture: Fix crash on movie rendering when in HDR mode. #jira UE-30978 Change 2982825 on 2016/05/18 by Mark.Satterthwaite Correctly wait for the dispatch semaphore when clearing the Metal resource free lists. #jira UE-30710 Change 2982697 on 2016/05/18 by Marc.Audy Fix Orion DataProvider use of AddReferencedObjects in light of CL# 2982607 #jira UE-00000 Change 2982546 on 2016/05/18 by Taizyd.Korambayil #jira UE-30862 resaved A bunc hof assets to Fix to attempt to fix Build Warnings Change 2982533 on 2016/05/18 by Daniel.Lamb When you package if you haven't saved the changes will not be reflected in the game. #jira UE-30904 Change 2982415 on 2016/05/18 by Marc.Audy Bring forgotten 4.11 CL# 2928377 to 4.12 Ensure that the compiler will throw an error when passing a non-UObject* TArray to AddReferencedObjects #jira UE-28933 Change 2982358 on 2016/05/18 by Taizyd.Korambayil #jira UE-30546 Updated TP_VehicleAdvPawn Chase Camera Location Change 2982280 on 2016/05/18 by Martin.Mittring UE-26409 Crash when Light Propagation Volume Plugin is disabled on a Project #jira:UE-26409 Change 2982229 on 2016/05/18 by Max.Chen Sequencer: Add tick prerequisites so that the level sequence actor ticks before all of the actors that it controls. This fixes some inconsistencies in the movie rendered frames not matching what's in editor. #jira UE-30755 Change 2982080 on 2016/05/18 by Max.Chen Sequence Recorder: Fix crash when component class to record is null. #jira UE-30944 Change 2982041 on 2016/05/18 by Marcus.Wassmer Protect against crashes reading from a null texture. #jira UE-30834 Change 2981915 on 2016/05/18 by Allan.Bentham Do not mosaic encode for modulate blend operations. Fixes dark 'halos' around mod shadows. #jira UE-29083 Change 2981911 on 2016/05/18 by michael.gay Set framing in sequencer, set start to 200 #jira UE-30633 Change 2981904 on 2016/05/18 by Chase.McAllister #jira UE-30943 Removing unused asset to fix DDC compiling bug Change 2981894 on 2016/05/18 by Michael.Gay removed old cameras, changed start frame to remove black at head of sequence #jira UE-30633 Change 2981827 on 2016/05/18 by Gareth.Martin Fixed crash when entering landscape mode while a landscape is selected while simulating - Landscape infos no longer get created for PIE/Simulate landscapes (they were empty anyway) #jira UE-30917 Change 2981725 on 2016/05/18 by Keith.Judge Xbox One - Fix issues with DFAO/DF Shadowing. Problems were in RHIUpdateTexture3D(). Needed to ensure temp texture had the correct bind flags, etc, and also use the graphics context rather than the DMA context to do the copying, as for some reason the DMA engine corrupts some pixels of the distance field atlas texture. #jira UE-27591 Change 2981466 on 2016/05/17 by Max.Chen Merge from Chris Bunner from Dev-SequencerGDC - Frame state fixes when Sequencer is paused; No velocity in AA, Clamp motion blur scale, Clamp to scatter blur method. #jira UE-30576 Change 2981403 on 2016/05/17 by Dan.Oconnor Fix for overzealous filtering of classes with Within markup #jira UE-29878 Change 2981342 on 2016/05/17 by Dan.Oconnor Removing overzealous check. In Dev-BP this has already been downgraded to an ensure, but no reason to ensure now that we understand why it happens. #jira UE-30792 Change 2981318 on 2016/05/17 by Max.Preussner Sequencer: Fixed crash when scrubbing attached audio tracks; reduced nesting (UE-30923) #jira: UE-30923 Change 2981221 on 2016/05/17 by Dan.Oconnor Preventing spawning components with 'Within' markup specified, it is unsupported by the SCSEditor and Core UObject logic at this time. Likely logic is CoreUObject needs to avoid type checking for RF_ArchetypeObject instances and the SCSEditor needs to be more consistent about using that flag on its template objects #jira UE-29878 Change 2981169 on 2016/05/17 by Marc.Audy Gracefully handle invalid GameSingleton class name in ini file Remove unused DefaultPreviewPawnClass and ClassName from Engine #jira UE-30829 Change 2981104 on 2016/05/17 by Mieszko.Zielinski Made AISenses not send information to listeners that are not registered for given sense #UE4 #jira UE-29939 Change 2981086 on 2016/05/17 by Taizyd.Korambayil #jira UE-30568 Added a check to make sure index being accessed was valid (BP_DemoRoom) Change 2980755 on 2016/05/17 by Taizyd.Korambayil #jira UE-30706 Set material to use Translucent Blend Change 2980753 on 2016/05/17 by Jon.Nabozny Initialize FBox used to store result for CalculateQuatACF96Bounds (bump from //UE4/Dev-Framework). #JIRA UE-30846 Change 2980682 on 2016/05/17 by Taizyd.Korambayil #jira UE-30570, UE-30575 Corrected Some Spellings Change 2980559 on 2016/05/17 by Mieszko.Zielinski Changed UNavigationSystem.AgentToNavDataMap to store weak object pointers rather than raw painters #UE4 This should make it immune to navigation data beging destroyed and not removed from AgentToNavDataMap. #jira UE-30836 Change 2980504 on 2016/05/17 by Daniel.Wright Integrate - Movable skylight now matches stationary for subsurface shading models * Two sided was broken in 4.11, Subsurface had never been handled #jira UE-30855 Change 2980467 on 2016/05/17 by Jamie.Dale Added some checks to avoid temporary worlds being added as favorites #jira UE-30613 Change 2980379 on 2016/05/17 by Jurre.deBaare Fix for static mesh merging, little too eager with changes. #jira UE-30808 Change 2980373 on 2016/05/17 by Gareth.Martin Fixed shader compile errors when applying a speedtree material to a landscape spline #jira UE-25820 Change 2980318 on 2016/05/17 by Gareth.Martin Fixed crash when calling EditorApplySpline with a null spline component Also stopped it doing anything in PIE (it's for blutilities, not runtime) #jira UE-30830 Change 2980300 on 2016/05/17 by Marc.Audy Treat Unreachable components the same as BeginDestroyed for endplay/cleanup purposes #jira UE-30839 Change 2980298 on 2016/05/17 by Gareth.Martin Fixed crash when loading landscape projects that used tessellation #jira UE-30742 Change 2980296 on 2016/05/17 by Martin.Wilson Fix crash accessing sync names from a child anim bp #jira UE-30811 Change 2980289 on 2016/05/17 by Jurre.deBaare Fix for regression with merge actor tab #jira UE-30809 Change 2980272 on 2016/05/17 by Ori.Cohen Make sure that root components do not get attached to non root components in the same actor. Fixes crash in scene outliner and other weird issues. #JIRA UE-30876 Change 2980206 on 2016/05/17 by Keith.Judge Xbox One - Bit the bullet and rewrote the occlusion query buffer handling so that we're not reliant on a finite ring buffer. Instead, each query has a small buffer of its own. removing the dependency of ordering when reading back the results. This should save memory on smaller maps too! #jira UE-30581 #jira UEPLAT-623 Change 2980094 on 2016/05/17 by Matthew.Griffin Added OSVR dlls to InstalledEngineFilters.ini so that they are included in Launcher build even though the plugin is disabled by default #jira UE-30611 Change 2979935 on 2016/05/17 by Aaron.Herzog #jira UE-30619 updating owen sk mesh with proper morph Change 2979816 on 2016/05/16 by Chad.Taylor Fix to address a crash related to multiple player VR Preview #jira UE-20109 Change 2979744 on 2016/05/16 by Mike.Beach Disabling Blueprint spawning, InitProperties() optimization until we can figure out why it is not filling out array properties properly. #jira UE-30745 Change 2979743 on 2016/05/16 by Mike.Beach Mirroring CL 2977497 Clearing property nodes and cached read-addresses when changing the details view object (so any queued actions will not operate on invalid properties). #jira UE-26392 Change 2979544 on 2016/05/16 by Daniel.Wright Fixed crash with RTDF shadows when r.DistanceFieldAO was disabled #jira UE-26319 Change 2979477 on 2016/05/16 by michael.gay Remove errant Play Rate track. #jira UE-30633 Change 2979464 on 2016/05/16 by Mark.Satterthwaite Duplicate CL #2945444: Cache the Metal fallback depth-stencil surface for the canvas tile rendering so that we only ever keep one spare depth-stencil surface around. This costs us a little more permanent memory but reduces churn. #jira UE-30849 Change 2979441 on 2016/05/16 by Rolando.Caloca UE4.12 - vk - Fix quitting taking a long time #jira UE-28239 Change 2979315 on 2016/05/16 by Michael.Trepka Rollback //UE4/Release-4.12/Engine/Source/Programs/UnrealBuildTool/System/XcodeProject.cs to revision 1 #jira UE-28016 Change 2979304 on 2016/05/16 by Jamie.Dale Backing out some changes from CL# 2976673 These caused an issue with Slate hit-testing. The more correct fix here is to make the Slate Windows OS layer treat window positions as relative to the top-left of the window client area, rather than relative to the top-left of the window itself (which includes the OS border). This now matches what other platforms do. To this end, FWindowsWindow::Initialize, FWindowsWindow::MoveWindowTo, and FWindowsWindow::ReshapeWindow all now consider the given window position to be relative to the window client area, and will consistently adjust it to relative to the window before moving/creating the OS window. This only impacts windows with OS borders (aka, non-fullscreen and non-Slate drawn windows). #jira UE-30276 #jira UE-30677 #jira UE-30771 Change 2979077 on 2016/05/16 by Maciej.Mroz #jira UE-28536 Attached Project Crashes on Attempting to Play in Standalone merged from 2979069 Change 2979052 on 2016/05/16 by Chase.McAllister #jira UE-30789 Resaving Maps to fix project warning Change 2978984 on 2016/05/16 by Chase.McAllister #jira UE-30789 Resaving start video assests that contained empty engine version Change 2978806 on 2016/05/16 by Mieszko.Zielinski Fixed EQS tests' scoring equation value getting reset on load #UE4 #jira UE-30470 Change 2978670 on 2016/05/16 by Max.Preussner Media: Workaround for changing Media asset path can cause crash (UE-22691) #jira: UE-22691 Change 2978638 on 2016/05/16 by Michael.Gay Cleanup of old maps in SubwaySequencer project #jira UE-30633 Change 2978636 on 2016/05/16 by Jamie.Dale Added guard against a crash navigating through a menu #jira UE-30698 Change 2978611 on 2016/05/16 by Lee.Clark PS4 - Fix RenderTargetOutputFormat using the wrong output index for velocity rendering when using r.BasePassOutputsVelocity=True #jira UE-30133 Change 2978596 on 2016/05/16 by Allan.Bentham Extend iOS metal Z bias offset to all iOS (metal+gles) depth only shaders. #jira UE-27530 Change 2978566 on 2016/05/16 by Jamie.Dale Downgraded some checks to ensures and added more logging #jira UE-30613 Change 2978399 on 2016/05/16 by Keith.Judge Xbox One - Fix check() firing when we run out of occlusion buffer space. Also added occlusion query result caching (perf gain!). #jira UE-30581 Change 2978323 on 2016/05/16 by Jurre.deBaare Merge actor panel crashes when selecting a mesh component without static mesh #fix display 'No Static Mesh' when none is available #jira UE-30809 Change 2978322 on 2016/05/16 by Jurre.deBaare Issue with merging meshes resulting data saved across different LOD levels #fix use correct target LOD index for all source LODs #jira UE-30808 #lockdown Nick.Penwarden [CL 2999693 by Ben Marsh in Main branch]
2016-06-03 11:49:20 -04:00
WriteProgressLine("File to be written '{0}'", 100, Manifest);
File.WriteAllText (Manifest, "");
}
WriteProgressLine("Error: Failed to connect to bundle '{0}'", 100, BundleIdentifier);
return false;
}
}
/// <summary>
/// Returns the names of files in a specified directory
/// </summary>
/// <param name="path">The directory from which to retrieve the files.</param>
/// <returns>A <c>String</c> array of file names in the specified directory. Names are relative to the provided directory</returns>
public string[] GetFiles(string path)
{
return GetFiles(path, false);
}
public string[] GetFiles(string path, bool bIncludeDirs)
{
if (!IsConnected)
{
throw new Exception("Not connected to phone");
}
string full_path = FullPath(CurrentDirectory, path);
IntPtr hAFCDir = IntPtr.Zero;
if (MobileDevice.DeviceImpl.DirectoryOpen(AFCCommsHandle, full_path, ref hAFCDir) != 0)
{
throw new Exception("Path does not exist");
}
string buffer = null;
ArrayList paths = new ArrayList();
MobileDevice.DeviceImpl.DirectoryRead(AFCCommsHandle, hAFCDir, ref buffer);
while (buffer != null)
{
if (!IsDirectory(FullPath(full_path, buffer)))
{
paths.Add(buffer);
}
else
{
if (bIncludeDirs)
{
paths.Add(buffer + "/");
}
}
MobileDevice.DeviceImpl.DirectoryRead(AFCCommsHandle, hAFCDir, ref buffer);
}
MobileDevice.DeviceImpl.DirectoryClose(AFCCommsHandle, hAFCDir);
return (string[])paths.ToArray(typeof(string));
}
/// <summary>
/// Returns the FileInfo dictionary
/// </summary>
/// <param name="path">The file or directory for which to retrieve information.</param>
public Dictionary<string, string> GetFileInfo(string path)
{
Dictionary<string, string> ans = new Dictionary<string, string>();
TypedPtr<AFCDictionary> Data;
int ret = MobileDevice.DeviceImpl.FileInfoOpen(AFCCommsHandle, path, out Data);
if ((ret == 0) && (Data.Handle != IntPtr.Zero))
{
IntPtr pname;
IntPtr pvalue;
while (MobileDevice.DeviceImpl.KeyValueRead(Data, out pname, out pvalue) == 0 && pname != IntPtr.Zero && pvalue != IntPtr.Zero)
{
string name = Marshal.PtrToStringAnsi(pname);
string value = Marshal.PtrToStringAnsi(pvalue);
if ((name != null) && (value != null))
{
ans.Add(name, value);
}
else
{
break;
}
}
MobileDevice.DeviceImpl.KeyValueClose(Data);
}
return ans;
}
/// <summary>
/// Returns the st_ifmt of a path
/// </summary>
/// <param name="path">Path to query</param>
/// <returns>string representing value of st_ifmt</returns>
private string Get_st_ifmt(string path)
{
Dictionary<string, string> fi = GetFileInfo(path);
return fi["st_ifmt"];
}
/// <summary>
/// Returns the size and type of the specified file or directory.
/// </summary>
/// <param name="path">The file or directory for which to retrieve information.</param>
/// <param name="size">Returns the size of the specified file or directory</param>
/// <param name="directory">Returns <c>true</c> if the given path describes a directory, false if it is a file.</param>
public void GetFileInfo(string path, out ulong size, out bool directory)
{
Dictionary<string, string> fi = GetFileInfo(path);
size = fi.ContainsKey("st_size") ? System.UInt64.Parse(fi["st_size"]) : 0;
bool SLink = false;
directory = false;
if (fi.ContainsKey("st_ifmt"))
{
switch (fi["st_ifmt"])
{
case "S_IFDIR": directory = true; break;
case "S_IFLNK": SLink = true; break;
}
}
if (SLink)
{
// test for symbolic directory link
IntPtr hAFCDir = IntPtr.Zero;
if (directory = (MobileDevice.DeviceImpl.DirectoryOpen(AFCCommsHandle, path, ref hAFCDir) == 0))
{
MobileDevice.DeviceImpl.DirectoryClose(AFCCommsHandle, hAFCDir);
}
}
}
/// <summary>
/// Returns the size of the specified file or directory.
/// </summary>
/// <param name="path">The file or directory for which to obtain the size.</param>
/// <returns></returns>
public ulong FileSize(string path)
{
bool is_dir;
ulong size;
GetFileInfo(path, out size, out is_dir);
return size;
}
/// <summary>
/// Creates the directory specified in path
/// </summary>
/// <param name="path">The directory path to create</param>
/// <returns>true if directory was created</returns>
public bool CreateDirectory(string path)
{
return !(MobileDevice.DeviceImpl.DirectoryCreate(AFCCommsHandle, FullPath(CurrentDirectory, path)) != 0);
}
/// <summary>
/// Gets the names of subdirectories in a specified directory.
/// </summary>
/// <param name="path">The path for which an array of subdirectory names is returned.</param>
/// <returns>An array of type <c>String</c> containing the names of subdirectories in <c>path</c>.</returns>
public string[] GetDirectories(string path)
{
if (!IsConnected)
{
Reconnect();
if (!IsConnected)
{
throw new Exception("Not connected to phone");
}
}
IntPtr hAFCDir = IntPtr.Zero;
string full_path = FullPath(CurrentDirectory, path);
//full_path = "/private"; // bug test
int res = MobileDevice.DeviceImpl.DirectoryOpen(AFCCommsHandle, full_path, ref hAFCDir);
if (res != 0)
{
throw new Exception("Path does not exist: " + res.ToString());
}
string buffer = null;
ArrayList paths = new ArrayList();
MobileDevice.DeviceImpl.DirectoryRead(AFCCommsHandle, hAFCDir, ref buffer);
while (buffer != null)
{
if ((buffer != ".") && (buffer != "..") && IsDirectory(FullPath(full_path, buffer)))
{
paths.Add(buffer);
}
MobileDevice.DeviceImpl.DirectoryRead(AFCCommsHandle, hAFCDir, ref buffer);
}
MobileDevice.DeviceImpl.DirectoryClose(AFCCommsHandle, hAFCDir);
return (string[])paths.ToArray(typeof(string));
}
/// <summary>
/// Moves a file or a directory and its contents to a new location or renames a file or directory if the old and new parent path matches.
/// </summary>
/// <param name="sourceName">The path of the file or directory to move or rename.</param>
/// <param name="destName">The path to the new location for <c>sourceName</c>.</param>
/// <remarks>Files cannot be moved across filesystem boundaries.</remarks>
public bool Rename(string sourceName, string destName)
{
return MobileDevice.DeviceImpl.RenamePath(AFCCommsHandle,
FullPath(CurrentDirectory, sourceName),
FullPath(CurrentDirectory, destName)) == 0;
}
/// <summary>
/// Returns the root information for the specified path.
/// </summary>
/// <param name="path">The path of a file or directory.</param>
/// <returns>A string containing the root information for the specified path. </returns>
public string GetDirectoryRoot(string path)
{
return "/";
}
/// <summary>
/// Determines whether the given path refers to an existing file or directory on the phone.
/// </summary>
/// <param name="path">The path to test.</param>
/// <returns><c>true</c> if path refers to an existing file or directory, otherwise <c>false</c>.</returns>
public bool Exists(string path)
{
TypedPtr<AFCDictionary> data = IntPtr.Zero;
int ret = MobileDevice.DeviceImpl.FileInfoOpen(AFCCommsHandle, path, out data);
if (ret == 0)
{
MobileDevice.DeviceImpl.KeyValueClose(data);
}
return ret == 0;
}
/// <summary>
/// Determines whether the given path refers to an existing directory on the phone.
/// </summary>
/// <param name="path">The path to test.</param>
/// <returns><c>true</c> if path refers to an existing directory or is a symbolic link to one, otherwise <c>false</c>.</returns>
public bool IsDirectory(string path)
{
bool is_dir;
ulong size;
GetFileInfo(path, out size, out is_dir);
return is_dir;
}
/// <summary>
/// Test if path represents a regular file
/// </summary>
/// <param name="path">path to query</param>
/// <returns>true if path refers to a regular file, false if path is a link or directory</returns>
public bool IsFile(string path)
{
return Get_st_ifmt(path) == "S_IFREG";
}
/// <summary>
/// Test if path represents a link
/// </summary>
/// <param name="path">path to test</param>
/// <returns>true if path is a symbolic link</returns>
public bool IsLink(string path)
{
return Get_st_ifmt(path) == "S_IFLNK";
}
/// <summary>
/// Deletes an empty directory from a specified path.
/// </summary>
/// <param name="path">The name of the empty directory to remove. This directory must be writable and empty.</param>
public void DeleteDirectory(string path)
{
string full_path = FullPath(CurrentDirectory, path);
if (IsDirectory(full_path))
{
MobileDevice.DeviceImpl.RemovePath(AFCCommsHandle, full_path);
}
}
/// <summary>
/// Deletes the specified directory and, if indicated, any subdirectories in the directory.
/// </summary>
/// <param name="path">The name of the directory to remove.</param>
/// <param name="recursive"><c>true</c> to remove directories, subdirectories, and files in path; otherwise, <c>false</c>. </param>
public void DeleteDirectory(string path, bool recursive)
{
if (!recursive)
{
DeleteDirectory(path);
return;
}
string full_path = FullPath(CurrentDirectory, path);
if (IsDirectory(full_path))
{
InternalDeleteDirectory(path);
}
}
/// <summary>
/// Deletes the specified file.
/// </summary>
/// <param name="path">The name of the file to remove.</param>
public void DeleteFile(string path)
{
string full_path = FullPath(CurrentDirectory, path);
if (Exists(full_path))
{
MobileDevice.DeviceImpl.RemovePath(AFCCommsHandle, full_path);
}
}
#endregion // Filesystem
#region Public Methods
/// <summary>
/// Close the AFC connection
/// </summary>
public void Disconnect()
{
if (AFCCommsHandle.Handle != IntPtr.Zero)
{
MobileDevice.DeviceImpl.ConnectionClose(AFCCommsHandle);
}
AFCCommsHandle = IntPtr.Zero;
MobileDevice.DeviceImpl.StopSession(iPhoneHandle);
MobileDevice.DeviceImpl.Disconnect(iPhoneHandle);
}
/// <summary>
/// Close and Reopen AFC Connection
/// </summary>
/// <returns>status from reopen</returns>
public void Reconnect()
{
Disconnect();
ConnectToPhone();
}
#endregion // public Methods
void CopyFileToPhone(string PathOnPC, string PathOnPhone)
{
CopyFileToPhone(PathOnPC, PathOnPhone, 1024 * 1024);
}
void CopyFileToPhone(string PathOnPC, string PathOnPhone, int ChunkSize)
{
DateTime StartTime = DateTime.Now;
byte[] buffer = new byte[ChunkSize];
// verify we are still connected
if (!IsConnected)
{
Reconnect();
}
// Make sure the directory exists on the phone
string DirectoryOnPhone = PathOnPhone.Remove(PathOnPhone.LastIndexOf('/'));
if (!IsDirectory(DirectoryOnPhone))
{
Console.WriteLine("Directory (" + DirectoryOnPhone + ") doesn't exist!");
if (!CreateDirectory(DirectoryOnPhone))
{
Console.WriteLine("CreateDirectory (" + DirectoryOnPhone + ") failed");
// throw new IOException("CreateDirectory (" + DirectoryOnPhone + ") failed");
}
}
FileStream SourceFile = File.OpenRead(PathOnPC);
iPhoneFile DestinationFile = iPhoneFile.OpenWrite(this, PathOnPhone);
long ProgressInterval = Math.Max(buffer.Length, (SourceFile.Length / TransferProgressDivisor));
long NextProgressPrintout = ProgressInterval;
long TotalBytesRead = 0;
int BytesRead = SourceFile.Read(buffer, 0, buffer.Length);
while (BytesRead > 0)
{
if (TotalBytesRead >= NextProgressPrintout)
{
NextProgressPrintout += ProgressInterval;
if (OnGenericProgress != null)
{
int PercentDone = (int)((100 * TotalBytesRead) / SourceFile.Length);
string Msg = "Transferred " + (SourceFile.Position / 1024) + " KB of " + (SourceFile.Length / 1024) + " KB";
OnGenericProgress(Msg, PercentDone);
}
else
{
Console.WriteLine(" ... Transferred " + (SourceFile.Position / 1024) + " KB of " + (SourceFile.Length / 1024) + " KB");
}
}
DestinationFile.Write(buffer, 0, BytesRead);
BytesRead = SourceFile.Read(buffer, 0, buffer.Length);
TotalBytesRead += BytesRead;
}
// DestinationFile.Flush();
DestinationFile.Close();
SourceFile.Close();
TimeSpan CopyLength = DateTime.Now - StartTime;
Console.WriteLine(" ... Finished copying to '{1}' in {0:0.00} s", CopyLength.TotalSeconds, PathOnPhone);
}
// Default level is 6, and 0,3,7 are regularly used. Bump the logging level up to 7 to get verbose logs.
void SetLoggingLevel(int Threshold)
{
Int32 LoggingThreshold = Math.Min(Math.Max(0, Threshold), 7);
MobileDevice.CoreImpl.CFPreferencesSetAppValue(
(IntPtr)MobileDevice.CFStringMakeConstantString("LogLevel"),
(IntPtr)MobileDevice.CFNumberCreate(LoggingThreshold),
(IntPtr)MobileDevice.CFStringMakeConstantString("com.apple.MobileDevice"));
}
void WriteProgressLine(string Fmt, int ProgressCount, params object[] Args)
{
string Line = String.Format(Fmt, Args);
if (OnGenericProgress != null)
{
OnGenericProgress(Line, ProgressCount);
}
else
{
Console.WriteLine(Line);
}
}
/// <summary>
/// Copies a file from the phone to the PC
/// </summary>
void CopyFileFromPhone(string PathOnPC, string PathOnPhone, int ChunkSize)
{
DateTime StartTime = DateTime.Now;
byte[] buffer = new byte[ChunkSize];
// Make sure the directory exists on the PC
string DirectoryOnPC = Path.GetDirectoryName(PathOnPC);
Directory.CreateDirectory(DirectoryOnPC);
iPhoneFile SourceFile = iPhoneFile.OpenRead(this, PathOnPhone);
FileStream DestinationFile = File.OpenWrite(PathOnPC);
long TotalBytesRead = 0;
int BytesRead = SourceFile.Read(buffer, 0, buffer.Length);
while (BytesRead > 0)
{
DestinationFile.Write(buffer, 0, BytesRead);
BytesRead = SourceFile.Read(buffer, 0, buffer.Length);
TotalBytesRead += BytesRead;
}
DestinationFile.Flush();
DestinationFile.Close();
SourceFile.Close();
TimeSpan CopyLength = DateTime.Now - StartTime;
WriteProgressLine(" ... Finished copying to '{1}' in {0:0.00} s", 100, CopyLength.TotalSeconds, PathOnPC);
}
string MakeUnixPath(string PlatformPath)
{
string Result = Path.GetFullPath(PlatformPath);
// Convert C:\ to /C\, the \ will get converted to / in the next step
if (Path.IsPathRooted(Result))
{
string Root = Path.GetPathRoot(Result);
Result = '/' + Root.Replace(":", "") + Result.Substring(Root.Length);
}
// Convert slash directions
if (Path.DirectorySeparatorChar != '/')
{
Result = Result.Replace(Path.DirectorySeparatorChar, '/');
}
return Result;
}
void ReconnectWithInstallProxy()
{
Reconnect();
}
public delegate void ProgressCallback(string Message, int PercentDone);
public ProgressCallback OnGenericProgress = null;
public int TransferProgressDivisor = 25;
private int LastCopyPercentReported = 0;
DateTime LastLogTime = DateTime.MinValue;
/// <summary>
/// Generic progress callback implementation (used for install/uninstall/etc...)
/// </summary>
void HandleProgressCallback(string OuterFunction, TypedPtr<CFDictionary> SourceDict)
{
Dictionary<string, object> Dict = MobileDevice.ConvertCFDictionaryToDictionaryString(SourceDict);
// Expecting:
// string,string -> "Status",PhaseOfInstaller
// string,number -> "PercentComplete",%Done
try
{
string Phase = Dict["Status"] as string;
int PercentDone = (int)((Double)(Dict["PercentComplete"]));
// new copy was started
if (PercentDone < LastCopyPercentReported)
{
LastCopyPercentReported = 0;
}
// Only log every 20% change, or if there's been more than 5 secs since we last emitted progress
bool ShouldLog = LastCopyPercentReported == 0
|| ((PercentDone % 20) == 0 && PercentDone > LastCopyPercentReported)
|| (PercentDone > LastCopyPercentReported && (DateTime.Now - LastLogTime).TotalSeconds > 5)
|| PercentDone == 100
;
if (PercentDone > 0 && ShouldLog)
{
if (OnGenericProgress != null)
{
string Msg = String.Format("{0} is {1}% complete at phase '{2}'", OuterFunction, PercentDone, Phase);
OnGenericProgress(Msg, PercentDone);
}
else
{
Console.WriteLine(" ... {0} {1}% complete (phase '{2}')", OuterFunction, PercentDone, Phase);
}
LastCopyPercentReported = PercentDone;
LastLogTime = DateTime.Now;
}
}
catch (System.Exception)
{
}
}
/// <summary>
/// Progress callback for transferring
/// </summary>
void TransferProgressCallback(IntPtr UntypedSourceDict, IntPtr UserData)
{
HandleProgressCallback("Transfer", UntypedSourceDict);
}
/// <summary>
/// Progress callback for upgrading or installing
/// </summary>
void InstallProgressCallback(IntPtr UntypedSourceDict, IntPtr UserData)
{
HandleProgressCallback("Install", UntypedSourceDict);
}
/// <summary>
/// Progress callback for uninstalling
/// </summary>
void UninstallProgressCallback(IntPtr UntypedSourceDict, IntPtr UserData)
{
HandleProgressCallback("Uninstall", UntypedSourceDict);
}
/// <summary>
/// Try to install an IPA on the mobile device (it must have already been copied to the PublicStaging directory, with the same filename as the path passed in)
/// </summary>
public bool TryInstall(string IPASourcePathOnPC)
{
DateTime StartTime = DateTime.Now;
ReconnectWithInstallProxy();
IntPtr LiveConnection = IntPtr.Zero;
IntPtr ClientOptions = IntPtr.Zero;
TypedPtr<CFURL> UrlPath = MobileDevice.CreateFileUrlHelper(IPASourcePathOnPC, false);
// string UrlPathAsString = MobileDevice.GetStringForUrl(UrlPath);
int Result = MobileDevice.DeviceImpl.SecureInstallApplication(LiveConnection, iPhoneHandle, UrlPath, ClientOptions, InstallProgressCallback, IntPtr.Zero);
if (Result == 0)
{
Console.WriteLine("Install of \"{0}\" completed successfully in {2:0.00} seconds", Path.GetFileName(IPASourcePathOnPC), Result, (DateTime.Now - StartTime).TotalSeconds);
}
else
{
Console.WriteLine("Install of \"{0}\" failed with error code {1} in {2:0.00} seconds", Path.GetFileName(IPASourcePathOnPC), MobileDevice.GetErrorString(Result), (DateTime.Now - StartTime).TotalSeconds);
}
return Result == 0;
}
/// <summary>
/// Try to update an IPA on the mobile device (it must have already been copied to the PublicStaging directory, with the same filename as the path passed in)
/// </summary>
public bool TryUpgrade(string IPASourcePathOnPC)
{
DateTime StartTime = DateTime.Now;
ReconnectWithInstallProxy();
IntPtr LiveConnection = IntPtr.Zero;
IntPtr ClientOptions = IntPtr.Zero;
TypedPtr<CFURL> UrlPath = MobileDevice.CreateFileUrlHelper(IPASourcePathOnPC, false);
// string UrlPathAsString = MobileDevice.GetStringForUrl(UrlPath);
int Result = MobileDevice.DeviceImpl.SecureUpgradeApplication(LiveConnection, iPhoneHandle, UrlPath, ClientOptions, InstallProgressCallback, IntPtr.Zero);
if (Result == 0)
{
Console.WriteLine("Install \\ Update of \"{0}\" finished in {2:0.00} seconds", Path.GetFileName(IPASourcePathOnPC), Result, (DateTime.Now - StartTime).TotalSeconds);
}
else
{
Console.WriteLine("Install \\ Update of \"{0}\" failed with {1} in {2:0.00} seconds", Path.GetFileName(IPASourcePathOnPC), MobileDevice.GetErrorString(Result), (DateTime.Now - StartTime).TotalSeconds);
}
return Result == 0;
}
public bool TryUninstall(string ApplicationIdentifier)
{
DateTime StartTime = DateTime.Now;
ReconnectWithInstallProxy();
TypedPtr<CFString> CF_ApplicationIdentifier = MobileDevice.CFStringMakeConstantString(ApplicationIdentifier);
IntPtr CF_ClientOptions = IntPtr.Zero;
// IntPtr ExtraKey = IntPtr.Zero;
// IntPtr ExtraValue = IntPtr.Zero;
IntPtr ConnectionHandle = IntPtr.Zero;
int Result = MobileDevice.DeviceImpl.SecureUninstallApplication(ConnectionHandle, iPhoneHandle, CF_ApplicationIdentifier, CF_ClientOptions, UninstallProgressCallback, IntPtr.Zero);
if (Result == 0)
{
Console.WriteLine("Uninstall of \"{0}\" completed successfully in {2:0.00} seconds", ApplicationIdentifier, Result, (DateTime.Now - StartTime).TotalSeconds);
}
else
{
Console.WriteLine("Uninstall of \"{0}\" failed with {1} in {2:0.00} seconds", ApplicationIdentifier, MobileDevice.GetErrorString(Result), (DateTime.Now - StartTime).TotalSeconds);
}
return Result == 0;
}
/// <summary>
/// Copies a file to the PublicStaging directory on the mobile device, preserving the filename
/// </summary>
/// <param name="SourceFile"></param>
public void CopyFileToPublicStaging(string SourceFile)
{
Reconnect();
IntPtr LiveConnection = IntPtr.Zero;
IntPtr ClientOptions = IntPtr.Zero;
TypedPtr<CFURL> UrlPath = MobileDevice.CreateFileUrlHelper(SourceFile, false);
MobileDevice.DeviceImpl.SecureTransferPath(LiveConnection, iPhoneHandle, UrlPath, ClientOptions, TransferProgressCallback, IntPtr.Zero);
}
Copying //UE4/Dev-Platform to //UE4/Dev-Main (Source: //UE4/Dev-Platform @ 3120366) #lockdown Nick.Penwarden #rb none ========================== MAJOR FEATURES + CHANGES ========================== Change 2714591 on 2015/10/02 by Ben.Marsh Initial branch of files from Engine-Main (//UE4/Engine-Main) to Dev-Platform (//UE4/Dev-Platform) Change 2916715 on 2016/03/21 by Daniel.Lamb First pass at splitting out build cook run into into seperate scripts. Change 2948322 on 2016/04/19 by Nick.Shin update libwebsockets to v1.7.4 part 4 of 4 - doing this in stages for tracking purposes #jira UEPLAT-1246 - Update libWebsockets #jira UEPLAT-1221 - update websocket library #jira UEPLAT-1204 - Rebuild libwebsockets with SSL Change 2970016 on 2016/05/07 by Nick.Shin undo all of the following upgrades: - zlib - openssl - libcurl - libwebsockets and reset webrtc #jira UE-30298 - Fortnite and Orion crash on login Change 3059693 on 2016/07/21 by Josh.Adams Merging //UE4/Dev-Main to Dev-Platform (//UE4/Dev-Platform) Change 3061151 on 2016/07/22 by Niklas.Smedberg Fast ASTC texture compression, using ISPC. #jira UE-32308 Change 3061428 on 2016/07/22 by Peter.Sauerbrei Back out changelist 3061151 as it wasn't approved for submission Change 3061970 on 2016/07/22 by Steve.Cano Adding AdMob interstitital ad support for Android, including Blueprint functions #jira UE-33286 #ue4 #android Change 3062160 on 2016/07/22 by Mark.Satterthwaite Fix the fix for handling RHISetStreamSource overriding stride on Metal - not all MTLVertexDescriptors are equally hashable so do this ourselves. #jira UE-33355 Change 3062770 on 2016/07/24 by Brent.Pease UE-32397 Error Message displays as Unknown Error when failing to supply a Remote Build server for ios on Windows Change 3063227 on 2016/07/25 by Dmitry.Rekman Update hlslcc cross-compile after libc++ change. Change 3063314 on 2016/07/25 by Jeff.Campeau Xbox One DLL loading Receipts can be read back by request for target info Change 3063329 on 2016/07/25 by Mark.Satterthwaite CL #3046743 was breaking other samples in unexpected ways after a recent Main merge, so make a Metal-specific change to the shader instead and amend the MetalBackend to better match HLSL's handling of NaN/inf with common single-precision float intrinsics. This is sufficient to fix the AtmosphericFog and the recent regressions. #jira UE-33600 #jira UE-33028 #jira UE-27879 #jira UE-25802 Change 3063492 on 2016/07/25 by Brent.Pease UE-23846 - iOS Movie Player can't handle videos at resolutions that aren't multiples of 16 UE-33200 - A movie isn't played on iOS occasionally. Change 3063729 on 2016/07/25 by Dmitry.Rekman Linux: enable XGE on all platforms. #tests Cross-compiled a number of Linux targets on Windows. Change 3063732 on 2016/07/25 by Dmitry.Rekman Fixed formatting (spaces->tabs) in previous change. Change 3063750 on 2016/07/25 by Daniel.Lamb Added code to dump the cook modification delegate loads to log. Fixed the memory usage output log. #test cook paragon. Change 3063804 on 2016/07/25 by Daniel.Lamb Added cookpartialgc additional commandline option to uat. #test UFE Change 3064008 on 2016/07/25 by Mark.Satterthwaite For non-shipping builds conditionally bind a default uniform buffer in Metal and report an error if the slot was unbound, if our validation layer is enabled attempt to report the shader source in question. This relies on the shader compiler providing accurate information about uniform buffer bindings and won't fix all occurances of bad uniform usage (if a buffer is bound but too short the result will be GPU restarts or an error in Apple's validation layer - we can't detect this case) but will help debug the typical error of leaving an active slot unbound. #jira FORT-27685 Change 3064141 on 2016/07/25 by Jeff.Campeau Rebuild vpxmd.lib with delayed codegen disabled (fixes linker warning building Win64). Change 3065024 on 2016/07/26 by Nick.Shin Change filetype remove exclusive check out bit requested by or.coheni & nick.penwarden Change 3065274 on 2016/07/26 by Jonathan.Fitzpatrick DirectoriesToAlwaysStageAsUFS now properly filters out *.uasset and *.umap files This prevents the bug where cooked assets get trampled by staging their uncooked version on top of them during the UFS step Added a file filter to DirectoriesToAlwaysStageAsUFS for uasset and umap. Change 3066338 on 2016/07/27 by Mark.Satterthwaite Handle releasing an SRV/UAV & the source object within a single Metal command-buffer. #jira UE-33779 Change 3066789 on 2016/07/27 by Daniel.Lamb Realtime mode does not save any packages anymore unless they are ready. #test cookontheside, cookbythebook shooter game Change 3066847 on 2016/07/27 by Jeff.Campeau Fix define #2634 #jira UE-33813 Change 3068868 on 2016/07/28 by Mark.Satterthwaite Extend hlslcc's handling of switch-statements to allow implict casts from scalar bool, half & float as HLSL itself permits while also making sure it errors if the expression input is not scalar. This fixes shader compile errors in UT. Change 3070040 on 2016/07/29 by Dmitry.Rekman Delete Nadzorca. Change 3070947 on 2016/07/29 by Jeff.Campeau Perforce C++ API 2015.2 (includes debug libraries) Change 3073707 on 2016/08/02 by Daniel.Lamb Derived data cache commandlet runs resolve string asset references to load any string asset refereced packages from the map. Also process async results from shaders being compiled so they can have their memory resources released. #test DerivedDataCache commandlet shootergame. Change 3076613 on 2016/08/03 by Brent.Pease + UnrealTargetConfiguration is now passed into deploy and package methods + The UIRequiredDeviceCapabilities plist key now only considers the architectures from the corresponding target configuration (shipping or development) Change 3076668 on 2016/08/03 by Brent.Pease Back out changelist 3076613 Change 3077157 on 2016/08/04 by Daniel.Lamb Fixed up DLC staging so that it stages to the proper mount point. Fixes up include engine content in DLC staging paths. #test Made up shooter game DLC Change 3077191 on 2016/08/04 by Daniel.Lamb More smartly process async shader compilation if we are waiting for it. #test cook on the side shooter game cook by the book shooter game. Change 3077412 on 2016/08/04 by Mark.Satterthwaite Fix "iOS Metal-based build crashes at launch with sub-levels": - Slate should not bind the null RHI texture from an unitialised texture atlas - atlases only have a valid texture pointer once an entry has been added to them and in the template projects an empty sub-level doesn't add anything. - To prevent this kind of bug resurfacing and being so hard to track down add Metal shader binding validation to our validation layer as Apple's is incomplete on iOS and won't warn us about nil texture usage which causes these GPU restarts. This requires reworking our vertex declaration handling to be more efficient so that we can cache the pipeline reflection data as well as the pipeline objects. - Fix validation error of texture reallocation on loading template projects under Metal. #jira UE-30847 Change 3077958 on 2016/08/04 by Brent.Pease + UnrealTargetConfiguration is now passed into deploy and package methods + The UIRequiredDeviceCapabilities plist key now only considers the architectures from the corresponding target configuration (shipping or development) Change 3079503 on 2016/08/05 by Mark.Satterthwaite Initialise more variable types to 0 in Metal shaders to workaround Xcode 8 toolchain no longer doing this for us for "threadgroup shared" variables. Everything but structs and atomic's will now be initialised. #jira UE-33856 Change 3079737 on 2016/08/05 by Jeff.Campeau Add support for delay load DLLs on Xbox One Turn off warnging for missing PDBs to match VCToolchain.cs Change 3081005 on 2016/08/08 by Mark.Satterthwaite Fix-up Metal device name on AMD for macOS 10.12 which reports it correctly and enable tiled reflections on Intel from macOS 10.12 too as they now work. Change 3081557 on 2016/08/08 by Daniel.Lamb File-> Package saves all packages before starting packaging. #test File package first person template Change 3082215 on 2016/08/09 by Lee.Clark PS4 - Added 4k profile Change 3082412 on 2016/08/09 by Daniel.Lamb Fixed cook on the fly server not handling cook requests. #test Cook on the fly shooter game. Change 3082955 on 2016/08/09 by Dmitry.Rekman Linux: convert existing Strcat() uses to Strncat(). - Strcat() does not check destination size so can silently corrupt memory. While this was not observed, this conversion removes this concern altogether. Change 3083772 on 2016/08/10 by Luke.Thatcher [PLATFORM] [PS4] [+] Checking in PS4CrashHandler files so we have a copy in Perforce rather than just on the server. - Taken from \\devweb-02 and removed all the unused files/dependencies. - Created a publish profile pointing to \\devweb-02\Sites\PS4Services\PS4CrashHandlerDev so I'm not writing over the existing deployed crash handler. - Moved all code in the Page_Load event to inside the check for the HTTP method (POST) otherwise GET'ing the page from a browser will generate crash folders that hang around forever. Change 3085450 on 2016/08/11 by Lee.Clark PS4 - Fix mediaplayer pipeline allocation Change 3086360 on 2016/08/11 by Michael.Trepka Fixed a non-unity build error in Mac UnrealFrontend Change 3087224 on 2016/08/12 by Luke.Thatcher [PLATFORM] [PS4] [~] Refactor PS4 Crash Handler site - Removed CoreDumpHandler. Processing dump files is handled directly by an async thread within the aspx process. - Separated configuration values into their own class. Currently set to output to a testing directory, rather than the actual crash reporter landing zone. - Added a debug upload page to allow manual submission of .orbisdmp/.txt settings files, accessible by GET'ing Default.aspx. - Added logging. Logs self-delete after 30 days. Testing required before we switch to the new system. #jira UE-34504 #jira OR-26886 Change 3087626 on 2016/08/12 by Dmitry.Rekman PR #2689: Fix copying/duplicating failing on Linux (UE-34586). - Contributed by Web-eWorks. Change 3087991 on 2016/08/12 by Mark.Satterthwaite Initial AVFoundation implementation of Media Framework for Mac, iOS & tvOS. - Video playback occurs via AVPlayerItemVideoOutput's attached to the AVPlayerItem's output. This means gathering video samples is trivial. - Metal texture updates occur by wrapping the texture object provided by AVF - for Mac this is simple as it can bind to the IOSurface directly, for iOS/tvOS we have to create a CVMetalTextureCache and allocate our texture from there. - OpenGL and OpenGLES currently have to lock the pixel buffer and upload to a texture the old fashioned way - this should be revisited when there is time. - Subtitles/Captions are captured using AVPlayerItemLegibleOutput which also connects to the AVPlayerItem's output. - On Mac audio samples are returned by manually reading from the stream using an AVAssetReaderTrackOutput, including manual seeking and synching. - On iOS/tvOS the audio is played directly by AVPlayer because the IOSAudio system can't handle procedural buffers - otherwise it could reuse the Mac code. - AVFoundation does not support AVI - that's an obsolete Microsoft/Windows file-format. - Only 'file://' URLs are supported - streaming would require a totally different audio solution (using MTAudioProcessingTap) and has many more edge and failure cases that would need to be handled. #jira UE-34315 Change 3088790 on 2016/08/15 by Luke.Thatcher [PLATFORM] [PS4] [~] Hook new PS4 crash handler up to the crash reporter website. - Removed indentation from generated crash context XML file. The crash reporter process does manual XML parsing which doesn't correctly handle whitespace at the start of lines. - Switched the final output folder to match the one the crash reporter process is watching. - Hide upload form on a config variable. #jira UE-34504 #jira OR-26886 Change 3089060 on 2016/08/15 by Luke.Thatcher [PLATFORM] [PS4] [!] Change PS4 crash handler log file extension to ".ps4chlog", otherwise the crash reporter site attaches the wrong log file to the crash report. Allowed showing of debug upload form via "Default.aspx?showform=1" query string. #jira UE-34504 #jira OR-26886 Change 3089089 on 2016/08/15 by Mark.Satterthwaite Duplicated changes to AppleMovieStreamer from CL #3088149. #jira UE-34315 Change 3089460 on 2016/08/15 by Mark.Satterthwaite Duplicate CL #3080971: Workaround a macOS 10.12 Beta bug on some Metal drivers that can't initialise temporary/local variable arrays, only those that are marked threadgroup shared. #jira UE-34355 Change 3089465 on 2016/08/15 by Mark.Satterthwaite For Metal shader translation retain more precision for float constants -1.0f >< 1.0f by emitting them in scientific notation - prevents Hammersley constant amongst others from being flushed to 0. Change 3089902 on 2016/08/15 by Daniel.Lamb Changed the next compiling ID to the correct compiling ID. #test Cook Change 3089903 on 2016/08/15 by Daniel.Lamb Cooker monitors config useage during cook and uses those settings to invalidate cooked content instead of all config settings. Change 3090114 on 2016/08/16 by Luke.Thatcher [PLATFORM] [PS4] [~] Minor change to PS4 settings text on crash handler site. Change 3090949 on 2016/08/16 by Nick.Shin WebSocketNetDriver crash fix filled in missing chunk of code that calls PacketHandler's "packet modifiers" #jira UE-25492 HTML5 Client cannot connect to Windows Server #jira UE-30880 WinServer crashes when NetDriver is set to WebSocket and Client attempts to connect via websocket #code.review john.pollard john.barrett Change 3091265 on 2016/08/16 by Brent.Pease Add IOS support to HarfBuzz Change 3091267 on 2016/08/16 by Brent.Pease Add references to fix mono build Change 3091291 on 2016/08/16 by Nick.Shin CIS warning fix #jira UE-25492 HTML5 Client cannot connect to Windows Server #jira UE-30880 WinServer crashes when NetDriver is set to WebSocket and Client attempts to connect via websocket Change 3091781 on 2016/08/17 by Joe.Barnes UE-33640: Exposed UPrimitiveComponent::IsAnyRigidBodyAwake() to Blueprints. Change 3092687 on 2016/08/17 by Daniel.Lamb Added support for using binned allocator in cooker instead of tbb. #test Cook shootergame. Change 3093867 on 2016/08/18 by Mark.Satterthwaite Use a read/write mutex to protect access to Metal's internal shader pipeline caches so that parallel threads can progress in the common case where new shaders are not being compiled. Change 3093950 on 2016/08/18 by Mark.Satterthwaite Change the Mac GPU identification code to cope with AMD's new naming scheme on 10.12. Change 3093951 on 2016/08/18 by Mark.Satterthwaite More SCW threads on Mac - they work now. Change 3093960 on 2016/08/18 by Mark.Satterthwaite Increase the default number of command-buffers on Mac because bigger games overflow the current limit of 64 per queue. Change 3096493 on 2016/08/22 by Jeff.Campeau Use Xbox version of DirectX include. Change 3097509 on 2016/08/23 by Luke.Thatcher [PLATFORM] [PS4] [+] Refactor PS4 Symbol Publish - Moved the SymStore task from Win.Automation to BuildGraph.Automation, and made it more generic. - The specifics of uploading symbols are now implemented in the platform tool chain, alongside StripSymbols(). - Re-generated the build graph schema file. - Removed the old PS4 symbols upload path in the package step. Modified OrionBuild.xml to publish symbols for all PS4 dev, test and shipping config builds of OrionClient. Change 3097635 on 2016/08/23 by Luke.Thatcher [PLATFORM] [PS4] [+] Refactor Age Symbols task in UAT. - Moved the AgeStore task from Win.Automation to BuildGraph.Automation and made it more generic. - Symbol server directory structure is now defined by the platform tool chain, which the common task uses to clean out old symbols. - Added a "filter" parameter to prevent age tasks deleting symbols from unrelated builds in shared symbol servers. Modified OrionBuild.xml to age both the Windows and PS4 symbol stores. Change 3097713 on 2016/08/23 by Luke.Thatcher [PLATFORM] [PS4] [+] Enable new PS4 crash handler server - Created live deployment profile and applied the required config file changes. Change 3099214 on 2016/08/24 by Luke.Thatcher [PLATFORM] [PS4] [!] Fix compile error in PS4 tool chain. For some reason, this only breaks ocassionally. Maybe we're alternating between the 2013 and 2015 C# compilers depending on what initiates the build (e.g. Visual Studio vs GenerateProjectFiles)? Change 3099222 on 2016/08/24 by Luke.Thatcher [PLATFORM] [PS4] [+] Added PS4 support for FPlatformMisc::MessageBoxExt using the MsgDialog library. - Note, only one and two button message dialogs are supported (limitation of MsgDialog). Change 3099260 on 2016/08/24 by Luke.Thatcher [PLATFORM] [PS4] [~] Better PS4 exit function. Calls quick_exit instead of abort when we've not asserted. Allows for a "cleaner" forced exit without generating a crash dump. Change 3101192 on 2016/08/25 by Josh.Adams Merging //UE4/Dev-Main to Dev-Platform (//UE4/Dev-Platform) Change 3101944 on 2016/08/25 by Daniel.Lamb Ask to save the current level when we are using launch on. Change 3102036 on 2016/08/25 by Nick.Shin check for minimum expected size upon data received from network #jira UE-13657 - HTML5 plugin OnRawRecieve overflow Change 3102115 on 2016/08/25 by Brent.Pease - Fix small errors that probably only show up in the mac mono build #code.review peter.sauerbrei Change 3102747 on 2016/08/26 by Jeremiah.Waldron Re-submitting OnlineSubsystemGameCircle with TPS permission for Amazon SDK - Also fixed the plugin to remove any related files from the final package when IAP is disabled or GameCircle support itself is disabled with the plugin still enabled - Added support for new AlreadyOwned IAP response code as well which is already used for GooglePlay and IOS Change 3102900 on 2016/08/26 by Nick.Shin since last checkin (CL: 2981945) - prints are crashing the browser - this change will allow browser to print the details via console.log() #jira UE-26047 - HTML5 HTTP Response Headers not implemented Change 3103130 on 2016/08/26 by Brent.Pease UE-24679 - Enable the ability to change ports for a firewall to pass them through rsync Change 3103225 on 2016/08/26 by Daniel.Lamb Fixed issue with warning which would cause crash. Change 3103425 on 2016/08/26 by Dmitry.Rekman Enable offscreen GL rendering without X. - Added new video subsystem to SDL that is uses EGL to initialize the context. - Most windoing functions stubbed. - Also added a new test case to TestPAL for easier debugging. Change 3104743 on 2016/08/29 by Brent.Pease Support remote offline metal shader compilation Change 3105051 on 2016/08/29 by Brent.Pease UE-2382 - TASK: MobleMVP: iOS: Add ability to view iOS device console output in the editor UFE - IOS Automation will now create a thread to collect the console logs from the device and send them to C# Console output while the app is running on device - Made ProcessResult an interface (IProcessResult) which ProcessResult implements. This allows platforms to provide their own implementation if needed. - Moved the RunLoop related parts of CoreFoundation into MobileDevice.cs Change 3105053 on 2016/08/29 by Brent.Pease - IOS dll's as part of the last check-in Change 3106853 on 2016/08/30 by Jeff.Campeau Implement FD3D11DynamicRHI::RHICreateComputeFence to prevent memory overwrite Change 3107361 on 2016/08/30 by Dmitry.Rekman Renderer: changes to allow postproc delegates. Change 3107362 on 2016/08/30 by Dmitry.Rekman Plugin with a CUDA postproc example. - Linux version only. Runs under a headless GL too (without X). - Disabled during cross-compilation, can be compiled natively only. - CUDA kernel should be compiled separately, CMakefile with compilation attached (can be used to generate VStudio projects as well). - To test the output, run under the debugger, interrupt and set global variable GSaveTheOutput to 50 (this will write out kernel output buffer 50 times as .bmp files into working directory). Change 3107913 on 2016/08/31 by Daniel.Lamb Fixed loading of cooked content in the editor. Change 3107916 on 2016/08/31 by Daniel.Lamb Added error case when shader compilation fails to notify shader. #test Cook shooter game. Change 3108080 on 2016/08/31 by Josh.Adams - Fixed PS4Automation compile errors Change 3109077 on 2016/08/31 by Brent.Pease Fix C# debug builds by specifying x64 and add reference to MobileDeviceInterface Change 3110086 on 2016/09/01 by Dmitry.Rekman Fix race condition in PThread runnable (UE-35074). - Instead of relying on busy-wait, join the threads. This prevents race between PostRun() (executed in the context of the thread) and FPThreadRunnableThread() destructor (see UE-34909). - Do not use an invalid value for pthread_t, since there's none. Change 3110172 on 2016/09/01 by Dmitry.Rekman Fixed a crash exiting VR Preview on Windows GL4 (UE-28708). - PR #2188 submitted by ardneran. Change 3110313 on 2016/09/01 by Josh.Adams Merging //UE4/Dev-Main to Dev-Platform (//UE4/Dev-Platform) Change 3111134 on 2016/09/01 by Dmitry.Rekman UBT: prevent mono from hanging on Ctrl-C. - Sometimes Ctrl-C can cause thread creation to fail. Without this change, UBT would lock up. Change 3111171 on 2016/09/01 by Brent.Pease Move all C# projects to use the x64 Platform for consistency with other changes made to move to the x64 Platform Change 3111177 on 2016/09/01 by Dmitry.Rekman Fix Linux build on systems without CUDA (UE-35460). Change 3111548 on 2016/09/02 by Luke.Thatcher [PLATFORM] [PS4] [!] Fix for PS4 iterative deployment. - Changes in Dev-Mobile broke the deployment manifests, as PS4 was now using the wrong filename when creating delta and obsolete file lists. Change 3111863 on 2016/09/02 by Dmitry.Rekman Better fix for build without CUDA (UE-35460). Change 3112738 on 2016/09/02 by Mark.Satterthwaite Fix the pausing particles on Metal - one line bug in the Metal query implementation meant that the first query wouldn't return the correct result for no good reason. #jira UE-34989 Change 3114579 on 2016/09/06 by Chris.Babcock Fix Vulkan include path in NDK check (contributed by geediiiiky) #jira UE-35490 #github #2758 #ue4 #android Change 3115115 on 2016/09/06 by Jeff.Campeau Calculate buffer size for paks using the bitwindow override as needed Change 3115600 on 2016/09/07 by Luke.Thatcher [PLATFORM] [PS4] [~] Make the crash dump handler registration much earlier, to catch crashes in early engine init. - Fixed up places in FGenericCrashContext::SerializeContentToBuffer which used the command line. If we crash early, the command line may not have been initialized yet. - Added a GetNoInit function to FThreadHeartBeat to avoid creating the heart beat thread if we crash early, and the thread doesn't exist yet. Tested by calling abort() immediately inside int main(), and we get a valid crash dump that the crash handler service can consume. Change 3115676 on 2016/09/07 by Luke.Thatcher [PLATFORM] [~] Dev-Platform integration fix for original CL 3064888 in //Orion/Release-29.1 Add .exe and .dll to windows symbol upload file filters. Change 3115811 on 2016/09/07 by Josh.Adams Merging //UE4/Dev-Main to Dev-Platform (//UE4/Dev-Platform) Change 3115944 on 2016/09/07 by Michael.Trepka Implemented IsGamepadAttached() for Mac Change 3115948 on 2016/09/07 by Michael.Trepka Don't try to restore Help menu item on Mac if MenuBlock does not contain it Change 3116200 on 2016/09/07 by Jeff.Campeau Fix parameter ordering Change 3117660 on 2016/09/08 by Josh.Adams Merging //UE4/Dev-Main to Dev-Platform (//UE4/Dev-Platform) Change 3117728 on 2016/09/08 by Michael.Trepka Copy of CL 3117698 by Mike.Fricker Fixed regression with editor's Simulate mode where cursor would teleport back to the center of the viewport after every click - This bug was introduced in CL 3075932 from a borderless window cursor handling fix that was needed for games that capture the cursor Change 3117797 on 2016/09/08 by Peter.Sauerbrei Shader Resource compression Change 3117988 on 2016/09/08 by Brent.Pease - Solutiion generator will now pick x64 instead of AnyCPU for the default platform configuration - Fix what I think was a merge error in BuildGraph.cs Change 3118296 on 2016/09/08 by Daniel.Lamb Fixed crash with launch on. Couldnt' correctly detect previous generated ini settings. #test launch on QA game #jira UE-35741 Change 3118438 on 2016/09/08 by JohnHenry.Carawon Fix UAT compilation on Linux #UE-35745 Change 3118934 on 2016/09/08 by Jeff.Campeau Shader compression setting based on target platform instead of cooking host platform. #jira UE-35753 Change 3120190 on 2016/09/09 by Ben.Marsh Add missing Platform attribute to build script for Dev-Platform. [CL 3120378 by Josh Adams in Main branch]
2016-09-09 20:13:41 -04:00
public bool StartSyslogService()
{
if (MobileDevice.DeviceImpl.Connect(iPhoneHandle) != 0)
{
Console.WriteLine("Connect: Failed to Connect");
return false;
}
if (MobileDevice.DeviceImpl.StartSession(iPhoneHandle) == 1)
{
Console.WriteLine("Connect: Couldn't start session");
return false;
}
Copying //UE4/Dev-Platform to //UE4/Dev-Main (Source: //UE4/Dev-Platform @ 3120366) #lockdown Nick.Penwarden #rb none ========================== MAJOR FEATURES + CHANGES ========================== Change 2714591 on 2015/10/02 by Ben.Marsh Initial branch of files from Engine-Main (//UE4/Engine-Main) to Dev-Platform (//UE4/Dev-Platform) Change 2916715 on 2016/03/21 by Daniel.Lamb First pass at splitting out build cook run into into seperate scripts. Change 2948322 on 2016/04/19 by Nick.Shin update libwebsockets to v1.7.4 part 4 of 4 - doing this in stages for tracking purposes #jira UEPLAT-1246 - Update libWebsockets #jira UEPLAT-1221 - update websocket library #jira UEPLAT-1204 - Rebuild libwebsockets with SSL Change 2970016 on 2016/05/07 by Nick.Shin undo all of the following upgrades: - zlib - openssl - libcurl - libwebsockets and reset webrtc #jira UE-30298 - Fortnite and Orion crash on login Change 3059693 on 2016/07/21 by Josh.Adams Merging //UE4/Dev-Main to Dev-Platform (//UE4/Dev-Platform) Change 3061151 on 2016/07/22 by Niklas.Smedberg Fast ASTC texture compression, using ISPC. #jira UE-32308 Change 3061428 on 2016/07/22 by Peter.Sauerbrei Back out changelist 3061151 as it wasn't approved for submission Change 3061970 on 2016/07/22 by Steve.Cano Adding AdMob interstitital ad support for Android, including Blueprint functions #jira UE-33286 #ue4 #android Change 3062160 on 2016/07/22 by Mark.Satterthwaite Fix the fix for handling RHISetStreamSource overriding stride on Metal - not all MTLVertexDescriptors are equally hashable so do this ourselves. #jira UE-33355 Change 3062770 on 2016/07/24 by Brent.Pease UE-32397 Error Message displays as Unknown Error when failing to supply a Remote Build server for ios on Windows Change 3063227 on 2016/07/25 by Dmitry.Rekman Update hlslcc cross-compile after libc++ change. Change 3063314 on 2016/07/25 by Jeff.Campeau Xbox One DLL loading Receipts can be read back by request for target info Change 3063329 on 2016/07/25 by Mark.Satterthwaite CL #3046743 was breaking other samples in unexpected ways after a recent Main merge, so make a Metal-specific change to the shader instead and amend the MetalBackend to better match HLSL's handling of NaN/inf with common single-precision float intrinsics. This is sufficient to fix the AtmosphericFog and the recent regressions. #jira UE-33600 #jira UE-33028 #jira UE-27879 #jira UE-25802 Change 3063492 on 2016/07/25 by Brent.Pease UE-23846 - iOS Movie Player can't handle videos at resolutions that aren't multiples of 16 UE-33200 - A movie isn't played on iOS occasionally. Change 3063729 on 2016/07/25 by Dmitry.Rekman Linux: enable XGE on all platforms. #tests Cross-compiled a number of Linux targets on Windows. Change 3063732 on 2016/07/25 by Dmitry.Rekman Fixed formatting (spaces->tabs) in previous change. Change 3063750 on 2016/07/25 by Daniel.Lamb Added code to dump the cook modification delegate loads to log. Fixed the memory usage output log. #test cook paragon. Change 3063804 on 2016/07/25 by Daniel.Lamb Added cookpartialgc additional commandline option to uat. #test UFE Change 3064008 on 2016/07/25 by Mark.Satterthwaite For non-shipping builds conditionally bind a default uniform buffer in Metal and report an error if the slot was unbound, if our validation layer is enabled attempt to report the shader source in question. This relies on the shader compiler providing accurate information about uniform buffer bindings and won't fix all occurances of bad uniform usage (if a buffer is bound but too short the result will be GPU restarts or an error in Apple's validation layer - we can't detect this case) but will help debug the typical error of leaving an active slot unbound. #jira FORT-27685 Change 3064141 on 2016/07/25 by Jeff.Campeau Rebuild vpxmd.lib with delayed codegen disabled (fixes linker warning building Win64). Change 3065024 on 2016/07/26 by Nick.Shin Change filetype remove exclusive check out bit requested by or.coheni & nick.penwarden Change 3065274 on 2016/07/26 by Jonathan.Fitzpatrick DirectoriesToAlwaysStageAsUFS now properly filters out *.uasset and *.umap files This prevents the bug where cooked assets get trampled by staging their uncooked version on top of them during the UFS step Added a file filter to DirectoriesToAlwaysStageAsUFS for uasset and umap. Change 3066338 on 2016/07/27 by Mark.Satterthwaite Handle releasing an SRV/UAV & the source object within a single Metal command-buffer. #jira UE-33779 Change 3066789 on 2016/07/27 by Daniel.Lamb Realtime mode does not save any packages anymore unless they are ready. #test cookontheside, cookbythebook shooter game Change 3066847 on 2016/07/27 by Jeff.Campeau Fix define #2634 #jira UE-33813 Change 3068868 on 2016/07/28 by Mark.Satterthwaite Extend hlslcc's handling of switch-statements to allow implict casts from scalar bool, half & float as HLSL itself permits while also making sure it errors if the expression input is not scalar. This fixes shader compile errors in UT. Change 3070040 on 2016/07/29 by Dmitry.Rekman Delete Nadzorca. Change 3070947 on 2016/07/29 by Jeff.Campeau Perforce C++ API 2015.2 (includes debug libraries) Change 3073707 on 2016/08/02 by Daniel.Lamb Derived data cache commandlet runs resolve string asset references to load any string asset refereced packages from the map. Also process async results from shaders being compiled so they can have their memory resources released. #test DerivedDataCache commandlet shootergame. Change 3076613 on 2016/08/03 by Brent.Pease + UnrealTargetConfiguration is now passed into deploy and package methods + The UIRequiredDeviceCapabilities plist key now only considers the architectures from the corresponding target configuration (shipping or development) Change 3076668 on 2016/08/03 by Brent.Pease Back out changelist 3076613 Change 3077157 on 2016/08/04 by Daniel.Lamb Fixed up DLC staging so that it stages to the proper mount point. Fixes up include engine content in DLC staging paths. #test Made up shooter game DLC Change 3077191 on 2016/08/04 by Daniel.Lamb More smartly process async shader compilation if we are waiting for it. #test cook on the side shooter game cook by the book shooter game. Change 3077412 on 2016/08/04 by Mark.Satterthwaite Fix "iOS Metal-based build crashes at launch with sub-levels": - Slate should not bind the null RHI texture from an unitialised texture atlas - atlases only have a valid texture pointer once an entry has been added to them and in the template projects an empty sub-level doesn't add anything. - To prevent this kind of bug resurfacing and being so hard to track down add Metal shader binding validation to our validation layer as Apple's is incomplete on iOS and won't warn us about nil texture usage which causes these GPU restarts. This requires reworking our vertex declaration handling to be more efficient so that we can cache the pipeline reflection data as well as the pipeline objects. - Fix validation error of texture reallocation on loading template projects under Metal. #jira UE-30847 Change 3077958 on 2016/08/04 by Brent.Pease + UnrealTargetConfiguration is now passed into deploy and package methods + The UIRequiredDeviceCapabilities plist key now only considers the architectures from the corresponding target configuration (shipping or development) Change 3079503 on 2016/08/05 by Mark.Satterthwaite Initialise more variable types to 0 in Metal shaders to workaround Xcode 8 toolchain no longer doing this for us for "threadgroup shared" variables. Everything but structs and atomic's will now be initialised. #jira UE-33856 Change 3079737 on 2016/08/05 by Jeff.Campeau Add support for delay load DLLs on Xbox One Turn off warnging for missing PDBs to match VCToolchain.cs Change 3081005 on 2016/08/08 by Mark.Satterthwaite Fix-up Metal device name on AMD for macOS 10.12 which reports it correctly and enable tiled reflections on Intel from macOS 10.12 too as they now work. Change 3081557 on 2016/08/08 by Daniel.Lamb File-> Package saves all packages before starting packaging. #test File package first person template Change 3082215 on 2016/08/09 by Lee.Clark PS4 - Added 4k profile Change 3082412 on 2016/08/09 by Daniel.Lamb Fixed cook on the fly server not handling cook requests. #test Cook on the fly shooter game. Change 3082955 on 2016/08/09 by Dmitry.Rekman Linux: convert existing Strcat() uses to Strncat(). - Strcat() does not check destination size so can silently corrupt memory. While this was not observed, this conversion removes this concern altogether. Change 3083772 on 2016/08/10 by Luke.Thatcher [PLATFORM] [PS4] [+] Checking in PS4CrashHandler files so we have a copy in Perforce rather than just on the server. - Taken from \\devweb-02 and removed all the unused files/dependencies. - Created a publish profile pointing to \\devweb-02\Sites\PS4Services\PS4CrashHandlerDev so I'm not writing over the existing deployed crash handler. - Moved all code in the Page_Load event to inside the check for the HTTP method (POST) otherwise GET'ing the page from a browser will generate crash folders that hang around forever. Change 3085450 on 2016/08/11 by Lee.Clark PS4 - Fix mediaplayer pipeline allocation Change 3086360 on 2016/08/11 by Michael.Trepka Fixed a non-unity build error in Mac UnrealFrontend Change 3087224 on 2016/08/12 by Luke.Thatcher [PLATFORM] [PS4] [~] Refactor PS4 Crash Handler site - Removed CoreDumpHandler. Processing dump files is handled directly by an async thread within the aspx process. - Separated configuration values into their own class. Currently set to output to a testing directory, rather than the actual crash reporter landing zone. - Added a debug upload page to allow manual submission of .orbisdmp/.txt settings files, accessible by GET'ing Default.aspx. - Added logging. Logs self-delete after 30 days. Testing required before we switch to the new system. #jira UE-34504 #jira OR-26886 Change 3087626 on 2016/08/12 by Dmitry.Rekman PR #2689: Fix copying/duplicating failing on Linux (UE-34586). - Contributed by Web-eWorks. Change 3087991 on 2016/08/12 by Mark.Satterthwaite Initial AVFoundation implementation of Media Framework for Mac, iOS & tvOS. - Video playback occurs via AVPlayerItemVideoOutput's attached to the AVPlayerItem's output. This means gathering video samples is trivial. - Metal texture updates occur by wrapping the texture object provided by AVF - for Mac this is simple as it can bind to the IOSurface directly, for iOS/tvOS we have to create a CVMetalTextureCache and allocate our texture from there. - OpenGL and OpenGLES currently have to lock the pixel buffer and upload to a texture the old fashioned way - this should be revisited when there is time. - Subtitles/Captions are captured using AVPlayerItemLegibleOutput which also connects to the AVPlayerItem's output. - On Mac audio samples are returned by manually reading from the stream using an AVAssetReaderTrackOutput, including manual seeking and synching. - On iOS/tvOS the audio is played directly by AVPlayer because the IOSAudio system can't handle procedural buffers - otherwise it could reuse the Mac code. - AVFoundation does not support AVI - that's an obsolete Microsoft/Windows file-format. - Only 'file://' URLs are supported - streaming would require a totally different audio solution (using MTAudioProcessingTap) and has many more edge and failure cases that would need to be handled. #jira UE-34315 Change 3088790 on 2016/08/15 by Luke.Thatcher [PLATFORM] [PS4] [~] Hook new PS4 crash handler up to the crash reporter website. - Removed indentation from generated crash context XML file. The crash reporter process does manual XML parsing which doesn't correctly handle whitespace at the start of lines. - Switched the final output folder to match the one the crash reporter process is watching. - Hide upload form on a config variable. #jira UE-34504 #jira OR-26886 Change 3089060 on 2016/08/15 by Luke.Thatcher [PLATFORM] [PS4] [!] Change PS4 crash handler log file extension to ".ps4chlog", otherwise the crash reporter site attaches the wrong log file to the crash report. Allowed showing of debug upload form via "Default.aspx?showform=1" query string. #jira UE-34504 #jira OR-26886 Change 3089089 on 2016/08/15 by Mark.Satterthwaite Duplicated changes to AppleMovieStreamer from CL #3088149. #jira UE-34315 Change 3089460 on 2016/08/15 by Mark.Satterthwaite Duplicate CL #3080971: Workaround a macOS 10.12 Beta bug on some Metal drivers that can't initialise temporary/local variable arrays, only those that are marked threadgroup shared. #jira UE-34355 Change 3089465 on 2016/08/15 by Mark.Satterthwaite For Metal shader translation retain more precision for float constants -1.0f >< 1.0f by emitting them in scientific notation - prevents Hammersley constant amongst others from being flushed to 0. Change 3089902 on 2016/08/15 by Daniel.Lamb Changed the next compiling ID to the correct compiling ID. #test Cook Change 3089903 on 2016/08/15 by Daniel.Lamb Cooker monitors config useage during cook and uses those settings to invalidate cooked content instead of all config settings. Change 3090114 on 2016/08/16 by Luke.Thatcher [PLATFORM] [PS4] [~] Minor change to PS4 settings text on crash handler site. Change 3090949 on 2016/08/16 by Nick.Shin WebSocketNetDriver crash fix filled in missing chunk of code that calls PacketHandler's "packet modifiers" #jira UE-25492 HTML5 Client cannot connect to Windows Server #jira UE-30880 WinServer crashes when NetDriver is set to WebSocket and Client attempts to connect via websocket #code.review john.pollard john.barrett Change 3091265 on 2016/08/16 by Brent.Pease Add IOS support to HarfBuzz Change 3091267 on 2016/08/16 by Brent.Pease Add references to fix mono build Change 3091291 on 2016/08/16 by Nick.Shin CIS warning fix #jira UE-25492 HTML5 Client cannot connect to Windows Server #jira UE-30880 WinServer crashes when NetDriver is set to WebSocket and Client attempts to connect via websocket Change 3091781 on 2016/08/17 by Joe.Barnes UE-33640: Exposed UPrimitiveComponent::IsAnyRigidBodyAwake() to Blueprints. Change 3092687 on 2016/08/17 by Daniel.Lamb Added support for using binned allocator in cooker instead of tbb. #test Cook shootergame. Change 3093867 on 2016/08/18 by Mark.Satterthwaite Use a read/write mutex to protect access to Metal's internal shader pipeline caches so that parallel threads can progress in the common case where new shaders are not being compiled. Change 3093950 on 2016/08/18 by Mark.Satterthwaite Change the Mac GPU identification code to cope with AMD's new naming scheme on 10.12. Change 3093951 on 2016/08/18 by Mark.Satterthwaite More SCW threads on Mac - they work now. Change 3093960 on 2016/08/18 by Mark.Satterthwaite Increase the default number of command-buffers on Mac because bigger games overflow the current limit of 64 per queue. Change 3096493 on 2016/08/22 by Jeff.Campeau Use Xbox version of DirectX include. Change 3097509 on 2016/08/23 by Luke.Thatcher [PLATFORM] [PS4] [+] Refactor PS4 Symbol Publish - Moved the SymStore task from Win.Automation to BuildGraph.Automation, and made it more generic. - The specifics of uploading symbols are now implemented in the platform tool chain, alongside StripSymbols(). - Re-generated the build graph schema file. - Removed the old PS4 symbols upload path in the package step. Modified OrionBuild.xml to publish symbols for all PS4 dev, test and shipping config builds of OrionClient. Change 3097635 on 2016/08/23 by Luke.Thatcher [PLATFORM] [PS4] [+] Refactor Age Symbols task in UAT. - Moved the AgeStore task from Win.Automation to BuildGraph.Automation and made it more generic. - Symbol server directory structure is now defined by the platform tool chain, which the common task uses to clean out old symbols. - Added a "filter" parameter to prevent age tasks deleting symbols from unrelated builds in shared symbol servers. Modified OrionBuild.xml to age both the Windows and PS4 symbol stores. Change 3097713 on 2016/08/23 by Luke.Thatcher [PLATFORM] [PS4] [+] Enable new PS4 crash handler server - Created live deployment profile and applied the required config file changes. Change 3099214 on 2016/08/24 by Luke.Thatcher [PLATFORM] [PS4] [!] Fix compile error in PS4 tool chain. For some reason, this only breaks ocassionally. Maybe we're alternating between the 2013 and 2015 C# compilers depending on what initiates the build (e.g. Visual Studio vs GenerateProjectFiles)? Change 3099222 on 2016/08/24 by Luke.Thatcher [PLATFORM] [PS4] [+] Added PS4 support for FPlatformMisc::MessageBoxExt using the MsgDialog library. - Note, only one and two button message dialogs are supported (limitation of MsgDialog). Change 3099260 on 2016/08/24 by Luke.Thatcher [PLATFORM] [PS4] [~] Better PS4 exit function. Calls quick_exit instead of abort when we've not asserted. Allows for a "cleaner" forced exit without generating a crash dump. Change 3101192 on 2016/08/25 by Josh.Adams Merging //UE4/Dev-Main to Dev-Platform (//UE4/Dev-Platform) Change 3101944 on 2016/08/25 by Daniel.Lamb Ask to save the current level when we are using launch on. Change 3102036 on 2016/08/25 by Nick.Shin check for minimum expected size upon data received from network #jira UE-13657 - HTML5 plugin OnRawRecieve overflow Change 3102115 on 2016/08/25 by Brent.Pease - Fix small errors that probably only show up in the mac mono build #code.review peter.sauerbrei Change 3102747 on 2016/08/26 by Jeremiah.Waldron Re-submitting OnlineSubsystemGameCircle with TPS permission for Amazon SDK - Also fixed the plugin to remove any related files from the final package when IAP is disabled or GameCircle support itself is disabled with the plugin still enabled - Added support for new AlreadyOwned IAP response code as well which is already used for GooglePlay and IOS Change 3102900 on 2016/08/26 by Nick.Shin since last checkin (CL: 2981945) - prints are crashing the browser - this change will allow browser to print the details via console.log() #jira UE-26047 - HTML5 HTTP Response Headers not implemented Change 3103130 on 2016/08/26 by Brent.Pease UE-24679 - Enable the ability to change ports for a firewall to pass them through rsync Change 3103225 on 2016/08/26 by Daniel.Lamb Fixed issue with warning which would cause crash. Change 3103425 on 2016/08/26 by Dmitry.Rekman Enable offscreen GL rendering without X. - Added new video subsystem to SDL that is uses EGL to initialize the context. - Most windoing functions stubbed. - Also added a new test case to TestPAL for easier debugging. Change 3104743 on 2016/08/29 by Brent.Pease Support remote offline metal shader compilation Change 3105051 on 2016/08/29 by Brent.Pease UE-2382 - TASK: MobleMVP: iOS: Add ability to view iOS device console output in the editor UFE - IOS Automation will now create a thread to collect the console logs from the device and send them to C# Console output while the app is running on device - Made ProcessResult an interface (IProcessResult) which ProcessResult implements. This allows platforms to provide their own implementation if needed. - Moved the RunLoop related parts of CoreFoundation into MobileDevice.cs Change 3105053 on 2016/08/29 by Brent.Pease - IOS dll's as part of the last check-in Change 3106853 on 2016/08/30 by Jeff.Campeau Implement FD3D11DynamicRHI::RHICreateComputeFence to prevent memory overwrite Change 3107361 on 2016/08/30 by Dmitry.Rekman Renderer: changes to allow postproc delegates. Change 3107362 on 2016/08/30 by Dmitry.Rekman Plugin with a CUDA postproc example. - Linux version only. Runs under a headless GL too (without X). - Disabled during cross-compilation, can be compiled natively only. - CUDA kernel should be compiled separately, CMakefile with compilation attached (can be used to generate VStudio projects as well). - To test the output, run under the debugger, interrupt and set global variable GSaveTheOutput to 50 (this will write out kernel output buffer 50 times as .bmp files into working directory). Change 3107913 on 2016/08/31 by Daniel.Lamb Fixed loading of cooked content in the editor. Change 3107916 on 2016/08/31 by Daniel.Lamb Added error case when shader compilation fails to notify shader. #test Cook shooter game. Change 3108080 on 2016/08/31 by Josh.Adams - Fixed PS4Automation compile errors Change 3109077 on 2016/08/31 by Brent.Pease Fix C# debug builds by specifying x64 and add reference to MobileDeviceInterface Change 3110086 on 2016/09/01 by Dmitry.Rekman Fix race condition in PThread runnable (UE-35074). - Instead of relying on busy-wait, join the threads. This prevents race between PostRun() (executed in the context of the thread) and FPThreadRunnableThread() destructor (see UE-34909). - Do not use an invalid value for pthread_t, since there's none. Change 3110172 on 2016/09/01 by Dmitry.Rekman Fixed a crash exiting VR Preview on Windows GL4 (UE-28708). - PR #2188 submitted by ardneran. Change 3110313 on 2016/09/01 by Josh.Adams Merging //UE4/Dev-Main to Dev-Platform (//UE4/Dev-Platform) Change 3111134 on 2016/09/01 by Dmitry.Rekman UBT: prevent mono from hanging on Ctrl-C. - Sometimes Ctrl-C can cause thread creation to fail. Without this change, UBT would lock up. Change 3111171 on 2016/09/01 by Brent.Pease Move all C# projects to use the x64 Platform for consistency with other changes made to move to the x64 Platform Change 3111177 on 2016/09/01 by Dmitry.Rekman Fix Linux build on systems without CUDA (UE-35460). Change 3111548 on 2016/09/02 by Luke.Thatcher [PLATFORM] [PS4] [!] Fix for PS4 iterative deployment. - Changes in Dev-Mobile broke the deployment manifests, as PS4 was now using the wrong filename when creating delta and obsolete file lists. Change 3111863 on 2016/09/02 by Dmitry.Rekman Better fix for build without CUDA (UE-35460). Change 3112738 on 2016/09/02 by Mark.Satterthwaite Fix the pausing particles on Metal - one line bug in the Metal query implementation meant that the first query wouldn't return the correct result for no good reason. #jira UE-34989 Change 3114579 on 2016/09/06 by Chris.Babcock Fix Vulkan include path in NDK check (contributed by geediiiiky) #jira UE-35490 #github #2758 #ue4 #android Change 3115115 on 2016/09/06 by Jeff.Campeau Calculate buffer size for paks using the bitwindow override as needed Change 3115600 on 2016/09/07 by Luke.Thatcher [PLATFORM] [PS4] [~] Make the crash dump handler registration much earlier, to catch crashes in early engine init. - Fixed up places in FGenericCrashContext::SerializeContentToBuffer which used the command line. If we crash early, the command line may not have been initialized yet. - Added a GetNoInit function to FThreadHeartBeat to avoid creating the heart beat thread if we crash early, and the thread doesn't exist yet. Tested by calling abort() immediately inside int main(), and we get a valid crash dump that the crash handler service can consume. Change 3115676 on 2016/09/07 by Luke.Thatcher [PLATFORM] [~] Dev-Platform integration fix for original CL 3064888 in //Orion/Release-29.1 Add .exe and .dll to windows symbol upload file filters. Change 3115811 on 2016/09/07 by Josh.Adams Merging //UE4/Dev-Main to Dev-Platform (//UE4/Dev-Platform) Change 3115944 on 2016/09/07 by Michael.Trepka Implemented IsGamepadAttached() for Mac Change 3115948 on 2016/09/07 by Michael.Trepka Don't try to restore Help menu item on Mac if MenuBlock does not contain it Change 3116200 on 2016/09/07 by Jeff.Campeau Fix parameter ordering Change 3117660 on 2016/09/08 by Josh.Adams Merging //UE4/Dev-Main to Dev-Platform (//UE4/Dev-Platform) Change 3117728 on 2016/09/08 by Michael.Trepka Copy of CL 3117698 by Mike.Fricker Fixed regression with editor's Simulate mode where cursor would teleport back to the center of the viewport after every click - This bug was introduced in CL 3075932 from a borderless window cursor handling fix that was needed for games that capture the cursor Change 3117797 on 2016/09/08 by Peter.Sauerbrei Shader Resource compression Change 3117988 on 2016/09/08 by Brent.Pease - Solutiion generator will now pick x64 instead of AnyCPU for the default platform configuration - Fix what I think was a merge error in BuildGraph.cs Change 3118296 on 2016/09/08 by Daniel.Lamb Fixed crash with launch on. Couldnt' correctly detect previous generated ini settings. #test launch on QA game #jira UE-35741 Change 3118438 on 2016/09/08 by JohnHenry.Carawon Fix UAT compilation on Linux #UE-35745 Change 3118934 on 2016/09/08 by Jeff.Campeau Shader compression setting based on target platform instead of cooking host platform. #jira UE-35753 Change 3120190 on 2016/09/09 by Ben.Marsh Add missing Platform attribute to build script for Dev-Platform. [CL 3120378 by Josh Adams in Main branch]
2016-09-09 20:13:41 -04:00
if (MobileDevice.DeviceImpl.SecureStartService(iPhoneHandle, MobileDevice.CFStringMakeConstantString("com.apple.syslog_relay"), 0, ref hSyslogService) != 0)
{
Console.WriteLine("Connect: Couldn't Start syslog relay service");
return false;
}
return true;
}
public bool StartTCPRelayService(ref IntPtr TCPService, short Port = 8888)
{
Console.WriteLine("Connecting");
if (MobileDevice.DeviceImpl.Connect(iPhoneHandle) != 0)
{
Console.WriteLine("Connect: Failed to Connect");
return false;
}
Thread.Sleep(100);
int ConnectionID = MobileDevice.DeviceImpl.GetConnectionID(iPhoneHandle);
short NetPort = IPAddress.HostToNetworkOrder(Port);
int R = MobileDevice.DeviceImpl.USBMuxConnectByPort(ConnectionID, NetPort, ref TCPService);
if (R != 0)
{
Console.WriteLine("Connect: Couldn't usb mux by port " + R.ToString());
return false;
}
return true;
}
Copying //UE4/Dev-Platform to //UE4/Dev-Main (Source: //UE4/Dev-Platform @ 3120366) #lockdown Nick.Penwarden #rb none ========================== MAJOR FEATURES + CHANGES ========================== Change 2714591 on 2015/10/02 by Ben.Marsh Initial branch of files from Engine-Main (//UE4/Engine-Main) to Dev-Platform (//UE4/Dev-Platform) Change 2916715 on 2016/03/21 by Daniel.Lamb First pass at splitting out build cook run into into seperate scripts. Change 2948322 on 2016/04/19 by Nick.Shin update libwebsockets to v1.7.4 part 4 of 4 - doing this in stages for tracking purposes #jira UEPLAT-1246 - Update libWebsockets #jira UEPLAT-1221 - update websocket library #jira UEPLAT-1204 - Rebuild libwebsockets with SSL Change 2970016 on 2016/05/07 by Nick.Shin undo all of the following upgrades: - zlib - openssl - libcurl - libwebsockets and reset webrtc #jira UE-30298 - Fortnite and Orion crash on login Change 3059693 on 2016/07/21 by Josh.Adams Merging //UE4/Dev-Main to Dev-Platform (//UE4/Dev-Platform) Change 3061151 on 2016/07/22 by Niklas.Smedberg Fast ASTC texture compression, using ISPC. #jira UE-32308 Change 3061428 on 2016/07/22 by Peter.Sauerbrei Back out changelist 3061151 as it wasn't approved for submission Change 3061970 on 2016/07/22 by Steve.Cano Adding AdMob interstitital ad support for Android, including Blueprint functions #jira UE-33286 #ue4 #android Change 3062160 on 2016/07/22 by Mark.Satterthwaite Fix the fix for handling RHISetStreamSource overriding stride on Metal - not all MTLVertexDescriptors are equally hashable so do this ourselves. #jira UE-33355 Change 3062770 on 2016/07/24 by Brent.Pease UE-32397 Error Message displays as Unknown Error when failing to supply a Remote Build server for ios on Windows Change 3063227 on 2016/07/25 by Dmitry.Rekman Update hlslcc cross-compile after libc++ change. Change 3063314 on 2016/07/25 by Jeff.Campeau Xbox One DLL loading Receipts can be read back by request for target info Change 3063329 on 2016/07/25 by Mark.Satterthwaite CL #3046743 was breaking other samples in unexpected ways after a recent Main merge, so make a Metal-specific change to the shader instead and amend the MetalBackend to better match HLSL's handling of NaN/inf with common single-precision float intrinsics. This is sufficient to fix the AtmosphericFog and the recent regressions. #jira UE-33600 #jira UE-33028 #jira UE-27879 #jira UE-25802 Change 3063492 on 2016/07/25 by Brent.Pease UE-23846 - iOS Movie Player can't handle videos at resolutions that aren't multiples of 16 UE-33200 - A movie isn't played on iOS occasionally. Change 3063729 on 2016/07/25 by Dmitry.Rekman Linux: enable XGE on all platforms. #tests Cross-compiled a number of Linux targets on Windows. Change 3063732 on 2016/07/25 by Dmitry.Rekman Fixed formatting (spaces->tabs) in previous change. Change 3063750 on 2016/07/25 by Daniel.Lamb Added code to dump the cook modification delegate loads to log. Fixed the memory usage output log. #test cook paragon. Change 3063804 on 2016/07/25 by Daniel.Lamb Added cookpartialgc additional commandline option to uat. #test UFE Change 3064008 on 2016/07/25 by Mark.Satterthwaite For non-shipping builds conditionally bind a default uniform buffer in Metal and report an error if the slot was unbound, if our validation layer is enabled attempt to report the shader source in question. This relies on the shader compiler providing accurate information about uniform buffer bindings and won't fix all occurances of bad uniform usage (if a buffer is bound but too short the result will be GPU restarts or an error in Apple's validation layer - we can't detect this case) but will help debug the typical error of leaving an active slot unbound. #jira FORT-27685 Change 3064141 on 2016/07/25 by Jeff.Campeau Rebuild vpxmd.lib with delayed codegen disabled (fixes linker warning building Win64). Change 3065024 on 2016/07/26 by Nick.Shin Change filetype remove exclusive check out bit requested by or.coheni & nick.penwarden Change 3065274 on 2016/07/26 by Jonathan.Fitzpatrick DirectoriesToAlwaysStageAsUFS now properly filters out *.uasset and *.umap files This prevents the bug where cooked assets get trampled by staging their uncooked version on top of them during the UFS step Added a file filter to DirectoriesToAlwaysStageAsUFS for uasset and umap. Change 3066338 on 2016/07/27 by Mark.Satterthwaite Handle releasing an SRV/UAV & the source object within a single Metal command-buffer. #jira UE-33779 Change 3066789 on 2016/07/27 by Daniel.Lamb Realtime mode does not save any packages anymore unless they are ready. #test cookontheside, cookbythebook shooter game Change 3066847 on 2016/07/27 by Jeff.Campeau Fix define #2634 #jira UE-33813 Change 3068868 on 2016/07/28 by Mark.Satterthwaite Extend hlslcc's handling of switch-statements to allow implict casts from scalar bool, half & float as HLSL itself permits while also making sure it errors if the expression input is not scalar. This fixes shader compile errors in UT. Change 3070040 on 2016/07/29 by Dmitry.Rekman Delete Nadzorca. Change 3070947 on 2016/07/29 by Jeff.Campeau Perforce C++ API 2015.2 (includes debug libraries) Change 3073707 on 2016/08/02 by Daniel.Lamb Derived data cache commandlet runs resolve string asset references to load any string asset refereced packages from the map. Also process async results from shaders being compiled so they can have their memory resources released. #test DerivedDataCache commandlet shootergame. Change 3076613 on 2016/08/03 by Brent.Pease + UnrealTargetConfiguration is now passed into deploy and package methods + The UIRequiredDeviceCapabilities plist key now only considers the architectures from the corresponding target configuration (shipping or development) Change 3076668 on 2016/08/03 by Brent.Pease Back out changelist 3076613 Change 3077157 on 2016/08/04 by Daniel.Lamb Fixed up DLC staging so that it stages to the proper mount point. Fixes up include engine content in DLC staging paths. #test Made up shooter game DLC Change 3077191 on 2016/08/04 by Daniel.Lamb More smartly process async shader compilation if we are waiting for it. #test cook on the side shooter game cook by the book shooter game. Change 3077412 on 2016/08/04 by Mark.Satterthwaite Fix "iOS Metal-based build crashes at launch with sub-levels": - Slate should not bind the null RHI texture from an unitialised texture atlas - atlases only have a valid texture pointer once an entry has been added to them and in the template projects an empty sub-level doesn't add anything. - To prevent this kind of bug resurfacing and being so hard to track down add Metal shader binding validation to our validation layer as Apple's is incomplete on iOS and won't warn us about nil texture usage which causes these GPU restarts. This requires reworking our vertex declaration handling to be more efficient so that we can cache the pipeline reflection data as well as the pipeline objects. - Fix validation error of texture reallocation on loading template projects under Metal. #jira UE-30847 Change 3077958 on 2016/08/04 by Brent.Pease + UnrealTargetConfiguration is now passed into deploy and package methods + The UIRequiredDeviceCapabilities plist key now only considers the architectures from the corresponding target configuration (shipping or development) Change 3079503 on 2016/08/05 by Mark.Satterthwaite Initialise more variable types to 0 in Metal shaders to workaround Xcode 8 toolchain no longer doing this for us for "threadgroup shared" variables. Everything but structs and atomic's will now be initialised. #jira UE-33856 Change 3079737 on 2016/08/05 by Jeff.Campeau Add support for delay load DLLs on Xbox One Turn off warnging for missing PDBs to match VCToolchain.cs Change 3081005 on 2016/08/08 by Mark.Satterthwaite Fix-up Metal device name on AMD for macOS 10.12 which reports it correctly and enable tiled reflections on Intel from macOS 10.12 too as they now work. Change 3081557 on 2016/08/08 by Daniel.Lamb File-> Package saves all packages before starting packaging. #test File package first person template Change 3082215 on 2016/08/09 by Lee.Clark PS4 - Added 4k profile Change 3082412 on 2016/08/09 by Daniel.Lamb Fixed cook on the fly server not handling cook requests. #test Cook on the fly shooter game. Change 3082955 on 2016/08/09 by Dmitry.Rekman Linux: convert existing Strcat() uses to Strncat(). - Strcat() does not check destination size so can silently corrupt memory. While this was not observed, this conversion removes this concern altogether. Change 3083772 on 2016/08/10 by Luke.Thatcher [PLATFORM] [PS4] [+] Checking in PS4CrashHandler files so we have a copy in Perforce rather than just on the server. - Taken from \\devweb-02 and removed all the unused files/dependencies. - Created a publish profile pointing to \\devweb-02\Sites\PS4Services\PS4CrashHandlerDev so I'm not writing over the existing deployed crash handler. - Moved all code in the Page_Load event to inside the check for the HTTP method (POST) otherwise GET'ing the page from a browser will generate crash folders that hang around forever. Change 3085450 on 2016/08/11 by Lee.Clark PS4 - Fix mediaplayer pipeline allocation Change 3086360 on 2016/08/11 by Michael.Trepka Fixed a non-unity build error in Mac UnrealFrontend Change 3087224 on 2016/08/12 by Luke.Thatcher [PLATFORM] [PS4] [~] Refactor PS4 Crash Handler site - Removed CoreDumpHandler. Processing dump files is handled directly by an async thread within the aspx process. - Separated configuration values into their own class. Currently set to output to a testing directory, rather than the actual crash reporter landing zone. - Added a debug upload page to allow manual submission of .orbisdmp/.txt settings files, accessible by GET'ing Default.aspx. - Added logging. Logs self-delete after 30 days. Testing required before we switch to the new system. #jira UE-34504 #jira OR-26886 Change 3087626 on 2016/08/12 by Dmitry.Rekman PR #2689: Fix copying/duplicating failing on Linux (UE-34586). - Contributed by Web-eWorks. Change 3087991 on 2016/08/12 by Mark.Satterthwaite Initial AVFoundation implementation of Media Framework for Mac, iOS & tvOS. - Video playback occurs via AVPlayerItemVideoOutput's attached to the AVPlayerItem's output. This means gathering video samples is trivial. - Metal texture updates occur by wrapping the texture object provided by AVF - for Mac this is simple as it can bind to the IOSurface directly, for iOS/tvOS we have to create a CVMetalTextureCache and allocate our texture from there. - OpenGL and OpenGLES currently have to lock the pixel buffer and upload to a texture the old fashioned way - this should be revisited when there is time. - Subtitles/Captions are captured using AVPlayerItemLegibleOutput which also connects to the AVPlayerItem's output. - On Mac audio samples are returned by manually reading from the stream using an AVAssetReaderTrackOutput, including manual seeking and synching. - On iOS/tvOS the audio is played directly by AVPlayer because the IOSAudio system can't handle procedural buffers - otherwise it could reuse the Mac code. - AVFoundation does not support AVI - that's an obsolete Microsoft/Windows file-format. - Only 'file://' URLs are supported - streaming would require a totally different audio solution (using MTAudioProcessingTap) and has many more edge and failure cases that would need to be handled. #jira UE-34315 Change 3088790 on 2016/08/15 by Luke.Thatcher [PLATFORM] [PS4] [~] Hook new PS4 crash handler up to the crash reporter website. - Removed indentation from generated crash context XML file. The crash reporter process does manual XML parsing which doesn't correctly handle whitespace at the start of lines. - Switched the final output folder to match the one the crash reporter process is watching. - Hide upload form on a config variable. #jira UE-34504 #jira OR-26886 Change 3089060 on 2016/08/15 by Luke.Thatcher [PLATFORM] [PS4] [!] Change PS4 crash handler log file extension to ".ps4chlog", otherwise the crash reporter site attaches the wrong log file to the crash report. Allowed showing of debug upload form via "Default.aspx?showform=1" query string. #jira UE-34504 #jira OR-26886 Change 3089089 on 2016/08/15 by Mark.Satterthwaite Duplicated changes to AppleMovieStreamer from CL #3088149. #jira UE-34315 Change 3089460 on 2016/08/15 by Mark.Satterthwaite Duplicate CL #3080971: Workaround a macOS 10.12 Beta bug on some Metal drivers that can't initialise temporary/local variable arrays, only those that are marked threadgroup shared. #jira UE-34355 Change 3089465 on 2016/08/15 by Mark.Satterthwaite For Metal shader translation retain more precision for float constants -1.0f >< 1.0f by emitting them in scientific notation - prevents Hammersley constant amongst others from being flushed to 0. Change 3089902 on 2016/08/15 by Daniel.Lamb Changed the next compiling ID to the correct compiling ID. #test Cook Change 3089903 on 2016/08/15 by Daniel.Lamb Cooker monitors config useage during cook and uses those settings to invalidate cooked content instead of all config settings. Change 3090114 on 2016/08/16 by Luke.Thatcher [PLATFORM] [PS4] [~] Minor change to PS4 settings text on crash handler site. Change 3090949 on 2016/08/16 by Nick.Shin WebSocketNetDriver crash fix filled in missing chunk of code that calls PacketHandler's "packet modifiers" #jira UE-25492 HTML5 Client cannot connect to Windows Server #jira UE-30880 WinServer crashes when NetDriver is set to WebSocket and Client attempts to connect via websocket #code.review john.pollard john.barrett Change 3091265 on 2016/08/16 by Brent.Pease Add IOS support to HarfBuzz Change 3091267 on 2016/08/16 by Brent.Pease Add references to fix mono build Change 3091291 on 2016/08/16 by Nick.Shin CIS warning fix #jira UE-25492 HTML5 Client cannot connect to Windows Server #jira UE-30880 WinServer crashes when NetDriver is set to WebSocket and Client attempts to connect via websocket Change 3091781 on 2016/08/17 by Joe.Barnes UE-33640: Exposed UPrimitiveComponent::IsAnyRigidBodyAwake() to Blueprints. Change 3092687 on 2016/08/17 by Daniel.Lamb Added support for using binned allocator in cooker instead of tbb. #test Cook shootergame. Change 3093867 on 2016/08/18 by Mark.Satterthwaite Use a read/write mutex to protect access to Metal's internal shader pipeline caches so that parallel threads can progress in the common case where new shaders are not being compiled. Change 3093950 on 2016/08/18 by Mark.Satterthwaite Change the Mac GPU identification code to cope with AMD's new naming scheme on 10.12. Change 3093951 on 2016/08/18 by Mark.Satterthwaite More SCW threads on Mac - they work now. Change 3093960 on 2016/08/18 by Mark.Satterthwaite Increase the default number of command-buffers on Mac because bigger games overflow the current limit of 64 per queue. Change 3096493 on 2016/08/22 by Jeff.Campeau Use Xbox version of DirectX include. Change 3097509 on 2016/08/23 by Luke.Thatcher [PLATFORM] [PS4] [+] Refactor PS4 Symbol Publish - Moved the SymStore task from Win.Automation to BuildGraph.Automation, and made it more generic. - The specifics of uploading symbols are now implemented in the platform tool chain, alongside StripSymbols(). - Re-generated the build graph schema file. - Removed the old PS4 symbols upload path in the package step. Modified OrionBuild.xml to publish symbols for all PS4 dev, test and shipping config builds of OrionClient. Change 3097635 on 2016/08/23 by Luke.Thatcher [PLATFORM] [PS4] [+] Refactor Age Symbols task in UAT. - Moved the AgeStore task from Win.Automation to BuildGraph.Automation and made it more generic. - Symbol server directory structure is now defined by the platform tool chain, which the common task uses to clean out old symbols. - Added a "filter" parameter to prevent age tasks deleting symbols from unrelated builds in shared symbol servers. Modified OrionBuild.xml to age both the Windows and PS4 symbol stores. Change 3097713 on 2016/08/23 by Luke.Thatcher [PLATFORM] [PS4] [+] Enable new PS4 crash handler server - Created live deployment profile and applied the required config file changes. Change 3099214 on 2016/08/24 by Luke.Thatcher [PLATFORM] [PS4] [!] Fix compile error in PS4 tool chain. For some reason, this only breaks ocassionally. Maybe we're alternating between the 2013 and 2015 C# compilers depending on what initiates the build (e.g. Visual Studio vs GenerateProjectFiles)? Change 3099222 on 2016/08/24 by Luke.Thatcher [PLATFORM] [PS4] [+] Added PS4 support for FPlatformMisc::MessageBoxExt using the MsgDialog library. - Note, only one and two button message dialogs are supported (limitation of MsgDialog). Change 3099260 on 2016/08/24 by Luke.Thatcher [PLATFORM] [PS4] [~] Better PS4 exit function. Calls quick_exit instead of abort when we've not asserted. Allows for a "cleaner" forced exit without generating a crash dump. Change 3101192 on 2016/08/25 by Josh.Adams Merging //UE4/Dev-Main to Dev-Platform (//UE4/Dev-Platform) Change 3101944 on 2016/08/25 by Daniel.Lamb Ask to save the current level when we are using launch on. Change 3102036 on 2016/08/25 by Nick.Shin check for minimum expected size upon data received from network #jira UE-13657 - HTML5 plugin OnRawRecieve overflow Change 3102115 on 2016/08/25 by Brent.Pease - Fix small errors that probably only show up in the mac mono build #code.review peter.sauerbrei Change 3102747 on 2016/08/26 by Jeremiah.Waldron Re-submitting OnlineSubsystemGameCircle with TPS permission for Amazon SDK - Also fixed the plugin to remove any related files from the final package when IAP is disabled or GameCircle support itself is disabled with the plugin still enabled - Added support for new AlreadyOwned IAP response code as well which is already used for GooglePlay and IOS Change 3102900 on 2016/08/26 by Nick.Shin since last checkin (CL: 2981945) - prints are crashing the browser - this change will allow browser to print the details via console.log() #jira UE-26047 - HTML5 HTTP Response Headers not implemented Change 3103130 on 2016/08/26 by Brent.Pease UE-24679 - Enable the ability to change ports for a firewall to pass them through rsync Change 3103225 on 2016/08/26 by Daniel.Lamb Fixed issue with warning which would cause crash. Change 3103425 on 2016/08/26 by Dmitry.Rekman Enable offscreen GL rendering without X. - Added new video subsystem to SDL that is uses EGL to initialize the context. - Most windoing functions stubbed. - Also added a new test case to TestPAL for easier debugging. Change 3104743 on 2016/08/29 by Brent.Pease Support remote offline metal shader compilation Change 3105051 on 2016/08/29 by Brent.Pease UE-2382 - TASK: MobleMVP: iOS: Add ability to view iOS device console output in the editor UFE - IOS Automation will now create a thread to collect the console logs from the device and send them to C# Console output while the app is running on device - Made ProcessResult an interface (IProcessResult) which ProcessResult implements. This allows platforms to provide their own implementation if needed. - Moved the RunLoop related parts of CoreFoundation into MobileDevice.cs Change 3105053 on 2016/08/29 by Brent.Pease - IOS dll's as part of the last check-in Change 3106853 on 2016/08/30 by Jeff.Campeau Implement FD3D11DynamicRHI::RHICreateComputeFence to prevent memory overwrite Change 3107361 on 2016/08/30 by Dmitry.Rekman Renderer: changes to allow postproc delegates. Change 3107362 on 2016/08/30 by Dmitry.Rekman Plugin with a CUDA postproc example. - Linux version only. Runs under a headless GL too (without X). - Disabled during cross-compilation, can be compiled natively only. - CUDA kernel should be compiled separately, CMakefile with compilation attached (can be used to generate VStudio projects as well). - To test the output, run under the debugger, interrupt and set global variable GSaveTheOutput to 50 (this will write out kernel output buffer 50 times as .bmp files into working directory). Change 3107913 on 2016/08/31 by Daniel.Lamb Fixed loading of cooked content in the editor. Change 3107916 on 2016/08/31 by Daniel.Lamb Added error case when shader compilation fails to notify shader. #test Cook shooter game. Change 3108080 on 2016/08/31 by Josh.Adams - Fixed PS4Automation compile errors Change 3109077 on 2016/08/31 by Brent.Pease Fix C# debug builds by specifying x64 and add reference to MobileDeviceInterface Change 3110086 on 2016/09/01 by Dmitry.Rekman Fix race condition in PThread runnable (UE-35074). - Instead of relying on busy-wait, join the threads. This prevents race between PostRun() (executed in the context of the thread) and FPThreadRunnableThread() destructor (see UE-34909). - Do not use an invalid value for pthread_t, since there's none. Change 3110172 on 2016/09/01 by Dmitry.Rekman Fixed a crash exiting VR Preview on Windows GL4 (UE-28708). - PR #2188 submitted by ardneran. Change 3110313 on 2016/09/01 by Josh.Adams Merging //UE4/Dev-Main to Dev-Platform (//UE4/Dev-Platform) Change 3111134 on 2016/09/01 by Dmitry.Rekman UBT: prevent mono from hanging on Ctrl-C. - Sometimes Ctrl-C can cause thread creation to fail. Without this change, UBT would lock up. Change 3111171 on 2016/09/01 by Brent.Pease Move all C# projects to use the x64 Platform for consistency with other changes made to move to the x64 Platform Change 3111177 on 2016/09/01 by Dmitry.Rekman Fix Linux build on systems without CUDA (UE-35460). Change 3111548 on 2016/09/02 by Luke.Thatcher [PLATFORM] [PS4] [!] Fix for PS4 iterative deployment. - Changes in Dev-Mobile broke the deployment manifests, as PS4 was now using the wrong filename when creating delta and obsolete file lists. Change 3111863 on 2016/09/02 by Dmitry.Rekman Better fix for build without CUDA (UE-35460). Change 3112738 on 2016/09/02 by Mark.Satterthwaite Fix the pausing particles on Metal - one line bug in the Metal query implementation meant that the first query wouldn't return the correct result for no good reason. #jira UE-34989 Change 3114579 on 2016/09/06 by Chris.Babcock Fix Vulkan include path in NDK check (contributed by geediiiiky) #jira UE-35490 #github #2758 #ue4 #android Change 3115115 on 2016/09/06 by Jeff.Campeau Calculate buffer size for paks using the bitwindow override as needed Change 3115600 on 2016/09/07 by Luke.Thatcher [PLATFORM] [PS4] [~] Make the crash dump handler registration much earlier, to catch crashes in early engine init. - Fixed up places in FGenericCrashContext::SerializeContentToBuffer which used the command line. If we crash early, the command line may not have been initialized yet. - Added a GetNoInit function to FThreadHeartBeat to avoid creating the heart beat thread if we crash early, and the thread doesn't exist yet. Tested by calling abort() immediately inside int main(), and we get a valid crash dump that the crash handler service can consume. Change 3115676 on 2016/09/07 by Luke.Thatcher [PLATFORM] [~] Dev-Platform integration fix for original CL 3064888 in //Orion/Release-29.1 Add .exe and .dll to windows symbol upload file filters. Change 3115811 on 2016/09/07 by Josh.Adams Merging //UE4/Dev-Main to Dev-Platform (//UE4/Dev-Platform) Change 3115944 on 2016/09/07 by Michael.Trepka Implemented IsGamepadAttached() for Mac Change 3115948 on 2016/09/07 by Michael.Trepka Don't try to restore Help menu item on Mac if MenuBlock does not contain it Change 3116200 on 2016/09/07 by Jeff.Campeau Fix parameter ordering Change 3117660 on 2016/09/08 by Josh.Adams Merging //UE4/Dev-Main to Dev-Platform (//UE4/Dev-Platform) Change 3117728 on 2016/09/08 by Michael.Trepka Copy of CL 3117698 by Mike.Fricker Fixed regression with editor's Simulate mode where cursor would teleport back to the center of the viewport after every click - This bug was introduced in CL 3075932 from a borderless window cursor handling fix that was needed for games that capture the cursor Change 3117797 on 2016/09/08 by Peter.Sauerbrei Shader Resource compression Change 3117988 on 2016/09/08 by Brent.Pease - Solutiion generator will now pick x64 instead of AnyCPU for the default platform configuration - Fix what I think was a merge error in BuildGraph.cs Change 3118296 on 2016/09/08 by Daniel.Lamb Fixed crash with launch on. Couldnt' correctly detect previous generated ini settings. #test launch on QA game #jira UE-35741 Change 3118438 on 2016/09/08 by JohnHenry.Carawon Fix UAT compilation on Linux #UE-35745 Change 3118934 on 2016/09/08 by Jeff.Campeau Shader compression setting based on target platform instead of cooking host platform. #jira UE-35753 Change 3120190 on 2016/09/09 by Ben.Marsh Add missing Platform attribute to build script for Dev-Platform. [CL 3120378 by Josh Adams in Main branch]
2016-09-09 20:13:41 -04:00
public string GetSyslogData()
{
return MobileDevice.DeviceImpl.ServiceConnectionReceive(hSyslogService);
}
public void StopSyslogService()
{
MobileDevice.DeviceImpl.StopSession(iPhoneHandle);
MobileDevice.DeviceImpl.Disconnect(iPhoneHandle);
}
public int TunnelData(String Buffer, IntPtr TCPService)
{
int Ret = 0;
try
{
Byte[] utf8Bytes = System.Text.Encoding.UTF8.GetBytes(Buffer);
int BufLength = Buffer.Length;
Ret = TunnelBuffer(utf8Bytes, BufLength, TCPService);
Thread.Sleep(50);
}
catch (Exception e)
{
Console.WriteLine("Exception: {0}", e);
}
return Ret;
}
public int TunnelBuffer(Byte[] Buffer, int Length, IntPtr TCPService)
{
int Ret = 0;
try
{
IntPtr intPtr_aux = Marshal.UnsafeAddrOfPinnedArrayElement(Buffer, 0);
Ret = MobileDevice.DeviceImpl.SocketSend(TCPService, intPtr_aux, Length);
}
catch (Exception e)
{
Console.WriteLine("Exception: {0}", e);
}
return Ret;
}
public void CloseTunnel(IntPtr TCPService)
{
try
{
MobileDevice.DeviceImpl.SocketClose(TCPService);
}
catch (Exception e)
{
Console.WriteLine("Exception: {0}", e);
}
}
#region Private Methods
public bool ConnectToPhone()
{
SetLoggingLevel(7);
// Make sure we can connect to the phone and that it has been paired with this machine previously
if (MobileDevice.DeviceImpl.Connect(iPhoneHandle) != 0)
{
Console.WriteLine("Connect: Failed to Connect");
return false;
}
if (MobileDevice.DeviceImpl.IsPaired(iPhoneHandle) != 1)
{
Console.WriteLine("Connect: Device is not paired");
return false;
}
if (MobileDevice.DeviceImpl.ValidatePairing(iPhoneHandle) != 0)
{
Console.WriteLine("Connect: Pairing not valid");
return false;
}
// Start a session
if (MobileDevice.DeviceImpl.StartSession(iPhoneHandle) == 1)
{
Console.WriteLine("Connect: Couldn't start session");
return false;
}
connected = true;
return true;
}
public bool ConnectToBundle(string BundleName)
{
Reconnect();
TypedPtr<CFString> CFBundleName = MobileDevice.CFStringMakeConstantString(BundleName);
// Open the bundle
int Result = MobileDevice.DeviceImpl.CreateHouseArrestService(iPhoneHandle, CFBundleName, IntPtr.Zero, out AFCCommsHandle);
if (Result != 0)
{
Console.WriteLine("Failed to connect to bundle '{0}' with {1}", BundleName, MobileDevice.GetErrorString(Result));
return false;
}
return true;
}
private void DfuConnectCallback(ref AMRecoveryDevice callback)
{
OnDfuConnect(new DeviceNotificationEventArgs(callback));
}
private void DfuDisconnectCallback(ref AMRecoveryDevice callback)
{
OnDfuDisconnect(new DeviceNotificationEventArgs(callback));
}
private void RecoveryConnectCallback(ref AMRecoveryDevice callback)
{
OnRecoveryModeEnter(new DeviceNotificationEventArgs(callback));
}
private void RecoveryDisconnectCallback(ref AMRecoveryDevice callback)
{
OnRecoveryModeLeave(new DeviceNotificationEventArgs(callback));
}
private void InternalDeleteDirectory(string path)
{
string full_path = FullPath(CurrentDirectory, path);
string[] contents = GetFiles(path);
for (int i = 0; i < contents.Length; i++)
{
DeleteFile(full_path + "/" + contents[i]);
}
contents = GetDirectories(path);
for (int i = 0; i < contents.Length; i++)
{
InternalDeleteDirectory(full_path + "/" + contents[i]);
}
DeleteDirectory(path);
}
static char[] path_separators = { '/' };
internal string FullPath(string path1, string path2)
{
if ((path1 == null) || (path1 == String.Empty))
{
path1 = "/";
}
if ((path2 == null) || (path2 == String.Empty))
{
path2 = "/";
}
string[] path_parts;
if (path2[0] == '/')
{
path_parts = path2.Split(path_separators);
}
else if (path1[0] == '/')
{
path_parts = (path1 + "/" + path2).Split(path_separators);
}
else
{
path_parts = ("/" + path1 + "/" + path2).Split(path_separators);
}
string[] result_parts = new string[path_parts.Length];
int target_index = 0;
for (int i = 0; i < path_parts.Length; i++)
{
if (path_parts[i] == "..")
{
if (target_index > 0)
{
target_index--;
}
}
else if ((path_parts[i] == ".") || (path_parts[i] == ""))
{
// Do nothing
}
else
{
result_parts[target_index++] = path_parts[i];
}
}
return "/" + String.Join("/", result_parts, 0, target_index);
}
#endregion // Private Methods
}
}