Commit Graph

132 Commits

Author SHA1 Message Date
Nick Shin
6e1c88d0b9 fix CIS build warnings and errors
this is for HTML5 platform

#rb none
#lockdown josh.adams

[CL 3151598 by Nick Shin in Main branch]
2016-10-05 08:10:40 -04:00
Nick Shin
0d1c564712 upgrade emsdk toolchain to 1.36.11
this is needed to fix up physx compiler errors

#rb none
#code.review ori.cohen
#lockdown josh.adams
#jira UE-36562

[CL 3151140 by Nick Shin in Main branch]
2016-10-04 18:02:22 -04:00
Nick Shin
93f3ac8702 upgrade emsdk toolchain to 1.36.11
this is needed to fix up physx compiler errors

#rb none
#code.review ori.cohen
#lockdown josh.adams
#jira UE-36562

[CL 3151133 by Nick Shin in Main branch]
2016-10-04 18:00:49 -04:00
Ori Cohen
36caee758d Copying //UE4/Dev-Physics to //UE4/Dev-Main (Source: //UE4/Dev-Physics @ 3140333)
#lockdown Nick.Penwarden

==========================
MAJOR FEATURES + CHANGES
==========================

Copying //UE4/Dev-Physics-Upgrade to //UE4/Dev-Physics (Source: //UE4/Dev-Physics-Upgrade @ 3140195)

==========================
MAJOR FEATURES + CHANGES
==========================

Change 2954345 on 2016/04/25 by Thomas.Sarkanen

	Merging in latest 3.4 code drop from NVIDIA using DevPhysicsUpgrade_To_NVIDIA_PhysX34

Change 2954421 on 2016/04/25 by Thomas.Sarkanen

	Removed old PhysX 3.3 and APEX 1.3

Change 2955821 on 2016/04/26 by Thomas.Sarkanen

	Back out changelist 2954345

Change 2955880 on 2016/04/26 by Thomas.Sarkanen

	Merging using DevPhysicsUpgrade_To_NVIDIA_PhysX34

	Attempt to re-integrate after botched merge in CL 2954345. Cherry picking only PhysX directories, auto-merging accepting source, forcing integration.

Change 2957403 on 2016/04/27 by Thomas.Sarkanen

	Adding initial UAT script for PhysX/APEX

Change 2957690 on 2016/04/27 by Thomas.Sarkanen

	Upgraded BuildPhysX to call CMake directly

	Now all that is needed are the CMakeLists.txt files, rather than slightly shaky batch files.
	Still need to make the CMake command line handling a bit more sane and move into more conventional directories like \Win64\VS2015\ etc.

	Added RemoveDirectory() to DirectoryReference.

Change 2960653 on 2016/04/29 by Thomas.Sarkanen

	Updated BuildPhysX script to target engine-style directory structures

	We now build directly into (e.g.) Win64\VS2015 directories.
	Also updated to build using multiple compiler versions.

Change 2964162 on 2016/05/03 by Thomas.Sarkanen

	Added deployment to BuildPhysX script

	Script now copies source, binaries and libs to appropriate directories & can optionally auto-submit (note this is turned ON by default! Use -SkipSubmit to disable).

Change 2964171 on 2016/05/03 by Thomas.Sarkanen

	BuildPhysX script: Added switch to disable auto-submit seperately from changelist creation

	Allows easier dry-run testing.

Change 2964245 on 2016/05/03 by Thomas.Sarkanen

	Added external binary deployment to BuildPhysX script

	May still need to add the OpenGL binaries if need be

Change 2968733 on 2016/05/06 by Thomas.Sarkanen

	Filter out Source\compiler when deploying

	Also updated cmake invocation to redirect output correctly. Oddly cmake redirects non-errors via stderr, so we only redirect stdout in this case.

Change 2978738 on 2016/05/16 by Thomas.Sarkanen

	Added PhysX Vehicle and Extensions libs/binaries to deployment

	My previous wildcard filter didnt pick them up.

Change 2978741 on 2016/05/16 by Thomas.Sarkanen

	Removed PhysX 3.3 and APEX 1.3 binaries

Change 2982013 on 2016/05/18 by Thomas.Sarkanen

	Upgrade engine to PhysX 3.4 & APEX 1.4

Change 2983305 on 2016/05/19 by Thomas.Sarkanen

	Fixed BuildPhysX script to deploy missing libs

Change 2983384 on 2016/05/19 by Thomas.Sarkanen

	Fix compiler and linker issues found when batch compiling all available platforms/configs

	PhysXCollision.cpp: Clang seems to have issues with inheriting from a templated base class & accessing base members, so qualified with "this->".
	Added missing libs to Win32 build.

Change 2987027 on 2016/05/23 by Chad.Garyet

	Merging the main integration into dev-physics into dev-physics-upgrade per Ori.

Change 2988274 on 2016/05/24 by Thomas.Sarkanen

	Fixup compilation issues post-merge from Main

Change 3035770 on 2016/07/01 by Thomas.Sarkanen

	Updated cmake scripts

	Added GeomUtils include & missing files
	Specified PDB generation for all dlls.
	Removed VS2013 from default compilers list.

Change 3036954 on 2016/07/04 by Thomas.Sarkanen

	Removing APEX and PhysX binaries

Change 3037006 on 2016/07/04 by Thomas.Sarkanen

	Removing old PhysX source

Change 3037400 on 2016/07/05 by Thomas.Sarkanen

	Make sure to set GW_DEPS_ROOT environment variable

	Otherwise CMake can pick up old files or fail to build projects.

Change 3037763 on 2016/07/05 by Thomas.Sarkanen

	Make sure we default to older convex hull generation method.

	New method doesnt deal with degenerate cases as well as the old so if we want to use it we will need better fallback code.

Change 3039192 on 2016/07/06 by Thomas.Sarkanen

	Fixed destructible & convex collision not generating correct hulls

	Reverted to older hull generaiton method as thinner meshes are not being generated correctly with the new eQUICK_HULL method.
	Also made sure to set cooking params correctly (previously params were only set the first time a deformable mesh was cooked).
	PCM is enabled now by default so hooked up the flag to correctly disbale it.
	Bumped the DDC GUID to force a re-cook of convex meshes.

Change 3039236 on 2016/07/06 by Thomas.Sarkanen

	Prevented warning log spam from fetchResults()

	APEX does not call simulate() on the PhysX scene if there are no actors, so we duplicate the logic and dont call simulate() or fetchResults() if there are no actors present.

	#jira UE-31515 - NpScene.cpp 2304 eINVALID_OPERATION : PxScene::fetchResults: fetchResults() called illegally! - Error when playing in First Person template

Change 3039244 on 2016/07/06 by Thomas.Sarkanen

	Bumped the landscape version DDC key to force a heightfield re-cook

	#jjira UE-31532 - Landscapes do not have collision

Change 3040887 on 2016/07/07 by Thomas.Sarkanen

	Stopped onWake() callbacks being fired when objects are initially sleeping

	Objects start awake in the new PhysX, so we require an explicit putToSleep() call rather than relying on the wake timer timeout.

	#jira UE-31504 - Physics-enabled component is awake even with Start Awake disabled

Change 3067119 on 2016/07/27 by Ori.Cohen

	Merging //UE4/Dev-Physics to Dev-Physics-Upgrade (//UE4/Dev-Physics-Upgrade)

Change 3068266 on 2016/07/28 by Thomas.Sarkanen

	Fixed standalone building of solutions

	Also added CMake directories to deployment script

Change 3073437 on 2016/08/02 by Ori.Cohen

	Added custom code for finding convex faces. This is to get the most opposing normal behavior.

	#JIRA UE-31512, UE-31533

Change 3075553 on 2016/08/03 by Ori.Cohen

	Fix deprecated SafeNormal vs GetSaveNormal

Change 3077938 on 2016/08/04 by Ori.Cohen

	Fix bad constraint issue when waking up kinematic actors

Change 3077939 on 2016/08/04 by Ori.Cohen

	Fix limits of size 0 going into physx constraints.

Change 3080809 on 2016/08/08 by Marc.Audy

	Merging //UE4/Dev-Physics to Dev-Physics-Upgrade (//UE4/Dev-Physics-Upgrade)
	Resolved BodyInstance.cpp conflicts in UpdateInstanceSimulatePhysics

Change 3085212 on 2016/08/11 by Thomas.Sarkanen

	Updated CMake command lines now that platforms are in seperate directories

	BuildPhysX script now works again

Change 3090340 on 2016/08/16 by Benn.Gallagher

	Fixed usage of setRigidDynamicFlag after API change

Change 3090892 on 2016/08/16 by Marc.Audy

	Merging //UE4/Dev-Physics to Dev-Physics-Upgrade (//UE4/Dev-Physics-Upgrade)

Change 3093595 on 2016/08/18 by Benn.Gallagher

	Fixed new code coming down from main to new APIs

Change 3099294 on 2016/08/24 by Sheikh.Dawood.Abdul.Ajees

	Merging

	//UE4/Dev-Physics-Upgrade/PhysX/...

	to //UE4/Dev-Physics-Upgrade/Engine/Source/ThirdParty/PhysX/...

Change 3099296 on 2016/08/24 by Sheikh.Dawood.Abdul.Ajees

	-PhysX in-place build from Engine folder
	-Optional loading or NvToolsExt

Change 3101628 on 2016/08/25 by Ori.Cohen

	Make cmake portable and fixup generated projects to use proper lib/dll output

Change 3101634 on 2016/08/25 by Ori.Cohen

	Temp script to make it easy to generate projects using UAT

Change 3101714 on 2016/08/25 by Ori.Cohen

	CMake distributed for building without install

Change 3101719 on 2016/08/25 by Ori.Cohen

	Fix non-install cmake not working for ps4. Also update toolchain paths and compiler.

Change 3101777 on 2016/08/25 by Ori.Cohen

	Fix accidently skipping generating solutions.

Change 3101866 on 2016/08/25 by Ori.Cohen

	Fix second run of cmake not being able to delete readonly cmake files copied over

Change 3102520 on 2016/08/26 by Ori.Cohen

	BuildPhysX.Automation: Deploying PhysX & APEX libs.

Change 3102531 on 2016/08/26 by Ori.Cohen

	Up DDC version for new physx libs

Change 3102572 on 2016/08/26 by Ori.Cohen

	Fix lib to Lib and also remove dead code related to deploy which we no longer need

Change 3102656 on 2016/08/26 by Sheikh.Dawood.Abdul.Ajees

	Add pdbs to static libs.

Change 3102745 on 2016/08/26 by Ori.Cohen

	Fix physxbuild ignoring lib PDBs now that they are correctly generating.

Change 3102750 on 2016/08/26 by Benn.Gallagher

	Fix for explosive fracture events due to changes in mesh inflation.

Change 3102855 on 2016/08/26 by Ori.Cohen

	Added lib pdbs

Change 3106690 on 2016/08/30 by Ori.Cohen

	Fix external physx cmake modules path being set incorrectly

Change 3107042 on 2016/08/30 by Ori.Cohen

	Fix namespace typo and add ImmediateMode to cmake

Change 3107304 on 2016/08/30 by Sheikh.Dawood.Abdul.Ajees

	Fix PhysX lib rename

Change 3108078 on 2016/08/31 by Ori.Cohen

	Move ImmediateMode module inside physx.

Change 3108276 on 2016/08/31 by Ori.Cohen

	Immediate mode is now compiled

