#lockdown Nick.Penwarden
#rb none
==========================
MAJOR FEATURES + CHANGES
==========================
Change 3209340 on 2016/11/23 by Ben.Marsh
Convert UE4 codebase to an "include what you use" model - where every header just includes the dependencies it needs, rather than every source file including large monolithic headers like Engine.h and UnrealEd.h.
Measured full rebuild times around 2x faster using XGE on Windows, and improvements of 25% or more for incremental builds and full rebuilds on most other platforms.
* Every header now includes everything it needs to compile.
* There's a CoreMinimal.h header that gets you a set of ubiquitous types from Core (eg. FString, FName, TArray, FVector, etc...). Most headers now include this first.
* There's a CoreTypes.h header that sets up primitive UE4 types and build macros (int32, PLATFORM_WIN64, etc...). All headers in Core include this first, as does CoreMinimal.h.
* Every .cpp file includes its matching .h file first.
* This helps validate that each header is including everything it needs to compile.
* No engine code includes a monolithic header such as Engine.h or UnrealEd.h any more.
* You will get a warning if you try to include one of these from the engine. They still exist for compatibility with game projects and do not produce warnings when included there.
* There have only been minor changes to our internal games down to accommodate these changes. The intent is for this to be as seamless as possible.
* No engine code explicitly includes a precompiled header any more.
* We still use PCHs, but they're force-included on the compiler command line by UnrealBuildTool instead. This lets us tune what they contain without breaking any existing include dependencies.
* PCHs are generated by a tool to get a statistical amount of coverage for the source files using it, and I've seeded the new shared PCHs to contain any header included by > 15% of source files.
Tool used to generate this transform is at Engine\Source\Programs\IncludeTool.
[CL 3209342 by Ben Marsh in Main branch]
#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]
#lockdown Nick.Penwarden
#rb none
==========================
MAJOR FEATURES + CHANGES
==========================
Change 3118534 on 2016/09/08 by Steve.Cano
Certain non-looping SFX would not properly fire "Stop" events when the effect was finished, and therefore Sound Mixes that should end at the end of a SFX (such as ducking the BGM volume) were not properly finishing. Fixing the IsSourceFinished call to check the Position of the player to determine if we are actually done playing, which was not working properly before for PCM sounds.
#jira UE-35016
#ue4
#android
Change 3119125 on 2016/09/09 by Dmitriy.Dyomin
Mobile launcher profile wizard:
Fixed case where DLC will not be built if user selects non Development build configuration
Fixed case where project maps will be empty if UE4 and project located on different drives
Change 3122584 on 2016/09/13 by Allan.Bentham
Add simple clip plane for planar reflections.
#jira UE-32449
Change 3129390 on 2016/09/16 by Chris.Babcock
Fixed ES 3.1 detection to also support devices returning ES 3.2 support (eg Note 7)
#jira UE-35598
Change 3129867 on 2016/09/18 by Jack.Porter
Fixed ES 3.1 detection to also support devices returning ES 3.2 support (eg Note 7)
#jira UE-35598
Change 3131961 on 2016/09/20 by Allan.Bentham
Fix missing editor widgets and gamma incorrectness when mobileHDR == false.
Fix editor widget rendering when hdr encoding is active.
#jira UE-34281
Change 3132717 on 2016/09/20 by Chris.Babcock
Add $S(ProjectDir) to UPL
#jira UE-35483
#ue4
Change 3132940 on 2016/09/20 by Chris.Babcock
Corrected case for some include files (contributed by Yukariin)
#jira UE-33816
#PR #2636
#ue4
#android
Change 3134098 on 2016/09/21 by Allan.Bentham
Mobile CSM shadow quality controllable via quality levels.
#jira UEMOB-74
Change 3134931 on 2016/09/21 by Chris.Babcock
Allow Windows types in vulkan.h
#jira UE-36270
#ue4
#vulkan
Change 3135380 on 2016/09/21 by Dmitriy.Dyomin
Plugin which exposes some of BuildPatchServices functionality to BP. Inteded to be used on mobile platforms for donwloading game content.
Right now misses: IOS download directory and iOS WiFi detection
#jira UEMOB-157
Change 3136004 on 2016/09/22 by Allan.Bentham
Add project option to disable vertex fog on mobile.
Vertex fog is now enabled even when mobile HDR is not.
#jira UEMOB-148
Change 3137377 on 2016/09/22 by Dmitriy.Dyomin
Fix compile error from CL# 3135380
Change 3139571 on 2016/09/26 by Jack.Porter
Applied deferred change CL 3101462 to mobile to make planar reflections no longer update GPU particles
Change 3139663 on 2016/09/26 by Jack.Porter
Include Android shader cache files when packaging
Change 3142839 on 2016/09/28 by Dmitriy.Dyomin
Added WiFi connection detection on iOS
Change 3142845 on 2016/09/28 by Jack.Porter
Fixed various issues with TcpMessageTransport discovered when transferring automation testing screenshots from mobile devices
- socket not readable or writable is not an error condition if output buffer is full
- messages were previously limited to 64kb but screenshots overflowed this
- messages over 8kb were not reliably received as the inbound buffer was full so the available bytes was always less than the message length
- sending large messages was not reliable due to the output buffer being full
Change 3143280 on 2016/09/28 by Jack.Porter
Clear out UnbuiltInstanceBoundsList when async building a tree with no instances
Change 3143282 on 2016/09/28 by Jack.Porter
Fix issue where client functional tests in the current map do not appear on clients running with cooked content.
Problem is that the AssetRegistry uses in-memory metadata created on load for currently-loaded assets, but cooked content only has the serialized AssetRegistry and individual assets do not contain any metadata.
Change 3143808 on 2016/09/28 by Steve.Cano
Assume that the app starts in focus at startup and don't wait for an "APP_EVENT_STATE_WINDOW_GAINED_FOCUS" event to fire, as this event will not come down from SplashActivity since it is not a NativeActivity. If the user then rotates the device in Sensor or FullSensor orientation during SplashActivity and forces an eglSurface recreation, the initial Create will properly execute if we're "in focus". Previously, the create-destroy-create cycle would not properly execute due to the EventManager thinking the app was not yet in focus, and would cause the second create to get a 0x3003 error (EGL_BAD_ALLOC)
#jira UE-35004
#ue4
#android
Change 3144880 on 2016/09/29 by Jack.Porter
Merging //UE4/Dev-Main to Dev-Mobile (//UE4/Dev-Mobile)
Change 3146220 on 2016/09/30 by Dmitriy.Dyomin
Adjusted device button style to make it more readable.
#jira UE-21881
Change 3146280 on 2016/09/30 by Dmitriy.Dyomin
Replaced IBuildManifest::ComputeDownloadSize with a new function
Change 3146302 on 2016/09/30 by Allan.Bentham
Added more stringent checks for ES3.1 compatibility
#jira UE-36241
Change 3146435 on 2016/09/30 by Jack.Porter
Prevent landscape grass being duplicated for PIE, causing ensure
#jira UE-36531
Change 3147532 on 2016/09/30 by Chris.Babcock
Use .sh extension for Android install scripts on Linux
#jira UE-36669
#ue4
#android
#linux
Change 3149851 on 2016/10/04 by Dmitriy.Dyomin
Mobile: Added custom depth rendering
Mobile: Added support for CustomDepth and SceneDepth in post-process materails
Change 3149852 on 2016/10/04 by Dmitriy.Dyomin
Fixed comments for SortBasePass console variable
Change 3149857 on 2016/10/04 by Jack.Porter
Remove dead code in ProceduralFoliageComponentDetails.cpp
Change 3149863 on 2016/10/04 by Jack.Porter
Merging //UE4/Dev-Main to Dev-Mobile (//UE4/Dev-Mobile)
Change 3149896 on 2016/10/04 by Dmitriy.Dyomin
Fixed: SkyLight makes level entire green on Android devices
#jira UE-34469
Change 3150102 on 2016/10/04 by Jack.Porter
Bring Protostar 4.13 fixes back to Dev-Mobile
Engine
- MaxDescriptorSets = 16384 to prevent crash on Mali
- Include texture formats in FRenderTargetLayoutHashableStruct to solve RT aliasing issue
- Use ERenderTargetLoadAction::EClear for planar reflection target to work around Adreno issue
- Default Adreno to SPIR-V
Contents
- Disable fog, reduce CSM shadow quality, fix device profiles
- Add PSO cache
Change 3150113 on 2016/10/04 by Jack.Porter
Ensure automation testing screenshots have Alpha=255 (fixes automation screenshots on Mobile)
Change 3150231 on 2016/10/04 by Jack.Porter
Use a new SessionID GUID each time you use the launcher to launch a session.
Change 3150608 on 2016/10/04 by Jack.Porter
Changes for automated testing screenshots on Android.
- Prevent automation screenshots from changing resolution on platforms with fixed resolution
- Set GRHIAdapterInternalDriverVersion for OpenGL and Vulkan
- Parse ImgTec/ARM/Qualcomm GRHIVendorId on OpenGL
- Added helper to convert GRHIVendorId to string
Change 3151318 on 2016/10/04 by Jack.Porter
Fixed compile error with AdapterVendor
Change 3151366 on 2016/10/04 by Jack.Porter
Prevent FTcpMessageTransportConnection deadlock on device disconnect
Change 3151397 on 2016/10/05 by Dmitriy.Dyomin
More consistent BP categories for Mobile Patching utils
Change 3151576 on 2016/10/05 by Dmitriy.Dyomin
Added on screen warning for invalid reflection captures, can be seen only in game running with FeatureLevel < SM4 and no valid capture data
Change 3151795 on 2016/10/05 by Dmitry.Rekman
Linux: update UBT to use a v8 multiarch toolchain.
- Also added toolchain build scripts and ct-ng configs.
Change 3151966 on 2016/10/05 by Allan.Bentham
Add mobile support for inverse opacity to mobile scene captures as well as SCS_SceneColorSceneDepth and SCS_SceneDepth.
#jira UEMOB-106
Change 3152664 on 2016/10/05 by Chris.Babcock
Merging //UE4/Main to Dev-Mobile (//UE4/Dev-Mobile)
Change 3152675 on 2016/10/05 by Will.Fissler
Fixed patching so that it searches for pak files as well as pkg files.
#test Patch for QAGame
Change 3152728 on 2016/10/05 by Chris.Babcock
Update ReflectionCaptureDDCVer (need to resave maps)
Change 3152910 on 2016/10/05 by Dmitry.Rekman
Linux: Fix toolchain for non-AutoSDKs (github) case (UE-36899).
Change 3152966 on 2016/10/05 by Dmitry.Rekman
Linux: Fix test for the installed SDK (UE-36899).
Change 3153004 on 2016/10/05 by Dmitry.Rekman
Linux: fix CIS (UT server case-sens errors).
Change 3153694 on 2016/10/06 by Jack.Porter
Rollback ReflectionCaptureDDCVer change as bug intended to fix UE-36919 does not repro
Change 3154766 on 2016/10/07 by Jack.Porter
Merging //UE4/Dev-Main to Dev-Mobile (//UE4/Dev-Mobile)
Change 3154833 on 2016/10/07 by Jack.Porter
Fix merge error of MobileShadingRenderer.cpp
Change 3154848 on 2016/10/07 by Allan.Bentham
Fix mobile scene capture's clear code
Change 3154875 on 2016/10/07 by Allan.Bentham
fix vk build issues
Change 3154941 on 2016/10/07 by Allan.Bentham
Fix gearvr build fail
Change 3154950 on 2016/10/07 by Allan.Bentham
Fix shadowed local variable vk build warning on android.
Change 3155909 on 2016/10/07 by Ben.Marsh
UBT: Attempt to work around C1076 error ("internal heap limit reached: use /Zm to specify a higher limit"), encountered when building with XGE. Specify the AutoReserveMemory attribute on XGE tool tasks that manipulate precompiled headers.
[CL 3155988 by Chris Babcock in Main branch]
==========================
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]
==========================
MAJOR FEATURES + CHANGES
==========================
Change 2731596 on 2015/10/16 by Keith.Judge
Fast Semantics - Add deferred resource deletion queue to make deleted resources be actually deleted a number of frames later so that the GPU is definitely finished with them. Hooked up the temporary SRVs for dynamic VBs as a first step.
Change 2764244 on 2015/11/12 by Keith.Judge
Stop creating/deleting SRVs for dynamic buffers all the time. Instead add a new view when a new buffer is cycled and keep them around until the buffer is dead.
Change 2936695 on 2016/04/07 by Mark.Satterthwaite
Disable Metal on Mac OS X versions prior to 10.11.4 because their drivers are too buggy and lots of issues users will encounter were fixed in 10.11.4.
Change 2936701 on 2016/04/07 by Mark.Satterthwaite
Re-enable DistanceFieldAO on Mac Metal, but disable the support for Heightfield composition into the DistanceFieldAO as that currently requires Read+Write texture support which isn't present in Metal yet.
Change 2936702 on 2016/04/07 by Mark.Satterthwaite
Enable capsule shadows on Metal SM5 for Mac Paragon.
Change 2936704 on 2016/04/07 by Mark.Satterthwaite
Re-add Metal_MacES3_1 entries in RHIDefinition functions - not quite sure how they disappeared...
Change 2936706 on 2016/04/07 by Mark.Satterthwaite
Fix implementation of BeginRenderingPrePass to only clear the depth+stencil buffers when it is asked to - this fixes LOD fading in Paragon on Mac when parallel execution is enabled. The parallel contexts were being instructed to clear the pre-pass data which was then fouling up all the subsequent rendering.
Change 2936708 on 2016/04/07 by Mark.Satterthwaite
Extend workaround from 2905206 for UE-27818 to Metal as well as OpenGL - it isn't permissable to have an unbound resource on these APIs as you aren't allowed to make the assumption than an if-branch will protect against null dereference on the GPU.
Change 2936737 on 2016/04/07 by Mark.Satterthwaite
Changes to reduce Metal's peak memory usage when streaming texture data in when loading levels:
- When uploading data to Shared memory Metal textures dispose of the source buffer immediately as it won't be required after the call to replaceRegion.
- Add an optional CVar ("rhi.Metal.MaxOutstandingAsyncTexUploads") and keep a count of outstanding async. texture uploads - really this might be better as a memory count - if teh current outstanding count is greater than the specified CVar wait for all operations to complete before purging the used buffers. By default the CVar is set to 0 which disables the tracking and the game will use all available memory.
Change 2936741 on 2016/04/07 by Mark.Satterthwaite
For Metal don't use a texture-view unless the mip-range or texture format is different - we only create a texture-view if we absolutely have to in order to avoid performance reductions on some vendors. When this happens we'll have to update the SRV to point to the new source texture but that can be handled on bind.
Change 2936753 on 2016/04/07 by Mark.Satterthwaite
Mutex the pipeline cache inside each Metal bound-shader-state - with parallel execution this can be modified from multiple threads.
Change 2936758 on 2016/04/07 by Mark.Satterthwaite
Don't eliminate redundant Metal command-encoders on Intel either - this only seems to work correctly on AMD...
Change 2936762 on 2016/04/07 by Mark.Satterthwaite
Validate that parallel contexts aren't asked to clear render-targets (incl depth/stencil) as this won't work as desired - each context will end up clearing the contents meaning none of the rendering will propagate which is probably not what you intend.
Change 2936765 on 2016/04/07 by Mark.Satterthwaite
Fix alignment of blit-commands between textures & buffers in Metal. Mac Metal has no minimum alignment and allows tightly packed rows, but mobile H/W has a fixed row alignment of 64-bytes for linear texture data.
Change 2936767 on 2016/04/07 by Mark.Satterthwaite
Remove the workaround for old Mac OS X AMD cards not supporting frame-buffer sRGB - I have a feeling it causes more problems than it solves.
Change 2936773 on 2016/04/07 by Mark.Satterthwaite
Warn the user when trying to run on OpenGL 3.2 GPUs that they are running unsupported and there may be rendering errors and performance problems.
Change 2936777 on 2016/04/07 by Mark.Satterthwaite
In MetalRHI move the calls that reset the state-cache and command-encoder to EndFrame and fix the fallout. Hopefully this will eliminate the problem where a draw call fails because a call to SetRenderTargets hasn't been made since the last time the command-buffer was submitted.
Change 2936788 on 2016/04/07 by Daniel.Lamb
PR #2193: Commandlet tweaks: Fixup Redirects and Cook-on-the-fly Server (Contributed by FineRedMist)
Change 2936799 on 2016/04/07 by Mark.Satterthwaite
Automatically enable RHI thread support in Metal if parallel execution is compiled in unless running the Editor which doesn't support it. The RHI thread is only enabled in Metal when parallel execution is available because there's little to no advantages to the RHI thread with Metal unless parallel execution is enabled. Also only enable async compute support when parallel execution is available and running on an AMD GPU as only AMD support it and again its only really useful when running things in parallel. Disable the async. compute fencing code when async. compute is disabled.
Change 2936923 on 2016/04/07 by Peter.Sauerbrei
add exception when trying to access an ini section which we don't cache
Change 2937839 on 2016/04/08 by Lee.Clark
PS4 - BC6H and BC7 support
#jira OR-14804
Change 2937841 on 2016/04/08 by Lee.Clark
Fix media player not opening the same file that has just been closed.
Change 2937843 on 2016/04/08 by Lee.Clark
PS4 - Fix Media player seek and duration
Change 2938272 on 2016/04/08 by Mark.Satterthwaite
Change the Metal texture lock/unlock code to use the immediate getBytes API to read from the texture unless it is stored in Private memory and requires we use the blit-encoder. This means iOS texture locking won't generally need to use the blit encoder with its row alignment restrictions as all textures will be Shared. On Mac most textures will still be accessed via blit operations since Private memory is much more common than Managed.
Change 2938471 on 2016/04/08 by Nick.Shin
load/save with "negative char size value" fixed
two 'U''s were missing-- causing base64encoder and decoder to not return original data (or expected data for that matter)...
C++ function shows these signatures:
\Engine\Source\Runtime\Engine\Public\SaveGameSystem.h
FGenericSaveGameSystem::SaveGame(..., ..., ..., ...<uint8>);
FGenericSaveGameSystem::LoadGame(..., ..., ..., ...<uint8>);
javascript version was using signed operators...
answerhub 386719 - broken load/save
Change 2938546 on 2016/04/08 by Nick.Shin
upgrading zlib, openssl, libcurl & libwebsockets
(part 1, for libwebsockets -- engine changes will be in part 2)
and writting down all of the build instructions into a single script file
future tasks may have the script broken to smaller sized files and placed in the respective library folders for simplicity -- for now, it's bundled together to ensure build is all-in-one...
#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 2939402 on 2016/04/11 by Mark.Satterthwaite
No need to call synchroniseTexture on iOS when locking a texture for read - that function call is only available and required on OS X.
Change 2939526 on 2016/04/11 by Daniel.Lamb
Don't mark content as modified when garbage collecting.
#PR2249
#2249
Change 2940094 on 2016/04/11 by Michael.Trepka
Temporarily rollback //UE4/Dev-Platform/Engine/Source/Runtime/Apple/MetalRHI/Private/MetalContext.cpp to revision 47 to unblock UE-29312
#codereview Mark.Satterthwaite
Change 2940540 on 2016/04/12 by Jeff.Campeau
Hardware decompress support for Xbox One.
Change 2940793 on 2016/04/12 by Lee.Clark
PS4 - Fix file handle leaks
#codereview Marcus.Wassmer
Change 2940903 on 2016/04/12 by Keith.Judge
Xbox One - Fix validated driver warning when using async compute with dynamic buffers (remove dynamic buffers).
Also resurrected the old deferred deletion queue (though simplified the code a lot as TQueue was horrible), as the platform agnostic one can't deal with placement created resources with a separate buffer/resource.
Moved associated deferred deletion logic out of FD3D11DynamicBuffer.
Attempted fix for UE-28758, but doesn't actually fix it. :(
Change 2940959 on 2016/04/12 by Michael.Trepka
Moved RadioEffectUnit CoreAudio plugin to Engine/Build/Mac
#codereview Ben.Marsh
Change 2940961 on 2016/04/12 by Michael.Trepka
Updated GitHub readme for Mac with instructions for building ShaderCompileWorker
#codereview Ben.Marsh
Change 2941010 on 2016/04/12 by Daniel.Lamb
Added xboxone.projectsettings to the ini processer in UAT.
#codereview Peter.Sauerbrei
#jira UE-29344
Change 2941671 on 2016/04/12 by Jeff.Campeau
March 2016 XDK update
Change 2941998 on 2016/04/13 by Mark.Satterthwaite
In MetalCommandList retain/release when waiting on a command-buffer commit to ensure command-buffer lifetime.
Change 2942008 on 2016/04/13 by Keith.Judge
Fix black reflections when async compute is enabled. Shader resource tables are now properly bound on the context, and fixed a bug where the buffer offset and number of constants wasn't being properly set when using the ring buffer.
#jira UE-28758
Change 2942046 on 2016/04/13 by Lee.Clark
Fix SN-DBS launch failure with VS2015 - (path env seems to be null in 2015)
Change 2942095 on 2016/04/13 by Mark.Satterthwaite
MIssed a change to use AlignedStride rather than Stride in FMetalDynamicRHI::RHIReadSurfaceFloatData to fix iOS blit-encoder read-back.
Change 2942383 on 2016/04/13 by Mark.Satterthwaite
When locking a Metal texture on Mac you have to submit the command buffer & wait in a different location for Private vs. Managed access.
Change 2942419 on 2016/04/13 by Michael.Trepka
Enabled IPv6 on iOS and Mac
#jira UEPLAT-1168
Change 2942472 on 2016/04/13 by Daniel.Lamb
Fixed missing OnlineSubsystemGooglePlay section from UAT ini processing.
#codereview Peter.Sauerbrei
Change 2942829 on 2016/04/13 by Nick.Shin
removing unused emscripten - ThirdParty folder
the ThirdParty folder contained a lot of GPL (and sometimes missing) licensing projects - removing to keep legal happy
tested with full rebuild, full cook, packaging and running QAGame
Change 2943110 on 2016/04/13 by Chris.Babcock
Fix Oculus mobile binaries filtered (include the jars)
#jira ue-29080
#ue4
#android
#gearvr
#codereview Nick.Whiting
Change 2943111 on 2016/04/13 by Chris.Babcock
Fix GearVR plugin jar copy logic
#jira UE-29108
#ue4
#android
#gearvr
#codereview Nick.Whiting
Change 2943579 on 2016/04/14 by Peter.Sauerbrei
enable tvOS in the binary build
Change 2943587 on 2016/04/14 by Peter.Sauerbrei
creation of xcode archives when using the archive command with iOS
Change 2943619 on 2016/04/14 by Mark.Satterthwaite
Make Metal SM4 the default on Mac again for the 4.12 release. As expected there are many bugs to resolve.
Change 2943869 on 2016/04/14 by Daniel.Lamb
Turned duplicate stage of files into warning.
#codereview Peter.Sauerbrei
#lockdown Josh.Adams
#jira UE-29487
Change 2943901 on 2016/04/14 by Keith.Judge
Xbox One - Fix start up crash.
#lockdown Josh.Adams
Change 2943981 on 2016/04/14 by Mark.Satterthwaite
Allow RWBuffers in Metal, which should work, but not RWTextures which aren't yet supported.
#jira UE-29492
#lockdown josh.adams
Change 2944080 on 2016/04/14 by Peter.Sauerbrei
temporarily remove code which removes passwords in ini files which reside in the pak file
multiple defaultengine.ini files were being copied over one another
#lockdown josh.adams
Change 2944249 on 2016/04/14 by Peter.Sauerbrei
fix for writing out DefaulEngine.ini when deprecated items are not changed
#codereview zabir.hoque
#lockdown josh.adams
Change 2944454 on 2016/04/14 by Peter.Sauerbrei
fix for incorrect archive directory and missing IPA
#jira UE-29509
#lockdown josh.adams
Change 2944834 on 2016/04/15 by Peter.Sauerbrei
fix for crash on some iOS device due to resources being freed while still in use by the GPU
#jira UE-29517
#lockdown josh.adams
Change 2944915 on 2016/04/15 by Peter.Sauerbrei
fix for including Facebook SDK in tvOS since we don't have the Facebook libraries for tvOS yet
#lockdown josh.adams
Change 2945164 on 2016/04/15 by Josh.Adams
- Removing XboxOnePDBFile from junkmanifest, causes too much trouble when staging using AutoSDKs
#lockdown nick.penwarden
#codereview jeff.campeau
#lockdown nick.penwarden
[CL 2945174 by Josh Adams in Main branch]
==========================
MAJOR FEATURES + CHANGES
==========================
Change 2719147 on 2015/10/07 by Mark.Satterthwaite
Allow the shader cache to perform some precompilation synchronously on load before falling back to asynchronous compilation to balance load times against total time spent precompiling. Added a stat to the group that reports how long the precompile has been running until it completes so it is easier to track.
Change 2719182 on 2015/10/07 by Mark.Satterthwaite
Refactor the ShaderCache's internal data structures and change the way we handle recording whether a particular predraw state has been submitted to try and make it more efficient.
Change 2719185 on 2015/10/07 by Mark.Satterthwaite
Merging CL #2717701: Try and fix random crashes on Mac when manipulating bound-shader-states caused by ShaderCache potentially providing a bogus shader state pointer on exit from predraw.
Change 2719434 on 2015/10/07 by Mark.Satterthwaite
Make sure that Mac ensures reports have a source context and a sane callstack when sent to the crash-reports server.
Change 2724764 on 2015/10/12 by Josh.Adams
[Initial AppleTV support]
Merging //depot/YakBranch/... to //UE4/Dev-Platform/...
Change 2726266 on 2015/10/13 by Lee.Clark
PS4 - Calc reserve size required for DMA copy when using unsafe command buffers
Change 2726401 on 2015/10/13 by Mark.Satterthwaite
Merging CL #2716418: Fix UE-15228 'Crash Report Client doesn't restart into project editor on Mac' by reporting the original command line supplied by LaunchMac, not the modified one that strips the project name. The CRC can then relaunch as expected.
#jira UE-15228
Change 2726421 on 2015/10/13 by Lee.Clark
PS4 - Don't try to clear invalid targets
Change 2727040 on 2015/10/13 by Michael.Trepka
Merging CL 2724777 - Fixed splash screen rendering for images with DPI different than 72
Change 2729783 on 2015/10/15 by Keith.Judge
Fix huge memory leak in Test/Shipping configurations, caused because I am a numpty.
Change 2729847 on 2015/10/15 by Mark.Satterthwaite
Merging CL #2729846: On OS X unconstrain windows from the dimension of the parent display when in Windowed mode - it is OK for them to be larger in this case. They do need to be repositioned if on the Primary display so that they don't creep under the menu bar and become unmovable/unclosable and Fullscreen windows still need to be constrained to a single display. We can now take screenshots of windows that are larger than the display & not get grey bars beyond the cutoff.
#jira UE-21992
Change 2729865 on 2015/10/15 by Keith.Judge
Fast semantics - Finish up resource transitions, adding resource decompression where appropriate and using non-fast clears where we can't determine the resource transition.
Change 2729897 on 2015/10/15 by Keith.Judge
Fast Semantics - Make sure all GetData() calls are made safe with GPU fences.
Change 2729972 on 2015/10/15 by Keith.Judge
Removed the last vestiges of ID3D11DeviceContext/ID3D11DeviceContext1 from the Xbox RHI. Everything now uses ID3D11DeviceContextX directly.
This should be marginally quicker as it stops a double call to ClearState().
Change 2731503 on 2015/10/16 by Keith.Judge
Added _XDK_VERSION to the DDC key for textures, which should solve the issue of the tiling mode changing in August XDK (and future changes Microsoft may inflict).
Change 2731596 on 2015/10/16 by Keith.Judge
Fast Semantics - Add deferred resource deletion queue to make deleted resources be actually deleted a number of frames later so that the GPU is definitely finished with them. Hooked up the temporary SRVs for dynamic VBs as a first step.
Change 2731928 on 2015/10/16 by Michael.Trepka
PR #1659: Mac/Build.sh handles additional arguments (Contributed by judgeaxl)
Change 2731934 on 2015/10/16 by Michael.Trepka
PR #1618: added clang 3.7.0 -Wshift-negative-value ignore in JpegImageWrapper.cpp (Contributed by bsekura)
Change 2732018 on 2015/10/16 by Mark.Satterthwaite
Emit a shader code cache for each platforms requested shader formats, this is separate to the targeted formats as not all can or need to be cached.
- The implementation extends the ShaderCache's hooks in FShaderResource's serialisation function to capture the required shaders.
- Each target platform has its own list of cached shader formats, analogous to the list of targeted RHIs. Presently only the Mac implements this.
- Code cached shaders are now compressed (for size) to reduce the overhead associated with keeping all the shader code around - this works esp. well for text-based formats like GLSL.
Change 2732365 on 2015/10/16 by Josh.Adams
- Packaging a TVOS .ipa now works (still haven't tried any of the Editor integration like Launch On)
Change 2733170 on 2015/10/18 by Terence.Burns
Fix for Android IAP query not returning entire inventory.
Change 2733174 on 2015/10/18 by Terence.Burns
Fix Movie player issue where wait for movie to finish isnt being respected.
Seems a stray bUserCanceled event flag was causing this not to be observed.
Added some verbose logging to apple movie player.
Change 2733488 on 2015/10/19 by Mark.Satterthwaite
Added the ability to merge the .ushadercache files used by the ShaderCache to store shader & draw state information.
- Fixed a bug that would cause invalid shader membership and draw state information to be logged.
- Added a separate command-line tool to merge shader cache files, currently Mac-only but in theory should work on other platforms too.
Change 2735226 on 2015/10/20 by Mark.Satterthwaite
Fix temporal AA rendering on GL/Mac OS X - you can't rely on EyeAdaptation values unless SM5 is available so only perform that code on SM5 & we must correctly clamp saturate(NaN) to 0 as the current hlslcc won't do that for us (& is required by the HLSL spec). The latter used to be clamped in the AA_ALPHA && AA_VELOCITY_WEIGHTING code block that was removed recently.
#jira UE-21214
#jira UE-19913
Change 2736722 on 2015/10/21 by Daniel.Lamb
Improved performance of cooking stats system.
Change 2737172 on 2015/10/21 by Daniel.Lamb
Improved cooking stats performance for ddc stats.
==========================
MAJOR FEATURES + CHANGES
==========================
Change 2718441 on 2015/10/06 by Ben.Marsh@Ben.Marsh_T3245_Stream
Allow nodes to be added with an "explicit" frequency, meaning that they'll only be part of manually triggered builds (not CIS).
Change 2718698 on 2015/10/06 by Ben.Marsh@Ben.Marsh_T3245_Stream
Add a type of node that can execute an arbitrary sequence of tasks, and allow constructing graphs of such nodes from an XML file.
Change 2723013 on 2015/10/09 by Ben.Marsh@Ben.Marsh_T3245_Stream
Small utility to quickly capture a workspace, or delete files to restore the workspace to a previously captured state (and output a p4 sync list to restore it)
Change 2744521 on 2015/10/28 by Matthew.Griffin@Matthew.Griffin_G5772_BuildStream
Adding config entries to determine which platforms/configurations are available
Currently only written out as part of the Rocket Build process but could be done elsewhere for other types of installed build.
A near identical singleton class is used in both C++ and C# to load the config section and check whether configuration/platform combinations are valid.
Change 2773723 on 2015/11/19 by Ben.Marsh@Ben.Marsh_T3245_Stream
Copying UnrealGameSync into Engine/Source/Programs.
Change 2773914 on 2015/11/19 by Ben.Marsh@Ben.Marsh_T3245_Stream
PR #1687: [GitDependencies] New feature: ignore file support (.gitdepsignore) (Contributed by nbjk667)
Change 2775317 on 2015/11/20 by Ben.Marsh@Ben.Marsh_T3245_Stream
Add a -listtps option to UBT, which will find all the TPS files in any directory that's compiled into a target.
Change 2780832 on 2015/11/25 by Ben.Marsh@Ben.Marsh_T3245_Stream
Allow compiling a single file in UBT. Pass -singlefile=<Path> on command line to UBT to use.
Change 2781071 on 2015/11/25 by Ben.Marsh@Ben.Marsh_T3245_Stream
Precompile all valid engine modules for Rocket by default. Modules may set the PrecompileForTargets field to control which configurations they should be compiled for. Modules which currently fail to compile have this set to
PrecompileTargetsType.None.
#codereview Matthew.Griffin
Change 2784469 on 2015/12/01 by Matthew.Griffin@Matthew.Griffin_G5772_BuildStream
Added -FastPDB commandline parameter for UBT, so that we can make use of the /DEBUG:FASTLINK option in VS2015
Change 2784722 on 2015/12/01 by Matthew.Griffin@Matthew.Griffin_G5772_BuildStream
Made -FastPDB option part of BuildConfiguration instead of checking commandline at each place it's used. Also added option to override if someone doesn't want it automatically added to their project files.
Change 2787501 on 2015/12/02 by Ben.Marsh@Ben.Marsh_T3245_Stream
Restore change to gather VC environment directly from registry.
#lockdown Nick.Penwarden
[CL 2790002 by Ben Marsh in Main branch]
- Rocket doesn't bundle Linux libs, making code-based projects (and projects with third-party plugins) fail during compilation.
- Updated messaging to reflect this.
- Also added a SDK check for Linux and a 'getting' started UDN page.
- Updated Linux README for 4.8.
#codereview Peter.Sauerbrei, Ben.Marsh, Jeff.Wilson
[CL 2543338 by Dmitry Rekman in Main branch]
Somehow one of my projects ended up with many of the same key. The code that was handling loading of these had an assumption that each key would only appear once in the list (fixed.)
Example of duplicate keys that would cause this to crash:
[/Script/WindowsTargetPlatform.WindowsTargetSettings]
TargetedRHIs=PCD3D_SM5
TargetedRHIs=PCD3D_SM4
TargetedRHIs=PCD3D_SM5
TargetedRHIs=PCD3D_SM4
TargetedRHIs=PCD3D_SM5
TargetedRHIs=PCD3D_SM4
TargetedRHIs=PCD3D_SM5
TargetedRHIs=PCD3D_SM4
TargetedRHIs=PCD3D_SM5
TargetedRHIs=PCD3D_SM4
[CL 2510529 by Mike Fricker in Main branch]
Adding Texture LOD settings to Device Profiles
- this will improve how we currently edit and override lod settings on a per device type bases.
- LOD Settings can now be set in the Device Profile Editor
- Any device profiles with no values set for LOD Settings, will use the default objects.
- These can be found in BaseDeviceProfiles.ini in the /Script/Engine.TextureLODSettings section
- Appropriate defaults set for those groups not listed.
-Other fixes
- - Incorrect with_editor check in HTML5 target platform, changed to with_engine
[CL 2481510 by Terence Burns in Main branch]
Now editor will tick at a decent frame rate while building shaders / caching textures.
#codereview Josh.Adams, Daniel.Wright, Matthew.Griffin
[CL 2318857 by Daniel Lamb in Main branch]
Device Services Refactoring to create the concept of a physical device.
Game launcher and device viewer UI changes to show these new concepts.
#codereview Max.Preussner, Matt.Kuhlenschmidt
[CL 2290918 by Chris Gagnon in Main branch]