Commit Graph

48 Commits

Author SHA1 Message Date
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
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
da8ed3878f Copying //UE4/Dev-Platform to //UE4/Main (Source: //UE4/Dev-Platform @ 3008177)
==========================
MAJOR FEATURES + CHANGES
==========================

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
	#lockdown josh.adams

Change 2970373 on 2016/05/09 by Lee.Clark

	PS4 - Fix NumInstances not getting reset after DrawIndirect calls

Change 2972873 on 2016/05/10 by Michael.Trepka

	Correct initial position for SlateViewer windows on Mac

Change 2974363 on 2016/05/11 by Mark.Satterthwaite

	Fix invoking buils using distcc from UFE - the command-line executed to access the number of parallel tasks was incorrect.

Change 2975921 on 2016/05/12 by Michael.Trepka

	Removed unused AdjustWindowRegion declaration from LinuxWindow.h

	#codereview Dmitry.Rekman

Change 2977002 on 2016/05/13 by Michael.Trepka

	Make sure dSYM generation action in UBT on Mac does not start before the source dylib is ready

	#codereview Ben.Marsh

Change 2977337 on 2016/05/13 by Brent.Pease

	UE-27805 - Adding special characters into the BundleDisplayName or BundleName causes packaging error
	  + Prevent illegal characters from being entered in the packaging UI
	  + Report an error from iPhonePackager if a illegal bundle id is specified
	  + Convert special characters to XML equivalents

	- Correctly check for the presence of iTunes 12 when packaging iOS games on Windows

	- Improve ios certificate and provision message in package settings UI

	#codereview peter.sauerbrei

Change 2977509 on 2016/05/13 by Brent.Pease

	 + Fix mac compile error

Change 2978036 on 2016/05/14 by Mark.Satterthwaite

	One-line tweak that resolves incorrect rendering of the colour LUT because float imprecision allows -ve values to be passed into a call to pow which then generates NaN.
	#jira UE-30777

Change 2978037 on 2016/05/14 by Mark.Satterthwaite

	Fix a heap-use-after-free bug spotted by AddressSanitizer - you can't assume that the UObject system will be available in ShutdownModule() - on OS X it may have been killed a long time ago.

Change 2978333 on 2016/05/16 by Lee.Clark

	Fix packaging of non-code projects when plugins are enabled

	#codereview Peter.Sauerbrei

Change 2978780 on 2016/05/16 by Mark.Satterthwaite

	Reduce temporary allocations required to set uniform parameters in Metal.

Change 2979680 on 2016/05/16 by Nick.Shin

	editor's HTML5 platform settings was missing due to the emscripten SDK move

	should have been included with CL: #2946251

Change 2979681 on 2016/05/16 by Nick.Shin

	cleaned up websocket processing for HTML5

	#jira UE-13657 - HTML5 plugin OnRawRecieve overflow

Change 2979701 on 2016/05/16 by Brent.Pease

	UE-28421 - Message box cannot be closed after accessing the home screen on iOS

	 + Implement a timeout when waiting for a reply after sending background/foreground/suspend events from the main thread to the game thread. This solves the immediate problem presented in the jira bug report, however, there are deeper issues with the consequences of blocking the game thread that are not addressed. Perhaps structuring the game thread loop to know about modal dialogs so that it can receive these events even when a modal dialog is up could be a better longer term solution