Change 3111534 on 2016/09/02 by Thomas.Sarkanen

	Fixup deprecated PhysX APIs

	"Active transforms" feature replaced with "active actors".
	Convex skinWidth and heightfield thickness removed as they were unused.
	Tolerance mass removed as it is ignored internally now.
	CreateShape now uses the PxPhysics version, with exclusivity respected via the passed-in flag.

	Note, we still use the following deprecated calls:

	- PxVec3::operator[]: This is used to iterate over dimensions and is still extremely useful so I've kept it for now.
	- Batched queries are still used by the vehicle system, so we still need to use them although they are deprecated.

	#jira UE-17833 - Stop using deprecated PhysX API calls

Change 3111636 on 2016/09/02 by Thomas.Sarkanen

	Removed deprecated use of PxVec3::operator[]

	After discussion on slack, apparently this was causing aliasing issues with certain compilers (XboxOne, for instance).

	#jira UE-17833 - Stop using deprecated PhysX API calls

Change 3111793 on 2016/09/02 by Ales.Borovicka

	[From trunk]  21113605 - removed tolerances scale usage from normalized distance test

	p4rmerge of Change 21115034 by aborovicka
	from cl-21115034.p4r
	moved from //sw/physx/Releases/distro_mirrors/PhysX_3.4_APEX_1.4_Epic/ to //UE4/Dev-Physics-Upgrade/Engine/Source/ThirdParty/PhysX/

Change 3111981 on 2016/09/02 by Ori.Cohen

	Merging //UE4/Dev-Physics to Dev-Physics-Upgrade (//UE4/Dev-Physics-Upgrade)

Change 3111984 on 2016/09/02 by Ori.Cohen

	Debug config uses CHECKED by default

Change 3112432 on 2016/09/02 by Ori.Cohen

	BuildPhysX.Automation: Deploying PhysX and APEX libs.

	Quickhull cleanup fix. Remove slow check for if actors are simulating.

	#JIRA UE-35231

Change 3114288 on 2016/09/06 by Ori.Cohen

	Fix compiler error

Change 3115781 on 2016/09/07 by Sheikh.Dawood.Abdul.Ajees

	[From trunk] 21074422 -  Improved speculative CCD behaviour (correct decision of when to retain bias - was incorrect before). Some code conformity changes recommended by Pierre. Fixed an assert that could fire when using sweep-based CCD with kinematics that didn't have CCD enabled. Improved some documentation. Reviewed by Michelle

	p4rmerge of Change 21125150 by sschirm
	from cl-21125150.p4r
	moved from //sw/physx/Releases/distro_mirrors/PhysX_3.4_APEX_1.4_Epic/ to //UE4/Dev-Physics-Upgrade/Engine/Source/ThirdParty/PhysX/

Change 3115788 on 2016/09/07 by Sheikh.Dawood.Abdul.Ajees

	[From trunk] 21078633 -  PX-696 - Remove unused PoolListThreadSafe class

	p4rmerge of Change 21125151 by sschirm
	from cl-21125151.p4r
	moved from //sw/physx/Releases/distro_mirrors/PhysX_3.4_APEX_1.4_Epic/ to //UE4/Dev-Physics-Upgrade/Engine/Source/ThirdParty/PhysX/

Change 3115795 on 2016/09/07 by Sheikh.Dawood.Abdul.Ajees

	[From trunk] 21079886 - (1)[PX-702]wrong test case for PCM mesh edge-edge parallel edge rejection check [Reviewer: Kier]
	(2)check in new version of gauss map SAT implementation(disable by default as reference for GPU code)

	p4rmerge of Change 21125180 by sschirm
	from cl-21125180.p4r
	moved from //sw/physx/Releases/distro_mirrors/PhysX_3.4_APEX_1.4_Epic/ to //UE4/Dev-Physics-Upgrade/Engine/Source/ThirdParty/PhysX/

Change 3115809 on 2016/09/07 by Sheikh.Dawood.Abdul.Ajees

	[From trunk] 21085278 -  PX-601 - The eCOLLISION_PAIRS debug viz param is not used.

	p4rmerge of Change 21125190 by sschirm
	from cl-21125190.p4r
	moved from //sw/physx/Releases/distro_mirrors/PhysX_3.4_APEX_1.4_Epic/ to //UE4/Dev-Physics-Upgrade/Engine/Source/ThirdParty/PhysX/

Change 3115812 on 2016/09/07 by Sheikh.Dawood.Abdul.Ajees

	[From trunk] 21085367 -  fixed release notes for negative mesh scale

	p4rmerge of Change 21125217 by sschirm
	from cl-21125217.p4r
	moved from //sw/physx/Releases/distro_mirrors/PhysX_3.4_APEX_1.4_Epic/ to //UE4/Dev-Physics-Upgrade/Engine/Source/ThirdParty/PhysX/

Change 3115817 on 2016/09/07 by Sheikh.Dawood.Abdul.Ajees

	[From trunk] 21090281 -  [PX-425]Improving heightfield documentaiton. No longer extruding bounds for heightfields if unified heightfield collisions are used. Reviewed by Michelle

	p4rmerge of Change 21125224 by sschirm
	from cl-21125224.p4r
	moved from //sw/physx/Releases/distro_mirrors/PhysX_3.4_APEX_1.4_Epic/ to //UE4/Dev-Physics-Upgrade/Engine/Source/ThirdParty/PhysX/

Change 3115820 on 2016/09/07 by Sheikh.Dawood.Abdul.Ajees

	[From trunk] 21090512 -  Updating error messages. This is causing a UT to fail that mustn't get run when using the combined VT/UT project.

	p4rmerge of Change 21125229 by sschirm
	from cl-21125229.p4r
	moved from //sw/physx/Releases/distro_mirrors/PhysX_3.4_APEX_1.4_Epic/ to //UE4/Dev-Physics-Upgrade/Engine/Source/ThirdParty/PhysX/

Change 3115823 on 2016/09/07 by Sheikh.Dawood.Abdul.Ajees

	[From trunk] 21090881 -  PX-701 sweep position fix [r Pierre]

	p4rmerge of Change 21125230 by sschirm
	from cl-21125230.p4r
	moved from //sw/physx/Releases/distro_mirrors/PhysX_3.4_APEX_1.4_Epic/ to //UE4/Dev-Physics-Upgrade/Engine/Source/ThirdParty/PhysX/

Change 3115831 on 2016/09/07 by Sheikh.Dawood.Abdul.Ajees

	[From trunk] 21090883 -  PX-694 HF border miss [r Pierre]

	p4rmerge of Change 21125232 by sschirm
	from cl-21125232.p4r
	moved from //sw/physx/Releases/distro_mirrors/PhysX_3.4_APEX_1.4_Epic/ to //UE4/Dev-Physics-Upgrade/Engine/Source/ThirdParty/PhysX/

Change 3115835 on 2016/09/07 by Sheikh.Dawood.Abdul.Ajees

	[From trunk] 21091870 -  Michelle's fix for convex-mesh issue found in one of the CCD heightfield visual tests. Reviewed by Kier

	p4rmerge of Change 21125238 by sschirm
	from cl-21125238.p4r
	moved from //sw/physx/Releases/distro_mirrors/PhysX_3.4_APEX_1.4_Epic/ to //UE4/Dev-Physics-Upgrade/Engine/Source/ThirdParty/PhysX/

Change 3115840 on 2016/09/07 by Sheikh.Dawood.Abdul.Ajees

	[From trunk] 21091979 -  Some CCD optimizations. The intention of this is to bypass work if you have lots of bodies with CCD enabled but most are moving slowly. Reviewed by Michelle

	p4rmerge of Change 21125241 by sschirm
	from cl-21125241.p4r
	moved from //sw/physx/Releases/distro_mirrors/PhysX_3.4_APEX_1.4_Epic/ to //UE4/Dev-Physics-Upgrade/Engine/Source/ThirdParty/PhysX/

Change 3115841 on 2016/09/07 by Sheikh.Dawood.Abdul.Ajees

	[From trunk] 21091992 -  Fix Linux warning recommending using parantheses

	p4rmerge of Change 21125242 by sschirm
	from cl-21125242.p4r
	moved from //sw/physx/Releases/distro_mirrors/PhysX_3.4_APEX_1.4_Epic/ to //UE4/Dev-Physics-Upgrade/Engine/Source/ThirdParty/PhysX/

Change 3115843 on 2016/09/07 by Sheikh.Dawood.Abdul.Ajees

	[From trunk] 21092009 -  [PX-375] Removed/replaced "weird comments" in contact modification API file.

	p4rmerge of Change 21125245 by sschirm
	from cl-21125245.p4r
	moved from //sw/physx/Releases/distro_mirrors/PhysX_3.4_APEX_1.4_Epic/ to //UE4/Dev-Physics-Upgrade/Engine/Source/ThirdParty/PhysX/

Change 3115848 on 2016/09/07 by Sheikh.Dawood.Abdul.Ajees

	[From trunk] 21094919 -  Fix a compiler warning. Missed a copy n' paste error in the code. It compiles (with warnings on GCC), would produced the desired results but it's clearly wrong.

	p4rmerge of Change 21125247 by sschirm
	from cl-21125247.p4r
	moved from //sw/physx/Releases/distro_mirrors/PhysX_3.4_APEX_1.4_Epic/ to //UE4/Dev-Physics-Upgrade/Engine/Source/ThirdParty/PhysX/

Change 3115867 on 2016/09/07 by Sheikh.Dawood.Abdul.Ajees

	[From trunk] 21095517 -  Fix metadata warning in debug builds. Reviewed by Michelle

	p4rmerge of Change 21125252 by sschirm
	from cl-21125252.p4r
	moved from //sw/physx/Releases/distro_mirrors/PhysX_3.4_APEX_1.4_Epic/ to //UE4/Dev-Physics-Upgrade/Engine/Source/ThirdParty/PhysX/

Change 3115876 on 2016/09/07 by Sheikh.Dawood.Abdul.Ajees

	[From trunk] 21101463 -  Re-introduced 'isIdentity' function in Quat. This was originally part of a larger CL but this bit as been extracted for clarity. Review: Ales

	p4rmerge of Change 21125253 by sschirm
	from cl-21125253.p4r
	moved from //sw/physx/Releases/distro_mirrors/PhysX_3.4_APEX_1.4_Epic/ to //UE4/Dev-Physics-Upgrade/Engine/Source/ThirdParty/PhysX/

Change 3115881 on 2016/09/07 by Sheikh.Dawood.Abdul.Ajees

	[From trunk] 21102045 -  PX-507 fixed loading repX with kinematic actor and trimesh geometry [r Simon]

	p4rmerge of Change 21125255 by sschirm
	from cl-21125255.p4r
	moved from //sw/physx/Releases/distro_mirrors/PhysX_3.4_APEX_1.4_Epic/ to //UE4/Dev-Physics-Upgrade/Engine/Source/ThirdParty/PhysX/

Change 3115891 on 2016/09/07 by Sheikh.Dawood.Abdul.Ajees

	[From trunk] 21102138 -  PX-708 - Review p4 changes for missing docs [Pierre]

	Review: Simon

	p4rmerge of Change 21125256 by sschirm
	from cl-21125256.p4r
	moved from //sw/physx/Releases/distro_mirrors/PhysX_3.4_APEX_1.4_Epic/ to //UE4/Dev-Physics-Upgrade/Engine/Source/ThirdParty/PhysX/

Change 3115894 on 2016/09/07 by Sheikh.Dawood.Abdul.Ajees

	[From trunk] 21102219 -  PX-709 updated release notes and migration guide

	p4rmerge of Change 21125258 by sschirm
	from cl-21125258.p4r
	moved from //sw/physx/Releases/distro_mirrors/PhysX_3.4_APEX_1.4_Epic/ to //UE4/Dev-Physics-Upgrade/Engine/Source/ThirdParty/PhysX/