Change 2980766 on 2016/05/17 by Jeremiah.Waldron

	Adding Android build support for HarfBuzz
	 - using a combination of android-cmake (from https://github.com/taka-no-me/android-cmake) to create the build files and Visual Studio 2015 to compile them
	 - Adding Debug and RelWithDebInfo compiled binaries to harfbuzz-1.2.4/Android/<arch>/<config>

	Tested armv7 with TextShapingTest project on a GalaxyNote3 and text showed up correctly
	#jira UE-28586
	#codereview chris.babcock

Change 2980953 on 2016/05/17 by Jeremiah.Waldron

	Changing HarfBuzz build script and libs to use Release instead of RelWithDebInfo
	#jira UE-28586

Change 2981039 on 2016/05/17 by Jeff.Campeau

	ICMP support disabled for Xbox One and basic address processing wrappers provided (needed for Oodle support)

Change 2981054 on 2016/05/17 by Jeff.Campeau

	Enable Live OSS for Orion on Xbox One

Change 2981553 on 2016/05/18 by Jeff.Campeau

	Enable Oodle for Xbox One

Change 2981555 on 2016/05/18 by Jeff.Campeau

	Scalability settings for Xbox One

Change 2981774 on 2016/05/18 by Keith.Judge

	Xbox One - Duplicating Movie Player fix from 4.12.

Change 2981789 on 2016/05/18 by Keith.Judge

	Xbox One - Duplicate fast semantics rendertarget unbind/clear/rebind fix from 4.12.

Change 2981802 on 2016/05/18 by Keith.Judge

	Xbox One - Duplicate of distance field AO/Shadow fixes from 4.12.

Change 2981875 on 2016/05/18 by Keith.Judge

	Xbox One - Dynamic VB/IB refactor. Duplicated from 4.12.

Change 2981900 on 2016/05/18 by Keith.Judge

	Xbox One - D3D11Query refactor. Duplicated from 4.12

Change 2981945 on 2016/05/18 by Nick.Shin

	filled out response headers for HTML5 platform

	#jira UE-26047 - HTML5 HTTP Response Headers not implemented

Change 2981981 on 2016/05/18 by Lee.Clark

	PS4 - Fix COTF not updating files

	#codereview Daniel.Lamb

Change 2982246 on 2016/05/18 by Michael.Trepka

	Fixed Mono compile errors in UT build scripts

Change 2983869 on 2016/05/19 by Mark.Satterthwaite

	Explicitly retain/release all the MTLTexture objects in FMetalSurface without the assumptions about them being the same object - the recent stencil & SRV related changes make those assumptions invalid and could lead to over-releasing some textures.
	#jira UE-29557

Change 2983871 on 2016/05/19 by Mark.Satterthwaite

	Pool Metal texture update buffers to reduce churn.

Change 2983892 on 2016/05/19 by Mark.Satterthwaite

	Duplicate 4.12 CL #2972885: Enable Metal resource lifetime delay on all platforms, not just iOS to try and address intermittent invalid resource errors.

Change 2983898 on 2016/05/19 by Mark.Satterthwaite

	Duplicate 4.12 CL #2982825: Correctly wait for the dispatch semaphore when clearing the Metal resource free lists.

Change 2983911 on 2016/05/19 by Mark.Satterthwaite

	Change Metal SubmitCommandsHint to use an enum of flags rather than boolean variables to control behaviour so that its clearer to the reader what is going to happen.

Change 2983916 on 2016/05/19 by Mark.Satterthwaite

	Duplicate 4.12 CL #2974765: Workaround for UE-30069 - on Nvidia Macs we are breaking the GMux swap the second time we run the engine and it isn't clear why, so instead explicitly select the Metal device ourselves and don't allow the OS to swap the GPU driving the display. This will potentially reduce performance a little if the discrete GPU isn't already driving the display but until we know how we are clobbering the GMux/driver it is all we can do. This only applies to 10.11.5 with the default OS X drivers where there is more than one GPU in the system, earlier versions of OS X and the Nvidia WebDrivers are unaffected.

Change 2984874 on 2016/05/20 by Keith.Judge

	Xbox One - Re-enable shader DXBC intermediate bytecode stripping, except for geometry and hull shaders where there's a possibility of runtime recompilation in certain combinations. Saves ~2MB in TM-ShaderModels, will save more in larger maps.

	#jira UEPLAT-1295

Change 2985446 on 2016/05/20 by Mark.Satterthwaite

	Remove the non-functional -metaldebug option from MetalRHI.

Change 2985827 on 2016/05/20 by Nick.Shin

	call EndSession() onbeforeunload()

	note: API CHANGE
	- HTML5JavaScripteFx.{js,h}
	- UE_MakeHTTPDataRequest()

	#jira UE-22285 - Session End events are not generated for HTML5

Change 2986013 on 2016/05/20 by Jeremiah.Waldron

	PR #2387: In-App Purchases - parameters needed for Receipt Validation (Contributed by gameDNAstudio)

	Also touches IOS because of added RawPrice member in FInAppPurchaseProductInfo
	Pulled from Release-4.12 CL

	#jira UE-30782
	#codereview chris.babcock, Peter.Sauerbrei

Change 2986057 on 2016/05/20 by Mark.Satterthwaite

	Further changes to ensure that UE-30710 really is fixed while also not live-leaking memory in MetalRHI.

Change 2986059 on 2016/05/20 by Mark.Satterthwaite

	Move the Metal uniform buffers into the same resource pool as all the other buffers and add stats for how many buffers are in the pool, how much memory is in use, free and wasted (due to aligned-buffer sizes).

Change 2986060 on 2016/05/20 by Mark.Satterthwaite

	Disable tiled-reflections on Nvidia & Intel Metal until they sort out the sample command on cube-arrays ignoring the lod level.

Change 2986063 on 2016/05/20 by Mark.Satterthwaite

	Missing change from previous CL.

Change 2986066 on 2016/05/20 by Mark.Satterthwaite

	More Metal stats tracking the number & memory size of id<MTLBuffer>'s allocated/released each frame.

Change 2986455 on 2016/05/23 by Keith.Judge

	Xbox One - Fix precompile promise in shader compiler to not stop subsequent defines from being parsed by D3DCompiler.

Change 2986886 on 2016/05/23 by Mark.Satterthwaite

	Duplicate 4.12 CL #2986880: Fix UE-31124 due to bad array iteration logic - amazing that this hadn't been seen earlier.

Change 2986955 on 2016/05/23 by Brent.Pease

	 + Do not error out if "[PROJECT_NAME]" is in the bundle ID

	#codereview peter.sauerbrei

Change 2987304 on 2016/05/23 by Chris.Babcock

	Remove old Android platforms
	#ue4
	#android
	#codeview Josh.Adams

Change 2987571 on 2016/05/23 by Mark.Satterthwaite

	Duplicate CL #2967998: Integrate - MaterialParameterCollections now create default resources (uniform buffers) which are used when no valid FScene is present (eg DrawTile while exporting materials to lightmass)
	#jira UE-31111

Change 2987591 on 2016/05/23 by Mark.Satterthwaite

	Remove usage of MTLRender/ComputeEncoder setSamplerState/s calls that take Min & Max Lod overrides - they currently don't work as expected on some GPU drivers and as we don't use them anywhere and I can't see that we will removing them costs us nothing and fixes tiled reflections on Nvidia with Metal SM5.

Change 2987679 on 2016/05/23 by Mark.Satterthwaite

	Re-enable tiled reflections on Nvidia by default now that they work.

Change 2987799 on 2016/05/24 by Mark.Satterthwaite

	Add a shader compile option "r.Shaders.ZeroInitialise" that we can turn on to force explicit zero-initialisation of local & temporary variables in hlslcc - so far only implemented for Metal. The default behaviour remains to omit zero-initialisation but the option is helpful to eliminate or track down uninitialised access in shaders that are causing real bugs (e.g. POM material relying on zero-initialised loop counters causing hangs/bad rendering on Mac).

Change 2989395 on 2016/05/25 by Lee.Clark

	PS4 - Fix shader output / render target format mismatch for sparse MRT.

Change 2990003 on 2016/05/25 by Jeremiah.Waldron

	When creating our own ConfigCacheIni in GetConfigCacheIni_APL, do not assume that the Engine ini was requested. Instead use the baseIniName passed to the function.

Change 2990393 on 2016/05/25 by Mark.Satterthwaite

	Back out changelist 2961310 - causes more problems than it solves. DistanceField rendering will still work on Intel Metal SM5  and may work on AMD but will be broken on Nvidia due to a bad access within the compute shader - there's no bounds checking in Metal...

Change 2990516 on 2016/05/25 by Brent.Pease

	 + UEPLAT-1294 - Support for local notifications
	 + UEPLAT-1254 - Add BP event for device orientation change
	 + Added a new class based on UGameInstance for mobile device callbacks
	 + Ensured IOSAppDelegate.cpp follows convention for lambda functions

Change 2991361 on 2016/05/26 by Jeremiah.Waldron

	Move InAppPurchase class to StoreHelper.java so GooglePlay and Amazon store helpers can use it

Change 2992450 on 2016/05/27 by Mark.Satterthwaite

	Optional r.Shaders.BoundsChecking flag to control whether shader platforms should manually enforce buffer access bounds - HLSL returns zero or ignores invalid reads & writes but Metal leaves the behaviour undefined and some drivers then fail. By default this is off and its whatever the native platform behaviour is, enabling it will cost some amount of performance as the shader translator inserts additional instructions to try and match D3D as accurately as possible. This is required to fix GPU restart errors on some Metal drivers when using SM5 rendering features including DistanceField shaders.

Change 2993027 on 2016/05/27 by Mark.Satterthwaite

	Fix typo for new CFLAG_BoundsChecking enumeration value.

Change 2993594 on 2016/05/27 by Mark.Satterthwaite

	Build fix - check not assert...

Change 2993595 on 2016/05/27 by Mark.Satterthwaite

	Fix typo from Xcode hang...

Change 2993614 on 2016/05/28 by Mark.Satterthwaite

	At least for now enable shader zero-initialisation and bounds-checking on Mac to ensure that Metal shaders are compiled with semantics that approximate those HLSL assumes. This may cost some performance but will avoid a few GPU restarts on some vendor drivers.

Change 2993747 on 2016/05/28 by Mark.Satterthwaite

	Separate texture & buffer references in the Metal backend as they bind to separate arrays in the runtime to avoid giving the side-table buffer an innaccessible binding index. Also the side-table doesn't need to be emitted if no buffer SRV or UAV is used.

Change 2994256 on 2016/05/31 by Lee.Clark

	PS4 - Fix unitialized Head Position from HMD tracker when tracking fails. Fixes a problem with A3D audio not working.

	#codereview Chad.Taylor,Aaron.McLeran

Change 2994281 on 2016/05/31 by Rolando.Caloca

	DP - Allow hlslcc to process type casts containing the 'const' keyword
	- it isn't strictly complete as it will simply omit the type qualifier from the cast in the AST but it is sufficient for FortniteFoliage_MasterMaterial to compile.
	#codereview Mark.Satterthwaite, Dmitry.Rekman
	#jira UE-31411

Change 2994467 on 2016/05/31 by Josh.Adams

	Merging //UE4/Dev-Main to Dev-Platform (//UE4/Dev-Platform)

Change 2994493 on 2016/05/31 by Daniel.Lamb

	Fixed issue with DDC commandlet not caching things from the startup packages list.

Change 2994644 on 2016/05/31 by Mark.Satterthwaite

	Updated hlslcc Mac binaries with fix for UE-31411 which RCO accepted and submitted + script for building parsers on POSIX OSes hooked up to an Xcode scheme in the project.

Change 2996074 on 2016/06/01 by Lee.Clark

	PS4 - Fix GS mode not getting disabled when using parallel contexts.

	#codereview Marcus.Wassmer

Change 2996129 on 2016/06/01 by Brent.Pease

	Manual merge of Pete's dsym generation fix (CL#2996089) from the 4.12 branch.

Change 2996130 on 2016/06/01 by Jeremiah.Waldron

	PR #2387 part 2  (Contributed by gameDNAstudio)
	Adding ability to consume purchases during GooglePlay RestorePurchases

	This also touches IOS due to changes to base classes and function signatures
	#codereview chris.babcock, Peter.Sauerbrei

Change 2996441 on 2016/06/01 by Jeremiah.Waldron

	Relates to PR #2387: Adding ability to consume purchases during GooglePlay RestorePurchases (Contributed by gameDNAstudio)

	Missing changes from part 2 reworked so that there is still only one RestorePurchases function which takes the product IDs and consumable flags. I reflected this in StoreHelper so no casting is necessary in GameActivity and the soon-to-be-added AmazonStoreHelper in the GameCircle plugin will still work dynamically with GameActivity since it will call StoreHelper functionality rather than a GooglePlayStoreHelper specific function.

	#codereview chris.babcock

Change 2996514 on 2016/06/01 by Jeff.Campeau

	Fix merge issue from main
	#jira UE-31502

Change 2996740 on 2016/06/01 by Jonathan.Fitzpatrick

	https://jira.ol.epicgames.net/browse/UE-31446
	Two PS4 source files fail during unity builds due to name conflict with handleReserveFailed.

	Renamed handleReserveFailed to handleReserveFailedLightweight

Change 2997235 on 2016/06/01 by Jeremiah.Waldron

	RestorePurchases fix up in Match3 since the new Restore consumable stuff adds an additional pin to the Restore node.
	The IAP product in Match3 is non-consumable so just passing an empty array where necessary

Change 2997241 on 2016/06/01 by Jeremiah.Waldron

	OnlineSubsystemGameCircle Plugin
	 - Leaderboards
	 - Achievements
	 - Friends
	 - IAP
	 - External UI Interface
	 - Runtime Settings in Project Settings Plugin section when plugin is enabled
	 - Disabled by default
	#jira UEPLAT-105
	#codereview chris.babcock

Change 2997618 on 2016/06/02 by Lee.Clark

	#UE4Docs: Removed PS4MapFileUtil info

Change 2997840 on 2016/06/02 by Jeremiah.Waldron

	Removing trace logging from OnlineSubsystemGameCircle_APL

Change 2998754 on 2016/06/02 by Brent.Pease

	Change BlueprintMobileLibrary to BlueprintPlatformLibrary

Change 3000762 on 2016/06/03 by Jeff.Campeau

	Add example rating info to ShooterGame

Change 3001037 on 2016/06/04 by Brent.Pease

	 + Add ui screens for delegate test, local notification test, and iap test
	 + Implement delegate test

Change 3001250 on 2016/06/05 by Brent.Pease

	 + Initial pass at IAP test screen

Change 3001639 on 2016/06/06 by Jeff.Campeau

	Fix Xbox One build issue with DX12
	#codereview Zabir.Hoque

Change 3002574 on 2016/06/06 by Jeremiah.Waldron

	Adding Android Install Location to Android platform runtime settings and manifest generation

Change 3002780 on 2016/06/06 by Brent.Pease

	 + Initial implementation of local notification test

Change 3003005 on 2016/06/06 by Jeremiah.Waldron

	OnlineSubsystemGameCircle plugin - adding setting for Fire TV support. Using that specification in the APL to Add/Update android.hardware.touchscreen feature required attribute

Change 3004392 on 2016/06/07 by Jeremiah.Waldron

	Fixing typo in APL comment :)