Change 3115897 on 2016/09/07 by Sheikh.Dawood.Abdul.Ajees

	[From trunk] 21105325 -  PX-542: add comment to comment regarding spu in batched queries code.

	p4rmerge of Change 21125261 by sschirm
	from cl-21125261.p4r
	moved from //sw/physx/Releases/distro_mirrors/PhysX_3.4_APEX_1.4_Epic/ to //UE4/Dev-Physics-Upgrade/Engine/Source/ThirdParty/PhysX/

Change 3115904 on 2016/09/07 by Sheikh.Dawood.Abdul.Ajees

	[From trunk] 21105351 -  Back out changelist 21102045

	p4rmerge of Change 21125262 by sschirm
	from cl-21125262.p4r
	moved from //sw/physx/Releases/distro_mirrors/PhysX_3.4_APEX_1.4_Epic/ to //UE4/Dev-Physics-Upgrade/Engine/Source/ThirdParty/PhysX/

Change 3115909 on 2016/09/07 by Sheikh.Dawood.Abdul.Ajees

	[From trunk] 21105521 -

	PX-664 - PVD doesn't properly capture SQ flags
	PX-665 - PVD's sweep hit capture is probably broken

	Details:

	- removed QUERY_LINEAR_COMPOUND_GEOMETRY_SWEEP_CLOSEST_OBJECT / QUERY_LINEAR_COMPOUND_GEOMETRY_SWEEP_ALL_OBJECTS since they are apparently not used anymore

	- refactored CapturePvdOnReturn:
	  - removed useless struct QType (over-engineered)
	  - identified / marked unused members. Might vanish later.
	  - "compression oriented programming" of main code.

	- PvdSqHit:
	  - added explicit PxOverlapHit ctor for overlaps (makes it clearer which ctor is called for each kind of hit)
	  - captured hit flags in PxRaycastHit and PxSweepHit ctors. This is the part that fixes PX-664.

	- PvdSceneQueryCollector:
	  - re-routed "any hit" functions to complete hit ctors instead of incomplete (PxQueryHit) one. This is the part that fixes PX-665.
	  - unified names of class members. The previous PvdSceneQueryCollector right here is a good example of why our coding standard doesn't make any sense (the public members all have the "m" prefix as well, nobody ever bothers changing the members' names when they go from private to public).
	  - "compression oriented programming" of main code.

	Review: Ales

	p4rmerge of Change 21125263 by sschirm
	from cl-21125263.p4r
	moved from //sw/physx/Releases/distro_mirrors/PhysX_3.4_APEX_1.4_Epic/ to //UE4/Dev-Physics-Upgrade/Engine/Source/ThirdParty/PhysX/

Change 3115915 on 2016/09/07 by Sheikh.Dawood.Abdul.Ajees

	[From trunk] 21105695 -  fix compile error

	p4rmerge of Change 21125264 by sschirm
	from cl-21125264.p4r
	moved from //sw/physx/Releases/distro_mirrors/PhysX_3.4_APEX_1.4_Epic/ to //UE4/Dev-Physics-Upgrade/Engine/Source/ThirdParty/PhysX/

Change 3115917 on 2016/09/07 by Sheikh.Dawood.Abdul.Ajees

	[From trunk] 21105850 -  Back out changelist 21105325

	p4rmerge of Change 21125265 by sschirm
	from cl-21125265.p4r
	moved from //sw/physx/Releases/distro_mirrors/PhysX_3.4_APEX_1.4_Epic/ to //UE4/Dev-Physics-Upgrade/Engine/Source/ThirdParty/PhysX/

Change 3115923 on 2016/09/07 by Sheikh.Dawood.Abdul.Ajees

	[From trunk] 21106057 - [PX-703] Removed comment promising documentation of how all the multi-client callbacks group events together. Interested parties can read the code but the decision over how events are grouped probably shouldn't influence their callback design decisions. Actually submitting (file was checked out but not saved in previous submit)

	p4rmerge of Change 21125267 by sschirm
	from cl-21125267.p4r
	moved from //sw/physx/Releases/distro_mirrors/PhysX_3.4_APEX_1.4_Epic/ to //UE4/Dev-Physics-Upgrade/Engine/Source/ThirdParty/PhysX/

Change 3115925 on 2016/09/07 by Sheikh.Dawood.Abdul.Ajees

	[From trunk] 21106460 -  [PX-710] Missing documentation changes.

	p4rmerge of Change 21125268 by sschirm
	from cl-21125268.p4r
	moved from //sw/physx/Releases/distro_mirrors/PhysX_3.4_APEX_1.4_Epic/ to //UE4/Dev-Physics-Upgrade/Engine/Source/ThirdParty/PhysX/

Change 3115927 on 2016/09/07 by Sheikh.Dawood.Abdul.Ajees

	[From trunk] 21110787 -  Some minor cloth cleanup, related to PX-711. (r mtamis)

	p4rmerge of Change 21125271 by sschirm
	from cl-21125271.p4r
	moved from //sw/physx/Releases/distro_mirrors/PhysX_3.4_APEX_1.4_Epic/ to //UE4/Dev-Physics-Upgrade/Engine/Source/ThirdParty/PhysX/

Change 3115934 on 2016/09/07 by Sheikh.Dawood.Abdul.Ajees

	[From trunk] 21113806 -  PX-707 remove cuda interop for d3d9  (r dduka, kstorey)

	p4rmerge of Change 21125273 by sschirm
	from cl-21125273.p4r
	moved from //sw/physx/Releases/distro_mirrors/PhysX_3.4_APEX_1.4_Epic/ to //UE4/Dev-Physics-Upgrade/Engine/Source/ThirdParty/PhysX/

Change 3115938 on 2016/09/07 by Sheikh.Dawood.Abdul.Ajees

	[From trunk] 21113869 -  PxProfiler changes

	- Remove ?filename≈ and ?lineno≈:

	It is useless for profile zones.
	The name of the zone already uniquely describes a place in the SDK. The line numbers are useless when people have local changes in their files anyway (which happens quite a bit for Epic / Unity).
	This is also currently not used by PVD so it is unclear why we added it. Filenames are usually long strings that we do not want to transmit over a network.

	Review: Ales

	p4rmerge of Change 21125275 by sschirm
	from cl-21125275.p4r
	moved from //sw/physx/Releases/distro_mirrors/PhysX_3.4_APEX_1.4_Epic/ to //UE4/Dev-Physics-Upgrade/Engine/Source/ThirdParty/PhysX/

Change 3115941 on 2016/09/07 by Sheikh.Dawood.Abdul.Ajees

	[From trunk] 21114295 - [PX-716] Fixed assert in broad phase in SampleParticles when using GPU. Reviewed by Michelle

	p4rmerge of Change 21125276 by sschirm
	from cl-21125276.p4r
	moved from //sw/physx/Releases/distro_mirrors/PhysX_3.4_APEX_1.4_Epic/ to //UE4/Dev-Physics-Upgrade/Engine/Source/ThirdParty/PhysX/

Change 3115942 on 2016/09/07 by Sheikh.Dawood.Abdul.Ajees

	[From trunk] 21114587 - [PX-635] CUDA 8 support. Windows and Linux switched to use CUDA 8.0.27. Reviewed/contributed to by Cheng, Simon, Michelle.

	p4rmerge of Change 21125279 by sschirm
	from cl-21125279.p4r
	moved from //sw/physx/Releases/distro_mirrors/PhysX_3.4_APEX_1.4_Epic/ to //UE4/Dev-Physics-Upgrade/Engine/Source/ThirdParty/PhysX/

Change 3115945 on 2016/09/07 by Sheikh.Dawood.Abdul.Ajees

	[From trunk] 21114843 -  Articulation helper code only does 1 internal/external solve pass if internal/external coefficients are the same and internal/external iterations are the same. Reviewed by Michelle

	p4rmerge of Change 21125282 by sschirm
	from cl-21125282.p4r
	moved from //sw/physx/Releases/distro_mirrors/PhysX_3.4_APEX_1.4_Epic/ to //UE4/Dev-Physics-Upgrade/Engine/Source/ThirdParty/PhysX/

Change 3115949 on 2016/09/07 by Sheikh.Dawood.Abdul.Ajees

	[From trunk] 21118231 -  Profiler changes:

	Move CUDA-related parts to specific class. Long term goal is to drop them entirely.

	Review: Ales

	p4rmerge of Change 21125283 by sschirm
	from cl-21125283.p4r
	moved from //sw/physx/Releases/distro_mirrors/PhysX_3.4_APEX_1.4_Epic/ to //UE4/Dev-Physics-Upgrade/Engine/Source/ThirdParty/PhysX/

Change 3115952 on 2016/09/07 by Sheikh.Dawood.Abdul.Ajees

	[From trunk] 21119117 -  PX-721 PxVolumeCache deprecated [r Pierre]

	p4rmerge of Change 21125287 by sschirm
	from cl-21125287.p4r
	moved from //sw/physx/Releases/distro_mirrors/PhysX_3.4_APEX_1.4_Epic/ to //UE4/Dev-Physics-Upgrade/Engine/Source/ThirdParty/PhysX/

Change 3115958 on 2016/09/07 by Sheikh.Dawood.Abdul.Ajees

	[From trunk] 21124924 -  PX-720 PxSpatialIndex deprecated [r Pierre]

	p4rmerge of Change 21125289 by sschirm
	from cl-21125289.p4r
	moved from //sw/physx/Releases/distro_mirrors/PhysX_3.4_APEX_1.4_Epic/ to //UE4/Dev-Physics-Upgrade/Engine/Source/ThirdParty/PhysX/

Change 3115964 on 2016/09/07 by Sheikh.Dawood.Abdul.Ajees

	[From trunk] 21124943 -  PX-714 PxConstaintFlag::eDEPRECATED_32_COMPATIBILITY removed [r Simon]

	p4rmerge of Change 21125292 by sschirm
	from cl-21125292.p4r
	moved from //sw/physx/Releases/distro_mirrors/PhysX_3.4_APEX_1.4_Epic/ to //UE4/Dev-Physics-Upgrade/Engine/Source/ThirdParty/PhysX/

Change 3115969 on 2016/09/07 by Sheikh.Dawood.Abdul.Ajees

	[From trunk] 21094813 -  start thread additional tests [r Simon]

	p4rmerge of Change 21125307 by sschirm
	from cl-21125307.p4r
	moved from //sw/physx/Releases/distro_mirrors/PhysX_3.4_APEX_1.4_Epic/ to //UE4/Dev-Physics-Upgrade/Engine/Source/ThirdParty/PhysX/

Change 3115970 on 2016/09/07 by Luke.Thatcher

	[PLATFORM] [PS4] [!]
	Minor fix to PhysX 3.4/APEX 1.4 build for PS4 in //UE4/Dev-Physics-Upgrade.
	 - Library output path does not need to contain the Visual Studio version.
	 - Fixup library paths in PhysX.Build.cs

Change 3115973 on 2016/09/07 by Sheikh.Dawood.Abdul.Ajees

	[From trunk] 21105837 - [PX-494] Disambiguating GPU PhysX APIs not used by GRB.

	p4rmerge of Change 21125320 by sschirm
	from cl-21125320.p4r
	moved from //sw/physx/Releases/distro_mirrors/PhysX_3.4_APEX_1.4_Epic/ to //UE4/Dev-Physics-Upgrade/Engine/Source/ThirdParty/PhysX/

Change 3116047 on 2016/09/07 by Sheikh.Dawood.Abdul.Ajees

	[From trunk] 21125154 -  Merging APEX 1.4 trunk and Epic integration branches.

	p4rmerge of Change 21127359 by sschirm
	from cl-21127359.p4r
	moved from //sw/physx/Releases/distro_mirrors/PhysX_3.4_APEX_1.4_Epic/ to //UE4/Dev-Physics-Upgrade/Engine/Source/ThirdParty/PhysX/

Change 3116059 on 2016/09/07 by Sheikh.Dawood.Abdul.Ajees

	[From trunk]  updated and added products - 21124943

	p4rmerge of Change 21127711 by sabdulajees
	from cl-21127711.p4r
	moved from //sw/physx/Releases/distro_mirrors/PhysX_3.4_APEX_1.4_Epic/ to //UE4/Dev-Physics-Upgrade/Engine/Source/ThirdParty/PhysX/

Change 3116069 on 2016/09/07 by Sheikh.Dawood.Abdul.Ajees

	Enable APEX_UE4 define for cmake

	p4rmerge of Change 21127770 by sabdulajees
	from cl-21127770.p4r
	moved from //sw/physx/Releases/distro_mirrors/PhysX_3.4_APEX_1.4_Epic/ to //UE4/Dev-Physics-Upgrade/Engine/Source/ThirdParty/PhysX/

Change 3116073 on 2016/09/07 by Sheikh.Dawood.Abdul.Ajees

	[From Epic] 3112432 - Quickhull cleanup fix. Remove slow check for if actors are simulating.

	p4rmerge of Change 21128334 by sabdulajees
	from cl-21128334.p4r
	moved from //sw/physx/Releases/distro_mirrors/PhysX_3.4_APEX_1.4_Epic/ to //UE4/Dev-Physics-Upgrade/Engine/Source/ThirdParty/PhysX/

Change 3116081 on 2016/09/07 by Sheikh.Dawood.Abdul.Ajees

	Add APEX_UE4 define

Change 3116088 on 2016/09/07 by Sheikh.Dawood.Abdul.Ajees

	Missed conflicted change in CL 3116047

Change 3116415 on 2016/09/07 by Ori.Cohen

	Improve vehicle debug rendering stats to be more meaningful. Also fix lock semantic issue.

Change 3117376 on 2016/09/08 by Luke.Thatcher

	[PLATFORM] [PS4] [~]
	Update PhysX/APEX compile warnings flags to minimal set needed for a successful build.

Change 3118458 on 2016/09/08 by Dmitry.Rekman

	Linux: first iteration of automated cross-build.

	- Still relies on make being available on the system.