Change 3005768 on 2016/06/08 by Josh.Adams

	Merging //UE4/Dev-Main to Dev-Platform (//UE4/Dev-Platform)

Change 3005929 on 2016/06/08 by Josh.Adams

	Merging //UE4/Dev-Main to Dev-Platform (//UE4/Dev-Platform)

Change 3006151 on 2016/06/08 by Peter.Sauerbrei

	fix for LocalNotifications not available on TVOS
	#lockdown josh.adams

Change 3006183 on 2016/06/08 by Brent.Pease

	Manual merge CL#3000242 from Release-4.12 into Dev-Platform

	#lockdown josh.adams

Change 3006296 on 2016/06/08 by Peter.Sauerbrei

	submit an updated iPhonePackager and support DLLs
	#lockdown josh.adams

Change 3006378 on 2016/06/08 by Peter.Sauerbrei

	fix for API update to RestorePurchases
	#codereview brent.pease
	#lockdown josh.adams

#lockdown nick.penwarden

[CL 3008183 by Josh Adams in Main branch]
2016-06-09 17:45:44 -04:00
Matthew Griffin
f180dff107 Copying //UE4/Release-Staging-4.12 to //UE4/Dev-Main
#lockdown Nick.Penwarden

(Will update with full description tomorrow)

[CL 2984534 by Matthew Griffin in Main branch]
2016-05-19 19:35:35 -04:00
Josh Adams
d81e0f1653 Copying //UE4/Dev-Platform to //UE4/Main (Source: //UE4/Dev-Platform @ 2945165)
==========================
MAJOR FEATURES + CHANGES
==========================

Change 2731596 on 2015/10/16 by Keith.Judge

	Fast Semantics - Add deferred resource deletion queue to make deleted resources be actually deleted a number of frames later so that the GPU is definitely finished with them. Hooked up the temporary SRVs for dynamic VBs as a first step.

Change 2764244 on 2015/11/12 by Keith.Judge

	Stop creating/deleting SRVs for dynamic buffers all the time. Instead add a new view when a new buffer is cycled and keep them around until the buffer is dead.

Change 2936695 on 2016/04/07 by Mark.Satterthwaite

	Disable Metal on Mac OS X versions prior to 10.11.4 because their drivers are too buggy and lots of issues users will encounter were fixed in 10.11.4.

Change 2936701 on 2016/04/07 by Mark.Satterthwaite

	Re-enable DistanceFieldAO on Mac Metal, but disable the support for Heightfield composition into the DistanceFieldAO as that currently requires Read+Write texture support which isn't present in Metal yet.

Change 2936702 on 2016/04/07 by Mark.Satterthwaite

	Enable capsule shadows on Metal SM5 for Mac Paragon.

Change 2936704 on 2016/04/07 by Mark.Satterthwaite

	Re-add Metal_MacES3_1 entries in RHIDefinition functions - not quite sure how they disappeared...

Change 2936706 on 2016/04/07 by Mark.Satterthwaite

	Fix implementation of BeginRenderingPrePass to only clear the depth+stencil buffers when it is asked to - this fixes LOD fading in Paragon on Mac when parallel execution is enabled. The parallel contexts were being instructed to clear the pre-pass data which was then fouling up all the subsequent rendering.

Change 2936708 on 2016/04/07 by Mark.Satterthwaite

	Extend workaround from 2905206 for UE-27818 to Metal as well as OpenGL - it isn't permissable to have an unbound resource on these APIs as you aren't allowed to make the assumption than an if-branch will protect against null dereference on the GPU.

Change 2936737 on 2016/04/07 by Mark.Satterthwaite

	Changes to reduce Metal's peak memory usage when streaming texture data in when loading levels:
	- When uploading data to Shared memory Metal textures dispose of the source buffer immediately as it won't be required after the call to replaceRegion.
	- Add an optional CVar ("rhi.Metal.MaxOutstandingAsyncTexUploads") and keep a count of outstanding async. texture uploads - really this might be better as a memory count - if teh current outstanding count is greater than the specified CVar wait for all operations to complete before purging the used buffers. By default the CVar is set to 0 which disables the tracking and the game will use all available memory.

Change 2936741 on 2016/04/07 by Mark.Satterthwaite

	For Metal don't use a texture-view unless the mip-range or texture format is different - we only create a texture-view if we absolutely have to in order to avoid performance reductions on some vendors. When this happens we'll have to update the SRV to point to the new source texture but that can be handled on bind.

Change 2936753 on 2016/04/07 by Mark.Satterthwaite

	Mutex the pipeline cache inside each Metal bound-shader-state - with parallel execution this can be modified from multiple threads.

Change 2936758 on 2016/04/07 by Mark.Satterthwaite

	Don't eliminate redundant Metal command-encoders on Intel either - this only seems to work correctly on AMD...

Change 2936762 on 2016/04/07 by Mark.Satterthwaite

	Validate that parallel contexts aren't asked to clear render-targets (incl depth/stencil) as this won't work as desired - each context will end up clearing the contents meaning none of the rendering will propagate which is probably not what you intend.

Change 2936765 on 2016/04/07 by Mark.Satterthwaite

	Fix alignment of blit-commands between textures & buffers in Metal. Mac Metal has no minimum alignment and allows tightly packed rows, but mobile H/W has a fixed row alignment of 64-bytes for linear texture data.

Change 2936767 on 2016/04/07 by Mark.Satterthwaite

	Remove the workaround for old Mac OS X AMD cards not supporting frame-buffer sRGB - I have a feeling it causes more problems than it solves.

Change 2936773 on 2016/04/07 by Mark.Satterthwaite

	Warn the user when trying to run on OpenGL 3.2 GPUs that they are running unsupported and there may be rendering errors and performance problems.

Change 2936777 on 2016/04/07 by Mark.Satterthwaite

	In MetalRHI move the calls that reset the state-cache and command-encoder to EndFrame and fix the fallout. Hopefully this will eliminate the problem where a draw call fails because a call to SetRenderTargets hasn't been made since the last time the command-buffer was submitted.

Change 2936788 on 2016/04/07 by Daniel.Lamb

	PR #2193: Commandlet tweaks: Fixup Redirects and Cook-on-the-fly Server (Contributed by FineRedMist)

Change 2936799 on 2016/04/07 by Mark.Satterthwaite

	Automatically enable RHI thread support in Metal if parallel execution is compiled in unless running the Editor which doesn't support it. The RHI thread is only enabled in Metal when parallel execution is available because there's little to no advantages to the RHI thread with Metal unless parallel execution is enabled. Also only enable async compute support when parallel execution is available and running on an AMD GPU as only AMD support it and again its only really useful when running things in parallel. Disable the async. compute fencing code when async. compute is disabled.

Change 2936923 on 2016/04/07 by Peter.Sauerbrei

	add exception when trying to access an ini section which we don't cache

Change 2937839 on 2016/04/08 by Lee.Clark

	PS4 - BC6H and BC7 support

	#jira OR-14804

Change 2937841 on 2016/04/08 by Lee.Clark

	Fix media player not opening the same file that has just been closed.

Change 2937843 on 2016/04/08 by Lee.Clark

	PS4 - Fix Media player seek and duration

Change 2938272 on 2016/04/08 by Mark.Satterthwaite

	Change the Metal texture lock/unlock code to use the immediate getBytes API to read from the texture unless it is stored in Private memory and requires we use the blit-encoder. This means iOS texture locking won't generally need to use the blit encoder with its row alignment restrictions as all textures will be Shared. On Mac most textures will still be accessed via blit operations  since Private memory is much more common than Managed.

Change 2938471 on 2016/04/08 by Nick.Shin

	load/save with "negative char size value" fixed

	two 'U''s were missing-- causing base64encoder and decoder to not return original data (or expected data for that matter)...

	C++ function shows these signatures:
	    \Engine\Source\Runtime\Engine\Public\SaveGameSystem.h
	    FGenericSaveGameSystem::SaveGame(..., ..., ..., ...<uint8>);
	    FGenericSaveGameSystem::LoadGame(..., ..., ..., ...<uint8>);

	javascript version was using signed operators...

	answerhub 386719 - broken load/save

Change 2938546 on 2016/04/08 by Nick.Shin

	upgrading zlib, openssl, libcurl & libwebsockets
	(part 1, for libwebsockets -- engine changes will be in part 2)

	and writting down all of the build instructions into a single script file

	future tasks may have the script broken to smaller sized files and placed in the respective library folders for simplicity -- for now, it's bundled together to ensure build is all-in-one...

	#jira UEPLAT-1246 - Update libWebsockets
	#jira UEPLAT-1221 - update websocket library
	#jira UEPLAT-1223 - Arrange testing for 'update websocket library'
	#jira UEPLAT-1203 - Add Linux library for libwebsockets
	#jira UEPLAT-1204 - Rebuild libwebsockets with SSL

Change 2939402 on 2016/04/11 by Mark.Satterthwaite

	No need to call synchroniseTexture on iOS when locking a texture for read - that function call is only available and required on OS X.

Change 2939526 on 2016/04/11 by Daniel.Lamb

	Don't mark content as modified when garbage collecting.
	#PR2249
	#2249

Change 2940094 on 2016/04/11 by Michael.Trepka

	Temporarily rollback //UE4/Dev-Platform/Engine/Source/Runtime/Apple/MetalRHI/Private/MetalContext.cpp to revision 47 to unblock UE-29312

	#codereview Mark.Satterthwaite

Change 2940540 on 2016/04/12 by Jeff.Campeau

	Hardware decompress support for Xbox One.

Change 2940793 on 2016/04/12 by Lee.Clark

	PS4 - Fix file handle leaks

	#codereview Marcus.Wassmer