Change 3118848 on 2016/09/08 by Chris.Babcock

	Added PxSharedDir +  src/*/include directories for PhysX (not found if APEX not enabled for platform)

Change 3119236 on 2016/09/09 by Keith.Judge

	PhysX 3.4 Automation Tool build for Xbox One.

Change 3119788 on 2016/09/09 by Chris.Babcock

	Fix all the blank lines (messing up resolves)

Change 3119801 on 2016/09/09 by Chris.Babcock

	Change filetype back to text

Change 3119804 on 2016/09/09 by Ori.Cohen

	Remove areaTestEpsilon=0 which is no longer needed since we set skin width according to the relative extent of the mesh.

	#JIRA UE-35678

Change 3120210 on 2016/09/09 by Dmitry.Rekman

	Linux: PhysX libs + changes to make UE4Client built.

Change 3120441 on 2016/09/09 by Chris.Babcock

	Android: PhysX libs + changes to make UE4Client build (ARMv7 only!)

Change 3120857 on 2016/09/12 by Nick.Shin

	support tool: gnu win32 make

	#jira UEFW-106 - Add HTML5 support to PhysX CMake & automation scripts
	#code.review dmitry.rekman

Change 3120876 on 2016/09/12 by Nick.Shin

	HTML5 platform -- PhysX automation tool support

	#jira UEPLAT-1324 - Update HTML5 PhysX to CMake

Change 3120881 on 2016/09/12 by Nick.Shin

	APEX files for HTML5 builds

	NOTE: these are work in progress
	- SIMD erros still needs to be looked at

Change 3121162 on 2016/09/12 by Ori.Cohen

	Remove unneeded glut and nv ext dll

	#JIRA UE-UE-35744

Change 3121209 on 2016/09/12 by Ales.Borovicka

	[From trunk] 21146632 -  PX-743 fixed convex hull issue

	p4rmerge of Change 21146795 by aborovicka
	from cl-21146795.p4r
	moved from //sw/physx/Releases/distro_mirrors/PhysX_3.4_APEX_1.4_Epic/ to //UE4/Dev-Physics-Upgrade/Engine/Source/ThirdParty/PhysX/

Change 3121707 on 2016/09/12 by Dmitry.Rekman

	PhysX: fix path to bundled make.

Change 3122071 on 2016/09/12 by Chad.Garyet

	dev-physics upgrade build process

Change 3122096 on 2016/09/12 by Ori.Cohen

	Add rb none to auto generated build script

Change 3122098 on 2016/09/12 by Ori.Cohen

	Removing regex from json

Change 3122108 on 2016/09/12 by Ori.Cohen

	Fixing json to include -- in command line

Change 3122114 on 2016/09/12 by Chris.Babcock

	Android: allow speciifying architecture with TargetPlatforms (optional - after platform), ex. Android-arm64

Change 3122123 on 2016/09/12 by Chad.Garyet

	fixing typos

Change 3122124 on 2016/09/12 by Chad.Garyet

	typo fix

Change 3122128 on 2016/09/12 by Chad.Garyet

	typo fix

Change 3122130 on 2016/09/12 by Chad.Garyet

	typo fix

Change 3122177 on 2016/09/12 by Chris.Babcock

	Android: added libraries (ARMv7, ARM64, x86)

Change 3122200 on 2016/09/12 by Chris.Babcock

	Fix bad escape character (\#)

Change 3122739 on 2016/09/13 by Chad.Garyet

	Making these full workspaces instead of compiles, compiles cannot submit to p4

Change 3122827 on 2016/09/13 by Dmitry.Rekman

	PhysX: fix case sensitive build.

Change 3122944 on 2016/09/13 by Nick.Shin

	support tool: gnu win32 make

	these are the source codes to the utility

	#jira UEFW-106 - Add HTML5 support to PhysX CMake & automation scripts
	#code.review dmitry.rekman

Change 3123511 on 2016/09/13 by Dmitry.Rekman

	Linux: fix building when Cygwin is present.

	- Also: don't use Windows tools on non-Windows platforms.

Change 3123529 on 2016/09/13 by Nick.Shin

	forgot to submit this in CL: 3120876

Change 3123713 on 2016/09/13 by Michael.Trepka

	Support for building PhysX 3.4 and APEX 1.4 with CMake for Mac

Change 3123716 on 2016/09/13 by Michael.Trepka

	PhysX 3.4 and APEX 1.4 libraries for Mac

Change 3123718 on 2016/09/13 by Chris.Babcock

	Android: added x86_64 (x64) PhysX libraries and cmake changes

Change 3124033 on 2016/09/13 by Ori.Cohen

	Change physx auto build to use reconcile instead of mass edit all files. Needed to keep build machines from orphaning change lists on failure.

Change 3124036 on 2016/09/13 by Dmitry.Rekman

	Fix compile error due to symbol collision.

Change 3124198 on 2016/09/13 by Ori.Cohen

	Fix file search not using the right build suffix for release builds.

Change 3124577 on 2016/09/14 by Ori.Cohen

	Fix environment PATH incorrectly dropping paths.

Change 3124897 on 2016/09/14 by Ori.Cohen

	Added platforms to physx build machine

Change 3124905 on 2016/09/14 by Chad.Garyet

	Swapping dev-physics stream to minimal vstream.

Change 3124928 on 2016/09/14 by Ori.Cohen

	Fix android typo

Change 3124940 on 2016/09/14 by Chad.Garyet

	adding email notifiers

Change 3125065 on 2016/09/14 by Ori.Cohen

	Prevent unsupported platforms from trying to build APEX. Needed for batch processing of many platforms.

Change 3125242 on 2016/09/14 by Ori.Cohen

	Remove DLL dependency on PhysXDevice64

Change 3125319 on 2016/09/14 by Dmitry.Rekman

	PhysXBuild: speed up make when building Linux.

	- Credits for the suggestion go to LukeT.
	- Can spawn more than 16 jobs because Win32 make reportedly cannot control its number, but this hasn't been a problem when building locally (might be due to individual jobs being quick).

Change 3125324 on 2016/09/14 by Dmitry.Rekman

	Fixes to Linux PhysX.

	- Bring missing defines to some Apex libs.
	- Set to always include debug info in Linux.
	- Set to use response file (for some reason this fixed a build locally despite CMake not using it).

Change 3125420 on 2016/09/14 by Ori.Cohen

	Remove caching of bodysetup cooking when there's a warning/error.

Change 3125675 on 2016/09/14 by Dmitry.Rekman

	Linux: fix case-sensitive compilation.

Change 3125718 on 2016/09/14 by Dmitry.Rekman

	Fix UAT building on Linux.

Change 3125735 on 2016/09/14 by Dmitry.Rekman

	Linux: changes for building PhysX natively

	- Needed for debugging (proper debug info gets built).

Change 3125868 on 2016/09/14 by Michael.Trepka

	iOS support for PhysX 3.4

Change 3125878 on 2016/09/14 by Michael.Trepka

	PhysX 3.4 libraries for iOS

Change 3125927 on 2016/09/14 by Dmitry.Rekman

	Linux: (better) architecture support.

	- Also a fix for Apex not having APEX_UE4 set.

Change 3125937 on 2016/09/14 by Dmitry.Rekman

	Linux: more fixes for Apex.

	- Minor changes after having APEX_UE4 defined properly.

Change 3126282 on 2016/09/15 by Luke.Thatcher

	[PLATFORM] [PS4] [~] Use GNU makefiles for PhysX/APEX PS4 builds, as AutoSDK does not install the required file for MSBuild to work correctly.

	 - Response files are enabled for PS4 and Linux builds, to fix long/truncated command line errors. The flags for this have been moved to the common.cmake files, and are enabled by the build tool via a command line define switch -DUSE_RESPONSE_FILES=1.
	 - Simplified PS4 Android and Linux cases in SetupBuildForTargetLibAndPlatform, as they all do exactly the same thing.
	 - Simplified -j 16 flag handling on Windows build hosts, and enabled for all makefile platforms (currently Linux, PS4 and Android)
	 - Removed old PS4ToolChain.txt file which was unused.

Change 3126540 on 2016/09/15 by Michael.Trepka

	tvOS support for PhysX 3.4

Change 3126541 on 2016/09/15 by Michael.Trepka

	PhysX 3.4 libs for tvOS

Change 3126652 on 2016/09/15 by Simon.Schirm

	Remove PxShared src includes #rb Ori.Cohen

Change 3126869 on 2016/09/15 by Ori.Cohen

	Add mac cmake binary

Change 3126873 on 2016/09/15 by Ori.Cohen

	mac to use UE cmake bin

Change 3126895 on 2016/09/15 by Michael.Trepka

	Added +x to Mac cmake binary

Change 3126905 on 2016/09/15 by Michael.Trepka

	Fixed BuildPhysX.Automation.cs compile errors on Mono

Change 3126910 on 2016/09/15 by Nick.Shin

	addendum to: CL: #3120881

	APEX files for HTML5 builds
	- tested these changes for both PhysX and APEX builds

Change 3126922 on 2016/09/15 by Ben.Marsh

	Put Dev-Physics-Upgrade onto the Shared_Compile and UE4_Compile_Mac pools.

Change 3127072 on 2016/09/15 by Ori.Cohen

	Improve debug symbols for xbox and ps4

Change 3127194 on 2016/09/15 by Ori.Cohen

	Distinguish between cmake and cmake.exe

Change 3127833 on 2016/09/16 by Ales.Borovicka

	[From trunk] 21162711 -  increased tolerance for refused verts in quick hull

	p4rmerge of Change 21162990 by aborovicka
	from cl-21162990.p4r
	moved from //sw/physx/Releases/distro_mirrors/PhysX_3.4_APEX_1.4_Epic/ to //UE4/Dev-Physics-Upgrade/Engine/Source/ThirdParty/PhysX/

Change 3127960 on 2016/09/16 by Benn.Gallagher

	Duplicated clothing holes fix from Dev-Framework

Change 3127982 on 2016/09/16 by Ori.Cohen

	Merging //UE4/Dev-Physics to Dev-Physics-Upgrade (//UE4/Dev-Physics-Upgrade)

Change 3128052 on 2016/09/16 by Ori.Cohen

	Fixed incorrect PxMat34Legacy legacy serialization (Owen bug).

Change 3128113 on 2016/09/16 by Ales.Borovicka

	[From trunk] 21126371 -  Profiler changes

	- Remove PxProfileTypes
	It looks like nobody understands how to use this:
	struct PxProfileTypes
	{
	enum Enum
	{
	eNORMAL       = 0, //!< ordinary profile zone, starts and ends in same thread
	eSTALL        = 1, //!< thread is busy but can't progress (example: spin-lock)
	eIDLE         = 2, //!< thread is idle (example: waiting for event)
	eDETACHED     = 3, //!< zone crosses thread boundary
	eLOCK         = 4, //!< thread tries to acquire a lock, reports result on zoneEnd()
	eLOCK_SUCCESS = 5, //!< locking mutex succeded, to be passed to zoneEnd()
	eLOCK_FAILED  = 6, //!< locking mutex failed, to be passed to zoneEnd()
	eLOCK_TIMEOUT = 7  //!< locking mutex timed out, to be passed to zoneEnd()
	};
	};

	It seems that only eNORMAL and eDETACHED are used in the SDK, and eDETACHED can be done automatically (see below). It is unclear how the users are supposed to use the other enums.

	==> not done fully automatically yet, instead there is now just a bool for detached/regular events. The PVD implementation needs to know in the "start" event if the zone is "detached" or not, so the fully automatic version unfortunately would not work immediately with PVD (at least not without touching the PVD code). Maybe later.

	- Return a void pointer from zoneStart. Pass it to zoneEnd.
	Most profilers use a scoped object like our own PxProfileScoped class, which stores some data locally (on the stack) in the ?start≈ event, so that it is still available in the ?end≈ event. Unfortunately our virtual interface does not let users do the same in their implementation.
	We suffer from this ourselves, in our own PVD implementation. For example in the code below we do the expensive ?getEventIdForName≈ twice with the same event name:
	void PvdImpl::zoneStart(const char* eventName, PxProfileTypes::Enum type, uint64_t contextId, const char *filename, int lineno)
	{
	if ( mProfileZone )
	{
	uint16_t id = mProfileZone->getEventIdForName(eventName);

	void PvdImpl::zoneEnd(const char *eventName, PxProfileTypes::Enum type, uint64_t contextId)
	{
	if ( mProfileZone )
	{
	uint16_t id = mProfileZone->getEventIdForName(eventName);

	But a regular profiler would not do that: it would store the id as a class member and reuse it in the ?end≈ event. We can allow this kind of optimizations to happen by simply returning a void pointer from ╡zoneStart? and passing it to the ╡zoneEnd? function. We would then return the id as a void pointer, and cast it back to an int16 in zoneEnd.
	This is not ideal because the amount of data is limited to the size of a pointer, but this opens the door for some optimizations at least.

	p4rmerge of Change 21162866 by aborovicka
	from cl-21162866.p4r
	moved from //sw/physx/Releases/distro_mirrors/PhysX_3.4_APEX_1.4_Epic/ to //UE4/Dev-Physics-Upgrade/Engine/Source/ThirdParty/PhysX/

Change 3128119 on 2016/09/16 by Ales.Borovicka

	[From trunk] 21126412 -  fixed compile error

	p4rmerge of Change 21162870 by aborovicka
	from cl-21162870.p4r
	moved from //sw/physx/Releases/distro_mirrors/PhysX_3.4_APEX_1.4_Epic/ to //UE4/Dev-Physics-Upgrade/Engine/Source/ThirdParty/PhysX/

Change 3128122 on 2016/09/16 by Ales.Borovicka

	[From trunk] 21131564 -  Remove PxBufferedProfilerCallback.

	Review: Ales

	p4rmerge of Change 21162874 by aborovicka
	from cl-21162874.p4r
	moved from //sw/physx/Releases/distro_mirrors/PhysX_3.4_APEX_1.4_Epic/ to //UE4/Dev-Physics-Upgrade/Engine/Source/ThirdParty/PhysX/

Change 3128129 on 2016/09/16 by Ales.Borovicka

	[From trunk] 21154319 -  Remove the PxProfileContext enum.

	The rationale is that the default value should be implementation-specific, and thus left to users. "0" makes sense for our implementation (PVD) since we store a scene pointer as our context, but a different user-provided implementation might use for example a scene index instead, in which case 0 would be a completely legal value, and perhaps 0xffffffff would be a more appropriate value for indicating "no context". On top of that, the enum struct itself was questionable since it only defined a single value.

	Review: Ales

	p4rmerge of Change 21162877 by aborovicka
	from cl-21162877.p4r
	moved from //sw/physx/Releases/distro_mirrors/PhysX_3.4_APEX_1.4_Epic/ to //UE4/Dev-Physics-Upgrade/Engine/Source/ThirdParty/PhysX/

Change 3128134 on 2016/09/16 by Ales.Borovicka

	[From trunk] 21159702 -  PX-637: Change CreateParticleShapes_Stage1 to launch as a single CTA

	p4rmerge of Change 21162880 by aborovicka
	from cl-21162880.p4r
	moved from //sw/physx/Releases/distro_mirrors/PhysX_3.4_APEX_1.4_Epic/ to //UE4/Dev-Physics-Upgrade/Engine/Source/ThirdParty/PhysX/

Change 3128139 on 2016/09/16 by Ales.Borovicka

	[From trunk] 21130683 - [PX-516] Joint lock flags. Working on both CPU and GPU. Reviewed by Michelle

	p4rmerge of Change 21162901 by aborovicka
	from cl-21162901.p4r
	moved from //sw/physx/Releases/distro_mirrors/PhysX_3.4_APEX_1.4_Epic/ to //UE4/Dev-Physics-Upgrade/Engine/Source/ThirdParty/PhysX/

Change 3128143 on 2016/09/16 by Ori.Cohen

	Fix for TryGetVSInstallDir

Change 3128144 on 2016/09/16 by Ales.Borovicka

	[From trunk] 21130799 -  PX-526 sweep geometry isValid [r Pierre]

	p4rmerge of Change 21162904 by aborovicka
	from cl-21162904.p4r
	moved from //sw/physx/Releases/distro_mirrors/PhysX_3.4_APEX_1.4_Epic/ to //UE4/Dev-Physics-Upgrade/Engine/Source/ThirdParty/PhysX/

Change 3128150 on 2016/09/16 by Ales.Borovicka

	[From trunk] 21135017 -  fixed incorrect geometry sweep validation function

	p4rmerge of Change 21162909 by aborovicka
	from cl-21162909.p4r
	moved from //sw/physx/Releases/distro_mirrors/PhysX_3.4_APEX_1.4_Epic/ to //UE4/Dev-Physics-Upgrade/Engine/Source/ThirdParty/PhysX/

Change 3128154 on 2016/09/16 by Ales.Borovicka

	[From trunk] 21130972 -  Fixed some build warnings produced on iOS.

	p4rmerge of Change 21162917 by aborovicka
	from cl-21162917.p4r
	moved from //sw/physx/Releases/distro_mirrors/PhysX_3.4_APEX_1.4_Epic/ to //UE4/Dev-Physics-Upgrade/Engine/Source/ThirdParty/PhysX/

Change 3128159 on 2016/09/16 by Ales.Borovicka

	[From trunk] 21131769 -  Attempted fix for documentation build error.

	p4rmerge of Change 21162918 by aborovicka
	from cl-21162918.p4r
	moved from //sw/physx/Releases/distro_mirrors/PhysX_3.4_APEX_1.4_Epic/ to //UE4/Dev-Physics-Upgrade/Engine/Source/ThirdParty/PhysX/

Change 3128163 on 2016/09/16 by Ales.Borovicka

	[From trunk] 21134721 -  Remove shadowed variable in constrainMotion in joint projection

	p4rmerge of Change 21162924 by aborovicka
	from cl-21162924.p4r
	moved from //sw/physx/Releases/distro_mirrors/PhysX_3.4_APEX_1.4_Epic/ to //UE4/Dev-Physics-Upgrade/Engine/Source/ThirdParty/PhysX/

Change 3128168 on 2016/09/16 by Ales.Borovicka

	[From trunk] 21135420 -  Re-enabled adaptive force on both GPU and CPU pipelines. Required some semantic changes to the way stabilization works to allow both approaches to leverage "accelScale" to scale gravity. Reviewed by Michelle

	p4rmerge of Change 21162929 by aborovicka
	from cl-21162929.p4r
	moved from //sw/physx/Releases/distro_mirrors/PhysX_3.4_APEX_1.4_Epic/ to //UE4/Dev-Physics-Upgrade/Engine/Source/ThirdParty/PhysX/

Change 3128171 on 2016/09/16 by Ales.Borovicka

	[From trunk] 21135492 -  Fix bug in immediate mode where a PxGeometry was dangerously cast to a Gu::GeometryUnion. It is not guaranteed (or even likely) that the application will be passing a Gu::GeometryUnion so this is likely to result in a crash if a convex hull, mesh or HF were used. Reviewed by Michelle

	p4rmerge of Change 21162930 by aborovicka
	from cl-21162930.p4r
	moved from //sw/physx/Releases/distro_mirrors/PhysX_3.4_APEX_1.4_Epic/ to //UE4/Dev-Physics-Upgrade/Engine/Source/ThirdParty/PhysX/

Change 3128173 on 2016/09/16 by Ales.Borovicka

	[From trunk] 21139402 -  Improve PVD profiling for multiple scenes

	Review: Ales

	p4rmerge of Change 21162932 by aborovicka
	from cl-21162932.p4r
	moved from //sw/physx/Releases/distro_mirrors/PhysX_3.4_APEX_1.4_Epic/ to //UE4/Dev-Physics-Upgrade/Engine/Source/ThirdParty/PhysX/

Change 3128181 on 2016/09/16 by Ales.Borovicka

	[From trunk] 21145313 -  Improved support for multi-scenes profiling in PVD (continued)

	p4rmerge of Change 21162936 by aborovicka
	from cl-21162936.p4r
	moved from //sw/physx/Releases/distro_mirrors/PhysX_3.4_APEX_1.4_Epic/ to //UE4/Dev-Physics-Upgrade/Engine/Source/ThirdParty/PhysX/

Change 3128184 on 2016/09/16 by Ales.Borovicka

	[From trunk] 21145467 -  Improved support for multi-scene profiling in PVD (continued)

	p4rmerge of Change 21162941 by aborovicka
	from cl-21162941.p4r
	moved from //sw/physx/Releases/distro_mirrors/PhysX_3.4_APEX_1.4_Epic/ to //UE4/Dev-Physics-Upgrade/Engine/Source/ThirdParty/PhysX/

Change 3128188 on 2016/09/16 by Ales.Borovicka

	[From trunk] 21145584 -  Improved support for multi-scene profiling in PVD (continued)

	p4rmerge of Change 21162943 by aborovicka
	from cl-21162943.p4r
	moved from //sw/physx/Releases/distro_mirrors/PhysX_3.4_APEX_1.4_Epic/ to //UE4/Dev-Physics-Upgrade/Engine/Source/ThirdParty/PhysX/

Change 3128189 on 2016/09/16 by Ales.Borovicka

	[From trunk] 21146617 -  PX-712, PX-507 fixed load of RepX file with kinematic rigid bodies with mesh shapes [r Simon]

	p4rmerge of Change 21162947 by aborovicka
	from cl-21162947.p4r
	moved from //sw/physx/Releases/distro_mirrors/PhysX_3.4_APEX_1.4_Epic/ to //UE4/Dev-Physics-Upgrade/Engine/Source/ThirdParty/PhysX/

Change 3128190 on 2016/09/16 by Ben.Marsh

	Build PhysX targets in parallel.

Change 3128193 on 2016/09/16 by Ales.Borovicka

	[From trunk] 21150008 -  PX-722 - PxClientID deprecated [r Kier]

	p4rmerge of Change 21162949 by aborovicka
	from cl-21162949.p4r
	moved from //sw/physx/Releases/distro_mirrors/PhysX_3.4_APEX_1.4_Epic/ to //UE4/Dev-Physics-Upgrade/Engine/Source/ThirdParty/PhysX/

Change 3128198 on 2016/09/16 by Ales.Borovicka

	[From trunk] 21150053 -  Improved support for multi-scene profiling in PVD (continued)

	p4rmerge of Change 21162952 by aborovicka
	from cl-21162952.p4r
	moved from //sw/physx/Releases/distro_mirrors/PhysX_3.4_APEX_1.4_Epic/ to //UE4/Dev-Physics-Upgrade/Engine/Source/ThirdParty/PhysX/

Change 3128201 on 2016/09/16 by Ales.Borovicka

	[From trunk] 21150234 -  fix compile error

	p4rmerge of Change 21162956 by aborovicka
	from cl-21162956.p4r
	moved from //sw/physx/Releases/distro_mirrors/PhysX_3.4_APEX_1.4_Epic/ to //UE4/Dev-Physics-Upgrade/Engine/Source/ThirdParty/PhysX/

Change 3128205 on 2016/09/16 by Ales.Borovicka

	[From trunk] 21155265 -  metadata updated

	p4rmerge of Change 21162962 by aborovicka
	from cl-21162962.p4r
	moved from //sw/physx/Releases/distro_mirrors/PhysX_3.4_APEX_1.4_Epic/ to //UE4/Dev-Physics-Upgrade/Engine/Source/ThirdParty/PhysX/

Change 3128211 on 2016/09/16 by Ales.Borovicka

	[From trunk] 21159411 - [PX-638] GRB cleanup items. Reviewed by Michelle

	p4rmerge of Change 21162982 by aborovicka
	from cl-21162982.p4r
	moved from //sw/physx/Releases/distro_mirrors/PhysX_3.4_APEX_1.4_Epic/ to //UE4/Dev-Physics-Upgrade/Engine/Source/ThirdParty/PhysX/

Change 3128213 on 2016/09/16 by Ales.Borovicka

	[From trunk] 21159818 -  kinematic rigid repX fix for Android

	p4rmerge of Change 21162989 by aborovicka
	from cl-21162989.p4r
	moved from //sw/physx/Releases/distro_mirrors/PhysX_3.4_APEX_1.4_Epic/ to //UE4/Dev-Physics-Upgrade/Engine/Source/ThirdParty/PhysX/

Change 3128222 on 2016/09/16 by Ales.Borovicka

	[From trunk] 21150589 -  fixes after PxShared and PhysX changes

	p4rmerge of Change 21162999 by aborovicka
	from cl-21162999.p4r
	moved from //sw/physx/Releases/distro_mirrors/PhysX_3.4_APEX_1.4_Epic/ to //UE4/Dev-Physics-Upgrade/Engine/Source/ThirdParty/PhysX/

Change 3128228 on 2016/09/16 by Ales.Borovicka

	[From trunk] 21159948 -  doxygen comments and indents fixes in public interface

	p4rmerge of Change 21163009 by aborovicka
	from cl-21163009.p4r
	moved from //sw/physx/Releases/distro_mirrors/PhysX_3.4_APEX_1.4_Epic/ to //UE4/Dev-Physics-Upgrade/Engine/Source/ThirdParty/PhysX/

Change 3128229 on 2016/09/16 by Ales.Borovicka

	[From trunk] 21163740 -  Fixed race condition in interaction framework. Simplified some code related to triggers/particles/clothing interactions, which does not get run in parallel. This previously shared its implementation with the parallel rigid body interactions but, as a result of some refactoring, it now doesn't. Reviewed by Michelle

	p4rmerge of Change 21163978 by aborovicka
	from cl-21163978.p4r
	moved from //sw/physx/Releases/distro_mirrors/PhysX_3.4_APEX_1.4_Epic/ to //UE4/Dev-Physics-Upgrade/Engine/Source/ThirdParty/PhysX/

Change 3128255 on 2016/09/16 by Ori.Cohen

	Include platform target in physx libs CL

Change 3128259 on 2016/09/16 by Ori.Cohen

	Fix android reference

Change 3128287 on 2016/09/16 by Ales.Borovicka

	[From trunk] 21127073 -  PX-693 added define PX_EMSCRIPTEN [r Simon]

	p4rmerge of Change 21162846 by aborovicka
	from cl-21162846.p4r
	moved from //sw/physx/Releases/distro_mirrors/PhysX_3.4_APEX_1.4_Epic/ to //UE4/Dev-Physics-Upgrade/Engine/Source/ThirdParty/PhysX/

Change 3128622 on 2016/09/16 by Ori.Cohen

	Fix stale cpp in the pvdsdk cmake file.

Change 3128744 on 2016/09/16 by Ori.Cohen

	Fix force_inline preventing linker from finding symbols

Change 3128770 on 2016/09/16 by Ben.Marsh

	Add a nightly build for Dev-Physics-Upgrade

Change 3128792 on 2016/09/16 by Ori.Cohen

	Remove inline entirely as it won't work for some platforms when the definition is not in the same cpp

Change 3128807 on 2016/09/16 by Ben.Marsh

	Really split PhysX nodes out onto different agents.

Change 3128835 on 2016/09/16 by Dmitry.Rekman

	Linux: Add support for ARM architecture (without APEX).

Change 3128951 on 2016/09/16 by Dmitry.Rekman

	Add Linux-ARM to the builder list.

Change 3129006 on 2016/09/16 by Dmitry.Rekman

	Fix for adding Linux ARM build.

Change 3129037 on 2016/09/16 by Ori.Cohen

	Fix DLL empty warning

Change 3129426 on 2016/09/16 by Ori.Cohen

	Refresh DDC key for new physx cooking libs

Change 3129428 on 2016/09/16 by Ori.Cohen

	Fix compiler error

Change 3130638 on 2016/09/19 by Ori.Cohen

	Add debug symbols to APEX on PS4

Change 3130977 on 2016/09/19 by Ori.Cohen

	Undefine APEX_API and PHYSX_API before including physx and apex headers.

Change 3131021 on 2016/09/19 by Ori.Cohen

	Add APEX_UE4 as a definition regardless of which module is being built.

	#JIRA UE-36044

Change 3131024 on 2016/09/19 by Ori.Cohen

	Make sure html5 gets apex ue4 flag

Change 3131517 on 2016/09/19 by Jeff.Farris

	Support for speculative CCD.

Change 3131935 on 2016/09/20 by Simon.Schirm

	[From trunk] 21163785 -  Fixed incorrect PxMat34Legacy legacy serialization (Owen bug in UE4). Removed comment... #rb none

	p4rmerge of Change 21175004 by sschirm
	from cl-21175004.p4r
	moved from //sw/physx/Releases/distro_mirrors/PhysX_3.4_APEX_1.4_Epic/ to //UE4/Dev-Physics-Upgrade/Engine/Source/ThirdParty/PhysX/

Change 3131942 on 2016/09/20 by Marijn.Tamis

	[APEX1.4]Async cloth Cooking issue workaround.

Change 3132145 on 2016/09/20 by Simon.Schirm

	[From trunk] 21170876 -  PX-745 - Remove custom kernel profiling functionality from PxShared, PhysX and APEX #rb none

	Review: Simon

	p4rmerge of Change 21175012 by sschirm
	from cl-21175012.p4r
	moved from //sw/physx/Releases/distro_mirrors/PhysX_3.4_APEX_1.4_Epic/ to //UE4/Dev-Physics-Upgrade/Engine/Source/ThirdParty/PhysX/

Change 3132289 on 2016/09/20 by Simon.Schirm

	[From trunk] 21175816 -  Removed more references to unsupported GPU profiling. Complements 21170876 (r ibychkov) #rb none

	p4rmerge of Change 21175823 by sschirm
	from cl-21175823.p4r
	moved from //sw/physx/Releases/distro_mirrors/PhysX_3.4_APEX_1.4_Epic/ to //UE4/Dev-Physics-Upgrade/Engine/Source/ThirdParty/PhysX/

Change 3132316 on 2016/09/20 by Simon.Schirm

	[From trunk] updated and added products (only docs) #rb none

	p4rmerge of Change 21175900 by sschirm
	from cl-21175900.p4r
	moved from //sw/physx/Releases/distro_mirrors/PhysX_3.4_APEX_1.4_Epic/ to //UE4/Dev-Physics-Upgrade/Engine/Source/ThirdParty/PhysX/

Change 3132614 on 2016/09/20 by Ori.Cohen

	Allow sweeps with 0 direction to still do an overlap check.

	#JIRA UE-35264

Change 3135155 on 2016/09/21 by Jeff.Campeau

	PhysX Xbox One Cmake fixes

Change 3135733 on 2016/09/22 by Ales.Borovicka

	[From trunk] 21184354 -  PX-662 fixed android issues with articulation [r Kier]

	p4rmerge of Change 21184355 by aborovicka
	from cl-21184355.p4r
	moved from //sw/physx/Releases/distro_mirrors/PhysX_3.4_APEX_1.4_Epic/ to //UE4/Dev-Physics-Upgrade/Engine/Source/ThirdParty/PhysX/

Change 3136023 on 2016/09/22 by Sheikh.Dawood.Abdul.Ajees

	Remove APEX_UE4 flag for individual platforms

Change 3136245 on 2016/09/22 by Simon.Schirm

	[From trunk] 21184998 -  Fixed another source of non-determinism reported by FAKT. Reviewed by Michelle, #rb none

	p4rmerge of Change 21185183 by sschirm
	from cl-21185183.p4r
	moved from //sw/physx/Releases/distro_mirrors/PhysX_3.4_APEX_1.4_Epic/ to //UE4/Dev-Physics-Upgrade/Engine/Source/ThirdParty/PhysX/

Change 3137891 on 2016/09/23 by Benn.Gallagher

	Fix to clothing shutdown to correctly clear fabric factories

Change 3138175 on 2016/09/23 by Ori.Cohen

	Fix unused variable warning

	#JIRA UE-36363

Change 3139645 on 2016/09/26 by Benn.Gallagher

	Fix CEF build failure from Merge

Change 3139706 on 2016/09/26 by Benn.Gallagher

	Fixed another merge issue in mcp plugin

Change 3139708 on 2016/09/26 by Ori.Cohen

	Remove unused variable in Apex.build.cs

	#JIRA UE-36363

Change 3139745 on 2016/09/26 by Ori.Cohen

	Fix xbox one not finding physx/apex libs.

Change 3139910 on 2016/09/26 by mason.seay

	Removing collision to fix cook error (replicating fix that was made in Odin stream)

	UE-36372

Change 3140178 on 2016/09/26 by Jeff.Campeau

	Fix Xbox One lib generation warnings (add default language element)

Change 3140179 on 2016/09/26 by Jeff.Campeau

	Fix Xbox One compile warning in PhysX source

Change 3140180 on 2016/09/26 by Jeff.Campeau

	Fix PhysX build errors (don't dllimport and include all needed libs)

Change 3140235 on 2016/09/26 by Jeff.Campeau

	Fix a couple more compile warnings from typos

[CL 3140364 by Ori Cohen in Main branch]
2016-09-26 15:28:28 -04:00
Josh Adams
1b81c281d4 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
Josh Adams
cff34abe0d Copying //UE4/Dev-Platform to Dev-Main (//UE4/Dev-Main)
#lockdown nick.penwarden
#rb none

[CL 3020245 by Josh Adams in Main branch]
2016-06-20 16:57:06 -04:00
Josh Adams
877a542dd6 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
Josh Adams
cf651e0c63 Change 2898947 on 2016/03/08 by Mark.Satterthwaite
Move the Apple Driver Monitor stats into their own stat groups, DriverMonitor has the common stats, DriverMonitorAMD/Intel/Nvidia have the vendor/GPU specific stats. The Metal and OpenGL RHIs update the driver monitor stats group for the current GPU at the appropriate time.

Change 2898950 on 2016/03/08 by Mark.Satterthwaite

	More shader cache code documentation.

Change 2898952 on 2016/03/08 by Michael.Trepka

	Check GPU driver version and warn of bad drivers only on Windows

Change 2898964 on 2016/03/08 by Mark.Satterthwaite

	Only verify the vertex attribute layout for Metal in debug builds or when using development with the debug layer turned on. It reduces performance significantly and isn't all that helpful unless you are attempting to debug a mismatch.

Change 2898973 on 2016/03/08 by Mark.Satterthwaite

	Switch uniform buffers to managed memory on Mac as this is more appropriate for AMD & Nvidia GPUs.

Change 2898988 on 2016/03/08 by Mark.Satterthwaite

	Simplify MetalContext by having only one SubmitCommandsHint implementation.

Change 2899011 on 2016/03/08 by Mark.Satterthwaite

	Duplicate 4.11 CL #2898988:

	Proper fix for UE-25804 - we have to manually expand PF_G8 + SRGB to RGBA8_sRGB - this then fixes UE-27483.
	#jira UE-25804
	#jira UE-27483

Change 2899024 on 2016/03/08 by Mark.Satterthwaite

	Duplicate 4.11 CL #2887365 & CL #2887583:

	Allow InfiltratorDemoEditor under Metal to issue a query buffer reset without crashing - the function that switches to the new query buffer needs to reapply some of the draw-state so that future commands don't dereference nil.
	#jira UE-27513

	My earlier fix for UE-27513 overlooked various internal details that meant it wouldn't restore state correctly, would fail validation and could crash in a new place. This version will ensure that cached state is only reset when it is appropriate to do so and will restore it correct when doing a query buffer reset.
	#jira UE-27513

Change 2899418 on 2016/03/08 by Daniel.Lamb

	Added support for textboxes in the editor to convert uasset filenames into long package names. As this is more useful to the cooker and more portable for projects.
	#codereview Matt.Kuhlenschmidt
	#jira UE-27785

Change 2899419 on 2016/03/08 by Daniel.Lamb

	Added support for passing -opengl command through to launch on if the editor is started with it.
	#codereview Michael.Trepka

Change 2900846 on 2016/03/09 by Mark.Satterthwaite

	Reimplement Metal object lifetime tracking as stats in the stat-group, though the old system is maintained as a debug-only tool that could (and probably should) be extended to track over/under-release bugs. Currently the texture count will be distorted by texture SRVs so will need improvement but other stats should be reliable. In order to properly report the number of buffers the TResourcePool policy class must now define a FreeResource function, so I've added them to the appropriate places too.

Change 2900853 on 2016/03/09 by Mark.Satterthwaite

	Optimise away empty encoders that don't perform a clear operation on AMD & Intel, but not Nvidia or non-Mac Metal devices. This should slightly improve performance.

Change 2900927 on 2016/03/09 by Mark.Satterthwaite

	Implemented operation threshold submission of Metal command buffers to keep the GPU busier and not just idle waiting for the CPU. Whenever rhi.Metal.CommandBufferCommitThreshold is set to a value >0 and the current command buffer has >= draw/dispatch operations outstanding then the command-buffer will be committed at the next encoder boundary. The default value is 100 operations which is currently arbitrary and the feature can be disabled by setting the value to <= 0 in which case only explicit submissions will occur as previously.

Change 2901310 on 2016/03/09 by Mark.Satterthwaite

	Change OneColor clear shader setup so that it works with parallel encoding in Metal.

Change 2903002 on 2016/03/10 by Mark.Satterthwaite

	Instantiate the OneColor shaders once in Metal.

Change 2903274 on 2016/03/10 by Mark.Satterthwaite

	Remove more unnecessary parallel execution stalls from MetalRHI.

Change 2903402 on 2016/03/10 by Mark.Satterthwaite

	Implement Metal support for index buffer SRVs.

Change 2903419 on 2016/03/10 by Mark.Satterthwaite

	Always use Managed memory on Mac Metal for buffers.

Change 2905206 on 2016/03/11 by Mark.Satterthwaite

	Worked around UE-27818 "ElementalDemo Causes Invalid Rendering on AMD GPUs" - recent changes to allow mesh particles to write to velocity leave a texture-buffer unbound & then use a uniform value & an if-branch to guard against access but AMD's Mac GL driver notices that the buffer is referenced in the shader but not bound & promptly tries to fallback to Apple's S/W renderer regardless of what the uniform value is. That's legal behaviour for an OpenGL implementation so the C++ code has been changed to allocate and write the current transforms into the buffer for OpenGL when they wouldn't otherwise be provided. This is sufficient to avoid the problem without affecting any other API.

Change 2906217 on 2016/03/11 by Nick.Shin

	re-enabled http network file server
	it was disabled in CL: #2790193

	#jira UE-22166 HTML5 Cook on the fly will launch and then close browser

Change 2908203 on 2016/03/14 by Michael.Trepka

	Merging //UE4/Dev-Main to Dev-Platform (//UE4/Dev-Platform). Everything but SSF lib.

Change 2908553 on 2016/03/14 by Mark.Satterthwaite

	Force a submit & wait in Metal when contexts are being destroyed to prevent kernel panics in drivers which continue to process the now abandoned command-queue and encounter invalid resources (because we destroy them on shutdown).

Change 2908595 on 2016/03/14 by Michael.Trepka

	Fixed iOS compile error in MetalUniformBuffer.cpp

	#codereview Mark.Satterthwaite

Change 2910106 on 2016/03/15 by Mark.Satterthwaite

	Use a dispatch_semaphore not an FEvent for Metal free-list synchronisation as the dispatch_worker threads can't be properly setup for FStats and this causes problems.

Change 2910107 on 2016/03/15 by Mark.Satterthwaite

	Fix Metal reporting of GPU memory through the RHI as it is in bytes, not MB.

Change 2910138 on 2016/03/15 by Mark.Satterthwaite

	Properly retain/release dispatch_semaphore for Metal command buffer completion block & allow uniform buffer creation on parallel encoding thread.

Change 2911735 on 2016/03/16 by Nick.Shin

	housekeeping

	removing extra and inconsistant whitespace as well as making tabs & spaces consistant

[CL 2936662 by Josh Adams in Main branch]
2016-04-07 12:59:50 -04:00
Jurre deBaare
cbd40a126d Conditional SSF compilation.
#lockdown Nick.Penwarden

[CL 2930288 by Jurre deBaare in Main branch]
2016-04-01 06:37:24 -04:00
Nick Shin
37b5d2dc28 use HOME (osx) and USERPROFILE (windows) on appropriate target platform
#jira UE-26414 -- Mac is missing .emscripten file necessary for packaging or launching onto HTML5
#lockdown gil.gribb

[CL 2876518 by Nick Shin in Main branch]
2016-02-22 17:28:27 -05:00
Ben Marsh
f402006cb7 Merging //UE4/Release-4.11 to //UE4/Main (Up to CL#2867947)
==========================
MAJOR FEATURES + CHANGES
==========================

Change 2858603 on 2016/02/08 by Tim.Hobson

	#jira UE-26550 - checked in new art assets for buttons and symbols

Change 2858665 on 2016/02/08 by Taizyd.Korambayil

	#jira UE-25797 Added TextureLODSettings for Ipad Mini set all LODBias to 2.

Change 2858668 on 2016/02/08 by Matthew.Griffin

	Added InfiltratorDemo back into Rocket samples

	#jira UEB-591

Change 2858743 on 2016/02/08 by Taizyd.Korambayil

	#jira UE-25996 Fixed Import Error in TopDOwn Code

Change 2858776 on 2016/02/08 by Matthew.Griffin

	Added UnrealMatch3 to packaged projects

	#jira UEB-589

Change 2858900 on 2016/02/08 by Taizyd.Korambayil

	#jira UE-15234 Switched all Mask Textures to use the (Mask,No sRGB) Compression

Change 2858947 on 2016/02/08 by Mike.Beach

	Controlling more when VerifyImport() is ran - trying to  prevent Verify() from running when DeferDependencyLoads is on, and instead trying to fully verify every import upfront (where it's meant to happen) before serializing in the package's contents (to alleviate cyclic dependency complications).

	#jira UE-21098

Change 2858954 on 2016/02/08 by Taizyd.Korambayil

	#jira UE-25524 Resaved Sound Assets to Fix NodeGuid Warnings

Change 2859126 on 2016/02/08 by Max.Chen

	Sequencer: Release track editors when destroying sequencer

	#jira UE-26423

Change 2859147 on 2016/02/08 by Martin.Wilson

	Fix uninitialized variable bug

	#jira UE-26606

Change 2859237 on 2016/02/08 by Lauren.Ridge

	Bumping Match 3 Version Number for iTunes Connect

	#jira UE-26648

Change 2859434 on 2016/02/08 by Chad.Taylor

	Handle the quit and focus message pipe from the SteamVR SDK

	#jira UEBP-142

Change 2859562 on 2016/02/08 by Chad.Taylor

	Mac/Android compile fix

	#jira UEBP-142

Change 2859633 on 2016/02/08 by Dan.Oconnor

	Transaction buffer uniformly address subobjects and SCS created components via an array of names and a root object. This allows undo/redo to work reliably to any depth of object hierarchy. Removed FReferencedObject and replaced it with the robust FPersistentObjectRef.

	DefaultSubObjects of the CDO are now tagged as RF_Archetype at construction (logic in PropertyHandleImpl.cpp probably no longer required)

	Actors reinstanced due to blueprint compilation now have stable names, so that this name can be used to reference their subobjects.

	This is also part of the fix needed for UE-23335, completely fixes UE-26045

	This version of the fix is less aggressive about searching all the way up an object's outer chain before stopping. Fixes issues with parts of outer chain changing on PIE. Also doesn't add objects referenced by subobject name to any AddReference calls which fixes race conditions with GC.

	Also fixes bad logic in CopyPropertiesForUnrelatedObjects, which would create copies of subobjects that already existed because we were populating the ReferenceReplacementMap before adding all existing subobjects (always components in this case)

	#jira UE-26045

Change 2859640 on 2016/02/08 by Dan.Oconnor

	Removed debugging code..

	#jira UE-26045

Change 2859668 on 2016/02/08 by Aaron.McLeran

	#jira UE-26503 A Mixer with a Concatenator node won't loop with a Looping node

	- issue was the looping nodes weren't properly reseting all the child wave instances
	- also looping nodes weren't reporting the correct GetNumSounds() count for use with sequencer node

Change 2859688 on 2016/02/08 by Chris.Babcock

	Allow external access to runtime modifications to OpenGL shaders
	#jira UE-26679
	#ue4

Change 2859739 on 2016/02/08 by Chad.Taylor

	UE4_Win64_Mono compile fix

	#jira UEBP-142

Change 2859962 on 2016/02/09 by Chris.Wood

	Passing command line to Crash Report Client without stripping the project name.
	[UE-24959] - "Send and Restart" brings up the Project Browser
	#jira UE-24959

	Reimplement changes from Orion in UE 4.11
	Reimplementing the command line logging filtering over from Dev-Core (same change as CL 2821359 that moved this change into Orion)
	Reimplementing passing full command line to Crash Report Client (same change as CL 2858617 in Orion)

Change 2859966 on 2016/02/09 by Matthew.Griffin

	Fixed shadow variable issue that was causing build failure in NonUnity mode on Mac

[CL 2873884 by Ben Marsh in Main branch]
2016-02-19 13:49:13 -05:00
Nick Shin
eee94f69d5 integrate from //UE4/Dev-Platform to //UE4/Main
#jira UE-25677
#lockdown marc.audy

[CL 2851500 by Nick Shin in Main branch]
2016-02-01 15:04:38 -05:00
Nick Shin
2450c96d28 add more warning suppression flags to the python script that builds the system libraries
and unwinding the previous checkin

#jira UE-25822  //UE4/Main: UE4_HTML5_Mono_Precompiled Warnings
#lockdown marc.audy

[CL 2849957 by Nick Shin in Main branch]
2016-01-29 20:07:17 -05:00
Nick Shin
b67dfd14ad integrate from //UE4/Dev-Platform to //UE4/Main
#jira UE-26222  //UE4/Main: UE4_HTML5_Mono Compile Failure
#lockdown marc.audy

[CL 2849854 by Nick Shin in Main branch]
2016-01-29 18:20:16 -05:00
Nick Shin
e3e12a3833 move supression warning flags above the simulator check
SetUpEmscriptenConfigFile() also updated to be generated via emscripten itself instead of manually writing it out

#jira UE-25822 -- //UE4/Main: UE4_HTML5_Mono_Precompiled Warnings
#lockdown josh.adams

[CL 2847435 by Nick Shin in Main branch]
2016-01-28 13:51:11 -05:00
Josh Adams
db43da290b Copying //UE4/Dev-Platform to Dev-Main (//UE4/Dev-Main)
Change 2783376 on 2015/11/30 by Nick.Shin

	upgrading emscripten SDK to 1.35.9
	following instruction from the README file

Change 2787414 on 2015/12/02 by Nick.Shin

	upgrading emscripten to 1.35.0
	removing old SDK and tools for Mac and Win64

Change 2790218 on 2015/12/04 by Nick.Shin

	merge (CL: #2790164) from //UE4/Dev-Physics to //UE4/Dev-Platform
	PhysX HTML5 bc files

Change 2794786 on 2015/12/08 by Nick.Shin

	merge CL #2794757 part 1 of 2
	from //UE4/Dev-Physics/PhysX/PhysX_3.3/Lib/html5
	to //UE4/Dev-Platform/Engine/Source/ThirdParty/PhysX/PhysX-3.3/lib/HTML5/

Change 2794789 on 2015/12/08 by Nick.Shin

	merge CL #2794758 part 2 of 2
	from //UE4/Dev-Physics/PhysX/PhysX_3.3/Lib/html5
	to //UE4/Dev-Platform/Engine/Source/ThirdParty/PhysX/PhysX-3.3/lib/HTML5/

Change 2799151 on 2015/12/10 by Dmitry.Rekman

	Guarantee XGE.xml sorting order for 10+ builds.

	- A licensee pointed out the problem that AutomationTool.UE4Build.FindXGEFiles() sorts the files by filename, so e.g. UBTExport.10.xge.xml takes priority over UBTExport.2.xge.xml.

	#codereview Ben.Marsh

Change 2799440 on 2015/12/11 by Mark.Satterthwaite

	Duplicate CL #2790251: Temporarily revert some of the changes for Mac mouse cursor locking as they were causing more problems than they solved.

Change 2799441 on 2015/12/11 by Mark.Satterthwaite

	Duplicate CL #2796111 & #2796158: Fix cooking shader cache files - it wasn't being enabled despite a cached shader format being listed.

Change 2799442 on 2015/12/11 by Mark.Satterthwaite

	Duplicate CL #2797758: Defer calls to AUGraphUpdate into FCoreAudioDevice::UpdateHardware - this call will synchronise the calling thread with the CoreAudio thread/run-loop so that the CoreAudio graph is safe to modify and this may incur a significant stall. This means it is far more efficient to amortise the cost of all changes to the graph with a single call. To ensure correctness the audio format conversion components are cached and disposed of after the call to AUGraphUpdate so that any existing operations on the CoreAudio thread are completed prior to disposal.

Change 2799601 on 2015/12/11 by Mark.Satterthwaite

	Implement background reading of NSPipe's in Mac ExecProcess to avoid the sub-process blocking trying to write to the meagre 8kb internal buffers. This may fix problems with SVN on Mac.

Change 2799657 on 2015/12/11 by Mark.Satterthwaite

	Remove the hlslcc major version from the Metal and OpenGL shader formats to ensure that there are enough bits to represent the different version components. There's no expectation that the major version of hlslcc will change and it will soon be removed entirely.

Change 2799691 on 2015/12/11 by Mark.Satterthwaite

	Merging final internal-only changes from WWDC.

Change 2800182 on 2015/12/11 by Mark.Satterthwaite

	Capture the system.log contents from the moment we boot to the point we crash to report GPU restarts and other system errors not written into our own logs.

Change 2801395 on 2015/12/14 by Mark.Satterthwaite

	Fix the Metal shader compiler so that it properly reports the number of sampler objects in use, not the number of textures as Metal separates its 16 samplers and up-to 128 textures in a single shader stage, like D3D and unlike OpenGL. This fixes a lot of material compile errors in newer projects which aren't being designed for obsolete OpenGL.

Change 2801653 on 2015/12/14 by Daniel.Lamb

	Load package differ can now diff header part of packages.
	Changed the way IsChildCooker is handled improves performance of multiprocess cooker.

Change 2801655 on 2015/12/14 by Daniel.Lamb

	Added cooker warning to resave packages if they don't have collision data for their static meshes.
	Added NavCollision creation on static mesh import so that we save out the NavCollision.

Change 2801923 on 2015/12/14 by Daniel.Lamb

	Fix compilation error with CreateLoader.

Change 2802076 on 2015/12/14 by Daniel.Lamb

	Remove some debugging assistance code.

Change 2803207 on 2015/12/15 by Mark.Satterthwaite

	Add missing Metal formats for PF_R16_SINT/UINT.

Change 2803254 on 2015/12/15 by Mark.Satterthwaite

	Add additional uint/2/3/4 overrides for SV_Target(x) to MetalUtils and when generating the output variable look for an exact type match before restoring to the first match with the correct number of elements. This ensures that we generate uint/2/3/4 writes when required for CopyStencilToLightingChannelsPS without breaking anything else.

Change 2803259 on 2015/12/15 by Mark.Satterthwaite

	Fix stencil texture swizzle for Metal which uses .x not .g for stencil value.

Change 2803262 on 2015/12/15 by Mark.Satterthwaite

	Fix FMetalRHICommandContext::RHISetScissorRect  handling 0 sized rects when RHISetScissorRect is called before RHISetViewport.

Change 2803321 on 2015/12/15 by Mark.Satterthwaite

	Duplicate CL #2786291: Fix Metal validation errors caused by incorrect instance count and also a crash-bug caused by accessing a defunct depth-stencil texture. This should be enough to ensure Metal works even if you've been playing previously with OpenGL.

Change 2803413 on 2015/12/15 by Mark.Satterthwaite

	Workaround the Material Editor's unfortunate habit of rendering tiles without a depth/stencil-buffer attached despite tiles wanting to write to depth - in Metal we have to create a temporary Depth-Stencil texture so that we don't crash the driver because it won't rewrite the shaders for us (unlike D3D/GL).

Change 2806247 on 2015/12/16 by Daniel.Lamb

	Fixed UParticleRequiredModule deterministic cook issue.
	#codereview Olaf.Piesche

Change 2806834 on 2015/12/17 by Mark.Satterthwaite

	Temporarily work around absence of Checked & Shipping APEX/PhysX binaries on Mac.

Change 2807017 on 2015/12/17 by Mark.Satterthwaite

	Handle the shader cache being initialised for cooking multiple times until I can sort out the implementation properly.

Change 2807027 on 2015/12/17 by Daniel.Lamb

	Enabled DDC stats.
2016-01-19 09:54:25 -05:00
Matthew Griffin
984342ca17 Merging //UE4/Release-4.11 to Dev-Main (//UE4/Dev-Main) post CL#2804086 to CL#2817167
CL#2805395 resolved as target to avoid copying 2015 changes
#lockdown Nick.Penwarden

[CL 2819197 by Matthew Griffin in Main branch]
2016-01-07 11:21:22 -05:00
Matthew Griffin
bb70b349ce Merging CL 2804086 from //UE4/Release-4.11 to Dev-Main (//UE4/Dev-Main) to isolate copyright update
#lockdown Nick.Penwarden

[CL 2819020 by Matthew Griffin in Main branch]
2016-01-07 08:17:16 -05:00
Josh Adams
660ab7f0c9 Copying //UE4/Dev-Platform to //UE4/Main
==========================
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.
2015-12-10 16:56:55 -05:00
Ben Marsh
92ec2b8239 Copying //UE4/Dev-Build to Dev-Main (//UE4/Dev-Main)
==========================
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]
2015-12-04 09:32:58 -05:00
Steve Robb
2bb63fe2a0 String literal compiler extensions enabled for Android, HTML5, iOS and Mac.
#codereview robert.manuszewski,andrew.grant

[CL 2744688 by Steve Robb in Main branch]
2015-10-28 09:33:33 -04:00
Ben Marsh
1cc0be0a06 Separate all the project specific settings for a platform into a separate class (derived from UEBuildPlatformContext), and remove the last few references to the global .uproject file path. Checks for SupportsWindowsXP() are now done inside the toolchain.
#codereview Peter.Sauerbrei

[CL 2711835 by Ben Marsh in Main branch]
2015-09-30 16:40:04 -04:00
Ben Marsh
a1bfbcd0d5 Split the ModifyModuleRules() method into two parts; one which is called only for the active platform (ModifyModuleRulesForActivePlatform), and one which is called on all platforms for a host platform (ModifyModuleRulesForOtherPlatform).
[CL 2709436 by Ben Marsh in Main branch]
2015-09-29 10:44:49 -04:00
Ben Marsh
1adc540d76 Instance UEBuildPlatform for each supported platform so we don't have to keep passing an UnrealTargetPlatform back into it, and separate the SDK logic for each group of platforms into a separate class (UEBuildPlatformSDK). Add a new factory class (UEBuildPlatformFactory) for creating them and binding them together.
[CL 2709253 by Ben Marsh in Main branch]
2015-09-29 08:56:10 -04:00
Ben Marsh
291c6dd533 Merge UEBuildPlatform.GetExtraModules() and UEBuildPlatform.SetupBinaries(), because they were being used for the same purpose.
[CL 2707277 by Ben Marsh in Main branch]
2015-09-27 14:50:58 -04:00