Change 2940903 on 2016/04/12 by Keith.Judge

	Xbox One - Fix validated driver warning when using async compute with dynamic buffers (remove dynamic buffers).
	Also resurrected the old deferred deletion queue (though simplified the code a lot as TQueue was horrible), as the platform agnostic one can't deal with placement created resources with a separate buffer/resource.
	Moved associated deferred deletion logic out of FD3D11DynamicBuffer.

	Attempted fix for UE-28758, but doesn't actually fix it. :(

Change 2940959 on 2016/04/12 by Michael.Trepka

	Moved RadioEffectUnit CoreAudio plugin to Engine/Build/Mac

	#codereview Ben.Marsh

Change 2940961 on 2016/04/12 by Michael.Trepka

	Updated GitHub readme for Mac with instructions for building ShaderCompileWorker

	#codereview Ben.Marsh

Change 2941010 on 2016/04/12 by Daniel.Lamb

	Added xboxone.projectsettings to the ini processer in UAT.
	#codereview Peter.Sauerbrei
	#jira UE-29344

Change 2941671 on 2016/04/12 by Jeff.Campeau

	March 2016 XDK update

Change 2941998 on 2016/04/13 by Mark.Satterthwaite

	In MetalCommandList retain/release when waiting on a command-buffer commit to ensure command-buffer lifetime.

Change 2942008 on 2016/04/13 by Keith.Judge

	Fix black reflections when async compute is enabled. Shader resource tables are now properly bound on the context, and fixed a bug where the buffer offset and number of constants wasn't being properly set when using the ring buffer.

	#jira UE-28758

Change 2942046 on 2016/04/13 by Lee.Clark

	Fix SN-DBS launch failure with VS2015 - (path env seems to be null in 2015)

Change 2942095 on 2016/04/13 by Mark.Satterthwaite

	MIssed a change to use AlignedStride rather than Stride in FMetalDynamicRHI::RHIReadSurfaceFloatData to fix iOS blit-encoder read-back.

Change 2942383 on 2016/04/13 by Mark.Satterthwaite

	When locking a Metal texture on Mac you have to submit the command buffer & wait in a different location for Private vs. Managed access.

Change 2942419 on 2016/04/13 by Michael.Trepka

	Enabled IPv6 on iOS and Mac

	#jira UEPLAT-1168

Change 2942472 on 2016/04/13 by Daniel.Lamb

	Fixed missing OnlineSubsystemGooglePlay section from UAT ini processing.
	#codereview Peter.Sauerbrei

Change 2942829 on 2016/04/13 by Nick.Shin

	removing unused emscripten - ThirdParty folder

	the ThirdParty folder contained a lot of GPL (and sometimes missing) licensing projects - removing to keep legal happy

	tested with full rebuild, full cook, packaging and running QAGame

Change 2943110 on 2016/04/13 by Chris.Babcock

	Fix Oculus mobile binaries filtered (include the jars)
	#jira ue-29080
	#ue4
	#android
	#gearvr
	#codereview Nick.Whiting

Change 2943111 on 2016/04/13 by Chris.Babcock

	Fix GearVR plugin jar copy logic
	#jira UE-29108
	#ue4
	#android
	#gearvr
	#codereview Nick.Whiting

Change 2943579 on 2016/04/14 by Peter.Sauerbrei

	enable tvOS in the binary build

Change 2943587 on 2016/04/14 by Peter.Sauerbrei

	creation of xcode archives when using the archive command with iOS

Change 2943619 on 2016/04/14 by Mark.Satterthwaite

	Make Metal SM4 the default on Mac again for the 4.12 release. As expected there are many bugs to resolve.

Change 2943869 on 2016/04/14 by Daniel.Lamb

	Turned duplicate stage of files into warning.
	#codereview Peter.Sauerbrei
	#lockdown Josh.Adams
	#jira UE-29487

Change 2943901 on 2016/04/14 by Keith.Judge

	Xbox One - Fix start up crash.

	#lockdown Josh.Adams

Change 2943981 on 2016/04/14 by Mark.Satterthwaite

	Allow RWBuffers in Metal, which should work, but not RWTextures which aren't yet supported.
	#jira UE-29492
	#lockdown josh.adams

Change 2944080 on 2016/04/14 by Peter.Sauerbrei

	temporarily remove code which removes passwords in ini files which reside in the pak file
	multiple defaultengine.ini files were being copied over one another
	#lockdown josh.adams

Change 2944249 on 2016/04/14 by Peter.Sauerbrei

	fix for writing out DefaulEngine.ini when deprecated items are not changed
	#codereview zabir.hoque
	#lockdown josh.adams

Change 2944454 on 2016/04/14 by Peter.Sauerbrei

	fix for incorrect archive directory and missing IPA
	#jira UE-29509
	#lockdown josh.adams

Change 2944834 on 2016/04/15 by Peter.Sauerbrei

	fix for crash on some iOS device due to resources being freed while still in use by the GPU
	#jira UE-29517
	#lockdown josh.adams

Change 2944915 on 2016/04/15 by Peter.Sauerbrei

	fix for including Facebook SDK in tvOS since we don't have the Facebook libraries for tvOS yet
	#lockdown josh.adams

Change 2945164 on 2016/04/15 by Josh.Adams

	- Removing XboxOnePDBFile from junkmanifest, causes too much trouble when staging using AutoSDKs
	#lockdown nick.penwarden
	#codereview jeff.campeau

#lockdown nick.penwarden

[CL 2945174 by Josh Adams in Main branch]
2016-04-15 10:04:09 -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
Andrew Grant
0b4257e23a Copying //UE4/Orion-Staging to //UE4/Main (Source //Orion/Dev-General @ 2927258)
#lockdown Nick.Penwarden

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

Change 2927181 on 2016/03/29 by Dmitry.Rekman

	(Optionally) exclude idle time from server FPS charts.

	- Time spent waiting for the next frame in order to hit capped FPS can be optionally excluded by using t.FPSChart.ExcludeIdleTime (set to 1 for servers).
	- Server FPS charts analytics events and log output will include the information if idle time was excluded.

	- Also: added a log line each time we detect a server hitch for easier pin-pointing them in the log.

	#rb Paul.Moore
	#codereview Paul.Moore, Michael.Noland
	#tests Ran Linux server and Windows client on compatible content.

Change 2927084 on 2016/03/29 by Ben.Marsh

	BuildGraph: Don't allow triggers to run until all their order dependencies are complete. Just because a downstream node doesn't have a dependency on an upstream node via temp storage doesn't mean it can run immediately.

	#rb none
	#tests none

Change 2927060 on 2016/03/29 by Michael.Noland

	Renamed GPU analytics event from GPU to DesktopGPU to reflect that it is the default desktop adapter and not the one we initialized (which is GPUAdapter)
	Updated text/log based FPS chart events to print out GPUAdapter instead (with DesktopGPU in parens if they differ, e.g., in an optimus setup)
	#rb marcus.wassmer
	#tests Ran and did some fps charts

Change 2927048 on 2016/03/29 by Michael.Noland

	HLOD: Removed an unused cvar r.HLODEnabled (everything is done thru r.HLOD)
	#tests Compiled and ran Paragon
	#rb marcus.wassmer

Change 2926920 on 2016/03/29 by Ben.Marsh

	BuildGraph: Update schema with Rename task.

Change 2926911 on 2016/03/29 by Ben.Marsh

	BuildGraph: Add a task which can rename files matching a given wildcard. Syntax is: <Rename Files="*.txt" To="*.md"> or <Rename Files="Engine/Build/..." From="*.txt" To="*.md"/>

	#rb none
	#tests none

Change 2926908 on 2016/03/29 by Andrew.Grant

	Fix for CDO properties of renamed blueprints not being applied
	#rb none
	#tests loaded Origin map (renamed from Playgo3) and verified properties are applied.

Change 2926799 on 2016/03/29 by Jason.Bestimt

	#ORION_DG - Merge MAIN (23) @ CL# 2926780

	#RB:none
	#Tests:none

Change 2926663 on 2016/03/29 by david.nikdel

	#ROBOMERGE-OBO: jason.bestimt
	#ROBOMERGE-SOURCE: CL 2926660 in //Orion/Release-0.23/... via CL 2926662
	#ROBOMERGE-BOT: ORION (Main -> Dev-General)

	#ORION_23 - Potential fix for Cook failures

	"Fix shelved in 2926635, tested in Dev-Blueprints. Could not run any GEditor related logic safely in ShutdownModule because of the same destruction issue orders that caused the bug in the first place. I will chat with Editor team about nulling out GEditor the same way we null out GUnrealEd."

	#RB:none
	#Tests: none

	[CodeReviewed]: andrew.grant, dan.oconnor

Change 2926510 on 2016/03/29 by Andrew.Grant

	Potential fix for OR-18207 - editor becomes unresponsive (audio deadlock)
	#rb none
	#tests compiled

Change 2926495 on 2016/03/29 by Rob.Cannaday

	Change storing HTTP requests as raw pointers to weak pointers with validity being checked via Pinning it
	#jira FORT-18947
	#jira OR-17695
	#tests golden path
	#rb eric.newman

Change 2926427 on 2016/03/29 by Josh.Markiewicz

	#UE4 - fixed typo
	#rb none
	#tests none

Change 2926250 on 2016/03/29 by Martin.Mittring

	fixed OR-18489 HERO: IGGY: RMB on E ability causes blinding hair effect
	#rb:Chris.Bunner
	#codereview:Brian.Karis

Change 2926224 on 2016/03/29 by Daniel.Lamb

	Fix for potenital threading issue with Console manager removing vars which could cause double free.
	#rb Robert.Manuszewski
	#test Orion cook

Change 2926174 on 2016/03/29 by Gareth.Martin

	Cloned fix for bUseMaterialPositionOffsetInStaticLighting crashing across from //UE4/Dev-Landscape/ to unblock people
	#rb
	#tests editor

Change 2925968 on 2016/03/29 by David.Nikdel

	#MCP #OSS
	- Read RedirectUrl from ini

	#RB: Eric.Newman
	#TESTS: compiled in another branch (merge over)
	#ROBOMERGE: Main

[CL 2929424 by Andrew Grant in Main branch]
2016-03-31 15:18:30 -04:00
Jeff Campeau
4953cf332e Partial support for the VS2013 toolchain readded.
Individual projects select 2013 support through their target.cs files. This is already setup for the correct projects and no other projects should use 2013.
#lockdown Nick.Penwarden

[CL 2902827 by Jeff Campeau in Main branch]
2016-03-10 04:38:13 -05:00
Josh Adams
b9b38fe97b Copying //UE4/Dev-Platform to //UE4/Main
==========================
MAJOR FEATURES + CHANGES
==========================

Change 2816560 on 2016/01/05 by Jeff.Campeau

	Remove duplicate CEF binaries

Change 2835599 on 2016/01/20 by Lee.Clark

	PS4 - Added pragma optimization macros

Change 2841103 on 2016/01/23 by Mark.Satterthwaite

	Integrate Git PR #1958: Fixed typo in EMetalFeatures enum
	#jira UE-25721

Change 2841369 on 2016/01/24 by Mark.Satterthwaite

	Fix for Metal crash due to attempt to set a null uniform & null SRV to a shader which requires both exist.
	#jira UE-25910

Change 2841795 on 2016/01/25 by Lee.Clark

	PS4 - MovieStreamer improvements

	* Use GPU for YUV conversion
	* Use new Software2 Decoder

Change 2842261 on 2016/01/25 by Mark.Satterthwaite

	Fix some memory leaks.

Change 2842831 on 2016/01/25 by Mark.Satterthwaite

	Metal implementation for RHIBlockUntilGPUIdle.

Change 2842838 on 2016/01/25 by Mark.Satterthwaite

	When using parallel command contexts in Metal we must ensure that the FRingBuffer is still valid, which means some smart/weak pointers are in order. We should also ensure that functions that may return auto-released objects are appropriately wrapped with scoped autorelease pools. Texture creation failures should also be fatal as we never expect that to occur.

Change 2842914 on 2016/01/25 by Mark.Satterthwaite

	Change assert in MetalTexture's format-shifting SRV constructor to enforce the Metal textureView limits:
	1. No format shifting for MSAA color buffers.
	2. No access to stencil in MSAA packed depth/stencil surface.

	This will allow Metal MSAA support to work on iOS when using separate depth & stencil textures since there's no format shifting involved there.
	#codereview peter.sauerbrei

Change 2843028 on 2016/01/25 by Mark.Satterthwaite

	In Metal wwitch to blit on the correct context when copying out the stencil data into the stencil SRV copy.

Change 2845531 on 2016/01/27 by Lee.Clark

	PS4 - Fix memory alignment  for back buffers
	* Fix memory alignment for MapLargeBlock
	* Fix available direct memory tracking

Change 2846491 on 2016/01/27 by Jeff.Campeau

	2015 compile fixes for Orion

Change 2847395 on 2016/01/28 by Mark.Satterthwaite

	Clear the stencil-SRV copy to 0 in Metal using a blit when created to avoid artefacts if used prior to the parent texture being rendered.
	#jira UE-25834

Change 2847419 on 2016/01/28 by Mark.Satterthwaite

	Apply the same fix to OpenGL's Stencil SRV logic as CL #2847395 applies to Metal.

Change 2848093 on 2016/01/28 by Mark.Satterthwaite

	Cache parallel encoding Metal contexts & reuse them rather than creating a new one each time in order to massively improve parallel encoding performance. This required adding a reset function to Metal's internal state-cache which calls the CommandEncoder wrapper's reset so we don't accidently retain previous state.

Change 2849469 on 2016/01/29 by Mark.Satterthwaite

	Defer render & compute command encoder construction to draw/dispatch etc to eliminate redundant encoders that then perform unnecessary driver & GPU synchronisation work. Currently Clear loadActions force an encoder even if it would then be empty as otherwise we see incorrect rendering. This needs to be tracked and optimised away too in order to achieve the same performance as D3D11.

Change 2849820 on 2016/01/29 by Daniel.Lamb

	Fixed issue where a single DDC back end would not create a hierarchy.
	#codereview Peter.Sauerbrei

Change 2850762 on 2016/02/01 by Jeff.Campeau

	System-wide critical section support for Xbox One

Change 2850763 on 2016/02/01 by Jeff.Campeau

	Network and product config for Orion

Change 2852459 on 2016/02/02 by Mark.Satterthwaite

	Temporarily disable the lazy render command-encoder construction while investigating why it turns some samples black in Metal SM5 mode.

Change 2853947 on 2016/02/03 by Mark.Satterthwaite

	Fix some lazy encoder construction fallout which also means we don't need to recreate render encoder state when performing profiling - the next draw/clear will do that as required.

Change 2854015 on 2016/02/03 by Mark.Satterthwaite

	Move Stencil SRV blitting into FMetalSurface::UpdateSRV called when binding the texture SRV instead of having it done immediately post-rendering. This should avoid paying for the blit when stencil SRV sampling is never used or multiple blits when render-encoders that write stencil are split up due to query buffer overflow or similar. The cost will be a blit per-bind instead which should be more predictable.

Change 2854142 on 2016/02/03 by Mark.Satterthwaite

	Implemented GetTextureBaseRHI (brought over from Dev-Rendering CL #2853948) for Metal to avoid unnecessary virtual function call chain to resolve the FMetalSurface* from an RHI texture.

Change 2854222 on 2016/02/03 by Mark.Satterthwaite

	Remove the uniform buffer resource caching from Metal to match Dev-Rendering CL #2853948.

Change 2854246 on 2016/02/03 by Mark.Satterthwaite

	Removed the uniform buffer resource caching from OpenGLDrv & implemented GetTextureBaseRHI to avoid unnecessary virtual function calls to match Dev-Rendering CL #2853948.

Change 2854279 on 2016/02/03 by Mark.Satterthwaite

	Remove direct access to the MTLCommandQueue, for parallel rendering to work we're going to need to do a bit of management that means its more sensible to keep it private.

Change 2855524 on 2016/02/04 by Lee.Clark

	PS4 - Fix Grayscale SRGB support

[CL 2898161 by Josh Adams in Main branch]
2016-03-07 20:55:29 -05:00
Ben Marsh
5e75112469 Copying //UE4/Dev-Build to //UE4/Main
==========================
MAJOR FEATURES + CHANGES
==========================

Change 2828332 on 2016/01/14 by Matthew.Griffin

	Ensure that warnings from Dynamic Compilation of build.cs files are propagated up to user when compiling in Visual Studio etc.

Change 2828335 on 2016/01/14 by Matthew.Griffin

	Renaming AddThirdParty... functions to AddEngineThirdParty... so it's clear we're talking about third party libraries within the engine directory. This removes another couple of RunningRocket checks and uses the IsMonolithic property now.

Change 2831365 on 2016/01/16 by Ben.Marsh

	Add a UAT command to remove any temp storage directories older than a specified length of time, and disable the GUBP node to do so when running with -NewEC. Better to set this up as a separate scheduled task for each temp storage folder we have, rather than run it as part of GUBP builds above a certain size.

Change 2832166 on 2016/01/18 by Ben.Marsh

	Make INI file parsing much more tolerant to errors, because it prevents the build system from starting up. Now outputs warnings rather than throwing exceptions.

Change 2835725 on 2016/01/20 by Matthew.Griffin

	Removed more uses of RunningRocket functions

	Switch Linux staging check to see if required files exist until switched to using receipts
	Always stage CrashReporter for Linux
	Mac and Linux will not use Compile Lean And Mean when generating project files
	Allow normal DynamicCompilation check to occur in binary builds
	Allow XMPP dependency on WebRTC now that it's publically distributed

Change 2835864 on 2016/01/20 by Matthew.Griffin

	Made sure -rocket is passed when generating project files as this has to work from UnrealVersionSelector with every version of the Engine we've released.
	Also tidied up some arguments that are set in UVS and never used.

Change 2839932 on 2016/01/22 by Matthew.Griffin

	Removed last uses of RunningRocket from UnrealBuildTool

	Changed Mac Build.sh so that it doesn't try to build UBT so that it can be used in installed builds the same way as windows.
	Combined code doing very similar things for single games and rocket projects.
	Removed check on whether to add client and server targets in Rocket as we don't distribute the .target.cs files.
	Removed RunningRocket function and the code checking for -rocket on the command line

Change 2846971 on 2016/01/28 by Matthew.Griffin

	Replaced RunningRocket with IsEngineInstalled for all Engine programs that won't need to be built.

Change 2853879 on 2016/02/03 by Matthew.Griffin

	Added UnrealLightmass to list of programs to build when Build Solution is used and Editor configuration is selected

	#jira UE-25666

#lockdown Nick.Penwarden

[CL 2854567 by Ben Marsh in Main branch]
2016-02-03 15:40:40 -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
Andrew Grant
f25badee7f Copying //UE4/Orion-Staging to //UE4/Main (Origin: //Orion/Dev-General @2826496)
#lockdown Nick.Penwarden

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

Change 2826201 on 2016/01/13 by Zabir.Hoque

	Add more verbose logging to try to understand #OR-11297

	#lockdown Andrew.Grant
	#CodeReview Marcus.Wassmer
	#RB none
	#TESTS compiled Win64 debug editor, ran agora_p

Change 2826170 on 2016/01/13 by Marcus.Wassmer

	Flush unloaded resource properly in LoadMap
	#codereview Gil.Gribb
	#rb none
	#test cycling game.  memory is freed properly now.
	#lockdown Andrew.Grant

Change 2826135 on 2016/01/12 by Michael.Noland

	Orion: Improve login screen on PC to reduce the potential impact of framerate on data center ping calculation
	- Disabled async streaming for the duration of the QOS ping measurement to avoid hitches
	- Added a circular throbber in the top left corner of the login screen indicating that something is async streaming (as a diagnostic tool for users affected by the datacenter ping, can be removed in the future)
	- Added logging of the current average frame time when the datacenter ping is finalized
	- Added a 'Pick Ideal Settings' button to the login screen (note: on the actual screen, not the login widget, so it will not appear on PS4)
	#jira OR-12453
	#rb paul.moore
	#tests Ran a QOS server and client and verified that the new logging is occurring, tried out the new benchmark button, etc...

	Merging CL# 2826128 using //Orion/Main_to_//Orion/Dev-General

Change 2826131 on 2016/01/12 by Michael.Noland

	#UE4 - added print out of MS/FPS during Qos ping evaluation
	#rb michael.noland
	#tests loaded up through login screen to see output

	Merging CL# 2825678 using //Orion/Main_to_//Orion/Dev-General

Change 2826128 on 2016/01/12 by Michael.Noland

	Orion: Improve login screen on PC to reduce the potential impact of framerate on data center ping calculation
	- Disabled async streaming for the duration of the QOS ping measurement to avoid hitches
	- Added a circular throbber in the top left corner of the login screen indicating that something is async streaming (as a diagnostic tool for users affected by the datacenter ping, can be removed in the future)
	- Added logging of the current average frame time when the datacenter ping is finalized
	- Added a 'Pick Ideal Settings' button to the login screen (note: on the actual screen, not the login widget, so it will not appear on PS4)
	#jira OR-12453
	#rb paul.moore
	#tests Ran a QOS server and client and verified that the new logging is occurring, tried out the new benchmark button, etc...

	Merging CL# 2826116 using //Orion/Release-Next->//Orion/Main

Change 2826116 on 2016/01/12 by Michael.Noland

	Orion: Improve login screen on PC to reduce the potential impact of framerate on data center ping calculation
	- Disabled async streaming for the duration of the QOS ping measurement to avoid hitches
	- Added a circular throbber in the top left corner of the login screen indicating that something is async streaming (as a diagnostic tool for users affected by the datacenter ping, can be removed in the future)
	- Added logging of the current average frame time when the datacenter ping is finalized
	- Added a 'Pick Ideal Settings' button to the login screen (note: on the actual screen, not the login widget, so it will not appear on PS4)
	#jira OR-12453
	#rb paul.moore
	#tests Ran a QOS server and client and verified that the new logging is occurring, tried out the new benchmark button, etc...
	#lockdown andrew.grant
	#codereview josh.markiewicz

Change 2825772 on 2016/01/12 by Dmitry.Rekman

	Linux signal handling improvements.

	- Switch crash handlers to use "crash malloc" (preallocated memory) on crash.
	- Remove unnecessary memory allocations from graceful termination handler.

	#rb none
	#tests Run the Linux server and crashed it a few times.
	#codereview David.Vossel, Michael.Trepka

Change 2825768 on 2016/01/12 by Josh.Markiewicz

	#UE4 - added print out of MS/FPS during Qos ping evaluation
	#rb michael.noland
	#tests loaded up through login screen to see output

Change 2825703 on 2016/01/12 by Brian.Karis

	Switched on new motion blur. Set temporal AA sharpness to 1.

	#rb none
	#TESTS editor

Change 2825689 on 2016/01/12 by Lina.Halper

	Fix for get animation notify crash

	https://jira.ol.epicgames.net/browse/OR-12248
	https://jira.ol.epicgames.net/browse/OR-12348

	- Also fixed the crash in preview of persona due to blend sample cache contains previous animation data
	- Also fixed blend space player to reinitialize cache data
	- The main issue is marker doesn't clamp the length, causing notifies ensure to trigger.

	#rb : Laurent.Delayen
	#tests: 10 Sparrows bot match for long time
	#code review: Martin.Wilson
	#lockdown: Andrew.Grant

Change 2825680 on 2016/01/12 by Martin.Mittring

	fixed all cases with r.Tonemapper.ScreenPercentage, ScreenPercentage, Fringe, Vignette, ViewRect, flickering with transluceny (View members have been modified while other thread was reading)
	#rb:Olaf.Piesche, David.Hill
	#test: PC, many cases

Change 2825579 on 2016/01/12 by Chris.Bunner

	Force shadow shape bone indices on the required update list.
	#rb Lina.Halper, Rolando.Caloca
	#tests Editor
	#codereview Daniel.Wright
	#jira OR-12339

Change 2825443 on 2016/01/12 by Martin.Mittring
2016-01-14 08:11:47 -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
Nick Shin
075b444ba2 as of Safari 9.0 setRequestHeader's 2nd parameter value cannot have any leading whitespace
#lockdown josh.adams
#jira UE-22037 - Vehicle Advanced template crash during play in Safari

[CL 2734688 by Nick Shin in Main branch]
2015-10-19 20:06:28 -04:00
Aaron McLeran
ead0bd8bf9 UE-9692, UE-9446 Fixing 3d audio spatialization for HTML5 and Linux.
- 3d audio was fundamnetally broken in HTML5 and Linux for a long time (probably since original port from UE3)
- Fix is to do 3d spatialization math the same way we do it on XAudio2 (i.e. transform to listener-space then do relative source position from there)
- Since HTML5 and Linux *both* use nearly identical OpenAL implementations (and Linux has been fixed by users for a few issues), I decided to nuke the HTML5 implementation and instead link to the Linux implementation. Not sure if we should move the linux OpenAL implementation to a different folder, but it turned out not to matter for packing and testing HTML5
- Also went ahead and added a -3dB headroom factor to reduce volume overall with OpenAL implementation since it was louder than the XAudio2 implementation. I didn't do any technical measurements to come up with this headroom factor, just ear-balled it. We can do something more precise if needed.
- Tested this fix using a simple test-map of a single looping sound source. It was obviously broken (i.e. not panning) and is now obviously fixed.

[CL 2611557 by Aaron McLeran in Main branch]
2015-07-06 16:15:23 -04:00
KitatusStudios
7775a401b1 PR #931: Cleaning up Spelling Errors / Grammer Errors in Comments (Contributed by KitatusStudios)
[CL 2577221 by Matt Kuhlenschmidt in Main branch]
2015-06-04 13:19:17 -04:00
James Moran
1e09f3b5bd Add -Wshadow on HTML5. Fixed errors relating to it. UE-14250
Fixed some potential issues from incoming SDK release. Removed unnecessary js lib.

[CL 2524336 by James Moran in Main branch]
2015-04-24 10:49:50 -04:00
Sneagan
8de0fe67c6 PR #1020: Normalized JS style. No functional change. (Contributed by Sneagan)
[CL 2524272 by James Moran in Main branch]
2015-04-24 10:15:50 -04:00
Ankit Khare
f6875911b2 HTML5: Correctly gate map downloading. Use a progress bar with real progress instead of an infinite throbber.
[CL 2514434 by Ankit Khare in Main branch]
2015-04-16 12:11:10 -04:00
Ankit Khare
3493522c66 HTML5 - UE-13069 - wrong http headers and UE-13431 (unexpected characters at end of POST string)
#codereview james.moran

[CL 2506161 by Ankit Khare in Main branch]
2015-04-08 20:25:32 -04:00
Ankit Khare
79542f541b Allow HTML5 to download maps on the fly.
UPLAT-685 (Remove Virtual File System to reduce run-time memory overhead and allow for larger worlds in HTML5)

#codereview josh.adams, james.moran

[CL 2505577 by Ankit Khare in Main branch]
2015-04-08 14:53:36 -04:00
Ben Marsh
86067c45ca Remove Windows third party libraries for VS2012.
[CL 2493588 by Ben Marsh in Main branch]
2015-03-27 07:55:36 -04:00
Aaron McLeran
5d9396bec0 CIS build fix for HTML5
-initialization list typo

[CL 2477824 by Aaron McLeran in Main branch]
2015-03-12 19:27:15 -04:00
Aaron McLeran
c21f478693 Fixing Platform Builds
#codereview Marc.Audy

[CL 2477328 by Aaron McLeran in Main branch]
2015-03-12 15:40:07 -04:00
Aaron McLeran
d2729ee628 Supporting multiple audio devices for multiple PIE and other potential use-cases.
- Created audio device manager which manages weak ref handles to audio devices
- Audio device handles are created with WorldContexts and accessed through UWorld objects
- All access to audio devices are now through audio device handles
- There is a main/default audio device for GEngine for use with the Editor and single worldcontext games

#codereview marc.audy, matthew.griffin

[CL 2477046 by Aaron McLeran in Main branch]
2015-03-12 12:59:33 -04:00