Commit Graph

12 Commits

Author SHA1 Message Date
Ben Marsh
20bf0eb6a1 Updating copyright notices to 2017 (copying from //Tasks/UE4/Dev-Copyright-2017).
#rb none
#lockdown Nick.Penwarden

[CL 3226823 by Ben Marsh in Main branch]
2016-12-08 08:52:44 -05:00
Ben Marsh
4ba423868f Copying //UE4/Dev-Build to //UE4/Dev-Main (Source: //UE4/Dev-Build @ 3209340)
#lockdown Nick.Penwarden
#rb none

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

Change 3209340 on 2016/11/23 by Ben.Marsh

	Convert UE4 codebase to an "include what you use" model - where every header just includes the dependencies it needs, rather than every source file including large monolithic headers like Engine.h and UnrealEd.h.

	Measured full rebuild times around 2x faster using XGE on Windows, and improvements of 25% or more for incremental builds and full rebuilds on most other platforms.

	  * Every header now includes everything it needs to compile.
	        * There's a CoreMinimal.h header that gets you a set of ubiquitous types from Core (eg. FString, FName, TArray, FVector, etc...). Most headers now include this first.
	        * There's a CoreTypes.h header that sets up primitive UE4 types and build macros (int32, PLATFORM_WIN64, etc...). All headers in Core include this first, as does CoreMinimal.h.
	  * Every .cpp file includes its matching .h file first.
	        * This helps validate that each header is including everything it needs to compile.
	  * No engine code includes a monolithic header such as Engine.h or UnrealEd.h any more.
	        * You will get a warning if you try to include one of these from the engine. They still exist for compatibility with game projects and do not produce warnings when included there.
	        * There have only been minor changes to our internal games down to accommodate these changes. The intent is for this to be as seamless as possible.
	  * No engine code explicitly includes a precompiled header any more.
	        * We still use PCHs, but they're force-included on the compiler command line by UnrealBuildTool instead. This lets us tune what they contain without breaking any existing include dependencies.
	        * PCHs are generated by a tool to get a statistical amount of coverage for the source files using it, and I've seeded the new shared PCHs to contain any header included by > 15% of source files.

	Tool used to generate this transform is at Engine\Source\Programs\IncludeTool.

[CL 3209342 by Ben Marsh in Main branch]
2016-11-23 15:48:37 -05:00
Peter Sauerbrei
3d58452185 Copying //UE4/WEX-Staging to Dev-Main (//UE4/Dev-Main)
===================
MAJOR FEATURES + CHANGES
===================

Change 3123735 on 2016/09/13 by Josh.Markiewicz

	#UE4 - added FNames for some common online features to be refactored later
	#codereview david.nikdel

Change 3123608 on 2016/09/13 by Josh.Markiewicz

	#OSS - refactor FUniqueNetIdRepl to derive from FUniqueNetIdWrapper and clean up redundant code
	#codereview david.nikdel

Change 3120074 on 2016/09/09 by David.Nikdel

	#Analytics: Move log message to more correct location

Change 3120073 on 2016/09/09 by David.Nikdel

	#Analytics: Adjustments to ET.DroppedSubmission per Wes's feedback
	- Don't try to restore events at all if caching is disabled (but do log the error)
	- Stop accumulating events (even the ET.DroppedSubmission event) at 1024 cached to defend against run away accumulation
	#CodeReview: Wes.Hunt

Change 3119959 on 2016/09/09 by Peter.Sauerbrei

	update to engine to provide the generic chunk install when one is not implemented or requested
	#rb none

Change 3119378 on 2016/09/09 by David.Nikdel

	#Analytics #ET: Added a config option to not drop events in the event of a failure to flush.
	- Events are re-added to the queue (may result in some reordering but timestamps will still be there) in the event of a failure
	- Also appending an ET.DroppedSubmission event in this case so we can track how often clients fail. Has HTTP_STATUS and URL attributes.
	- Events accumulate within a given application run but no attempt is made to persist across crashes etc.
	#CodeReview: Wes.Hunt

Change 3118773 on 2016/09/08 by Peter.Sauerbrei

	bring over fix for missing debug information in IOS executables
	#rb none

Change 3118574 on 2016/09/08 by Peter.Sauerbrei

	pulled over architecture fix for IOS from Main
	#rb none

Change 3117672 on 2016/09/08 by Steve.Allison

	Adding 3544_iPadMini3_ChAIRQA

Change 3116529 on 2016/09/07 by Josh.Markiewicz

	#UE4 - reverted started IOS purchase/store work from default engine OSS plugins
	#codereview david.nikdel

Change 3116010 on 2016/09/07 by Josh.Markiewicz

	#WEX - Copying //WEX/Dev-Mobile to Dev-Main (//WEX/Dev-Main) to get OnlineSubsystemiOS changes

Change 3114411 on 2016/09/06 by Peter.Sauerbrei

	fix for deploying movies to the correct directory
	#rb none

Change 3113944 on 2016/09/06 by Peter.Sauerbrei

	addition of resave packages command to UAT
	#rb none

Change 3112948 on 2016/09/02 by Nathan.Green

	#WEX
	- Fixing file length on Android so that we can write out stats files (change is being submitted into Dev-Mobile by Chris Babcock)
	#CodeReview: Chance.Lyon, David.Nikdel

Change 3112567 on 2016/09/02 by Josh.Markiewicz

	#UE4 - fixed possible exception when checking directories that don't exist  (copy of CL#3099217)
	#rb ben.marsh

Change 3112055 on 2016/09/02 by Chance.Lyon

	#WEX
	- Merging mobile branch changes into main

Change 3108827 on 2016/08/31 by Peter.Sauerbrei

	fix for warning
	#rb none

Change 3105012 on 2016/08/29 by Peter.Sauerbrei

	enable ICMP for Android
	#rb none

Change 3103322 on 2016/08/26 by David.Nikdel

	#WEX: Fix for clang warnings in Font Outline code
	#CodeReview: Matt.Kuhlenschmidt

Change 3102935 on 2016/08/26 by David.Nikdel

	Merging CL 3102878 from
	//UE4/Dev-Editor/Engine/...
	to //WEX/Main/Engine/...
	------
	Added support for outline fonts
	- An outline size (in slate units), optional material and optional fill color can be specified with each font info.
	- Outlines do not contribute to measurement directly so the text measuring and shaping methods have been modified to account for outlines
	- Fixed a bug where font materials do not work properly if part of the font's rendered glyphs were in a different atlas
	#CodeReview: Matt.Kuhlenschmidt, Matt.Hancy, Peter.Sauerbrei

Change 3102541 on 2016/08/26 by Peter.Sauerbrei

	fix for build warning on Mac and IOS
	#rb none

Change 3101820 on 2016/08/25 by Peter.Sauerbrei

	Moved the online changes to the plugins directory
	#rb none

Change 3101808 on 2016/08/25 by Peter.Sauerbrei

	Merging using WEX_Main_to_UE4_WEX_Staging bringing in UE4 engine 4.14
	#rb none

Change 3097879 on 2016/08/23 by David.Nikdel

	#Analytics #OSS: Adjusted cohort selection algorithm and test cases

Change 3096606 on 2016/08/22 by Nathan.Green

	#WEX
	- Adding bAllowWindowResize, bAllowClose, bAllowMaximize, and bAllowMinimize boolean to GeneralProjectSettings
	- Preventing us from resizing the window for the time being (in the future we may only allow along aspect ratio resizing)
	#CodeReview: Chance.Lyon, David.Nikdel

Change 3094946 on 2016/08/19 by David.Nikdel

	#OSS - Added FUserOnlineAccountMcp::SelectCohort

Change 3094942 on 2016/08/19 by David.Nikdel

	#UE4 - Made FMD5 const-correct

Change 3092494 on 2016/08/17 by Nathan.Green

	#WEX
	- Making sure we never build zip64 instead of zip
	#CodeReview: Chance.Lyon, David.Nikdel, Chris.Babcock

Change 3090760 on 2016/08/16 by Michael.Trepka

	Copy of CL 3089133

	Fix for task bar displayed over the fullscreen window on Windows 10 with Anniversary Update

Change 3090759 on 2016/08/16 by Michael.Trepka

	Copy of CL 3078927

	Updated WindowTitleBarArea widget to not override window zone in fullscreen mode, to prevent window from being moved. That required adding separate handling for double click in fullscreen, as it's no longer handled by window action.

Change 3087872 on 2016/08/12 by Josh.Markiewicz

	#UE4 - cleaned up IOS store/purchase interface (first pass, minus IAP restore)
	#codereview david.nikdel, josh.adams

Change 3084182 on 2016/08/10 by Peter.Sauerbrei

	revert out the OpenGL shader compression code
	#rb none

Change 3082565 on 2016/08/09 by Ben.Marsh

	Fix building with VS2015 update 3.

Change 3082557 on 2016/08/09 by Ben.Marsh

	Fix UBT makefile being invalidated to update adaptive unity build settings, even if that module happens to not include that file in a unity file. Keep a list of all files included by unity files as well as files in the working set.

	#codereview Mike.Fricker, Michael.Noland

Change 3082456 on 2016/08/09 by Josh.Markiewicz

	#UE4 - fixed typo

Change 3082439 on 2016/08/09 by Josh.Markiewicz

	#UE4 - added CanMakePurchase call to IOS

Change 3081905 on 2016/08/09 by Michael.Noland

	Editor: Made the text colors and font size in the output log configurable in the editor appearance settings (no changes to default values ... yet)
	#codereview matt.kuhlenschmidt

Change 3080932 on 2016/08/08 by Josh.Markiewicz

	#UE4 - New IOS purchasing/store interface v2
	- added interfaces to main IOS subsystem
	- added proper destruction of interfaces to Shutdown of IOS
	- moved FStoreKitHelper to its own file
	-- extended it for new v2 (improvements forthcoming)
	- MCPCatalogHelper returns bogus user id for IOS app store
	#codereview josh.adams, david.nikdel
	#tests very basic IAP stuff so far

Change 3080217 on 2016/08/07 by Michael.Noland

	Engine: Prevented a startup warning when SpectatorClass is nullptr, as not all games require a spectator pawn
	- Also reduced the number of GetWorld() calls in APlayerController::SpawnSpectatorPawn()

Change 3080046 on 2016/08/06 by Michael.Noland

	Engine: Moved where scissor rect reset happens for custom slate drawables to avoid a conflict with an existing fix in another branch
	#codereview matt.kuhlenschmidt

Change 3080032 on 2016/08/06 by Michael.Noland

	UMG: Fixed a bug where screen-mode UWidgetComponent widgets were drawn incorrectly offset in splitscreen or with aspect-ratio constrained cameras
	#codereview nick.darnell, marc.audy

Change 3080031 on 2016/08/06 by Michael.Noland

	Engine: Add the option to return player viewport-relative positions to ProjectWorldLocationToScreenWithDistance, ProjectWorldLocationToScreen, and ProjectWorldToScreen, which is useful if the position is going to be used for widgets in splitscreen or with aspect-ratio constrained cameras
	#codereview nick.darnell, marc.audy

Change 3080029 on 2016/08/06 by Michael.Noland

	Engine: Fixed a bug where the debug console and other debug rendering would be an incorrect size (based on the last player viewport) and also be partially clipped (depending on what in Slate rendered previously)
	- This fixes issues with the console being offset and clipped when using aspect ratio constrained cameras or split screen
	#codereview matt.kuhlenschmidt

Change 3079656 on 2016/08/05 by Josh.Markiewicz

	#WEX - basic IOS changes to project
	- added OnlineSubsystemIOS
	- added some default settings
	- removed GoogleVR from project
	#codereview david.nikdel

Change 3078971 on 2016/08/05 by Steve.Allison

	Updating to match check-in for UE4 Main @ CL 3078968

Change 3078025 on 2016/08/04 by Michael.Trepka

	Copy of CLs 3073978 and 3075931

	- More reliable way of checking if the cursor should be changed to resize cursor in bordeless window mode
	- On Windows, lock the cursor to the center of the rect if the cursor is hidden to avoid problems with borderless window's round corners not treated as part of the window.

Change 3075415 on 2016/08/03 by Peter.Sauerbrei

	reduce the metal command buffers

Change 3071457 on 2016/07/31 by David.Hunt

	#WEX
	Blueprint indexing

	@Pete: This change and anything in Engine/Content can be stomped by any engine integration. This is just to help with not having to resave all of these to udpate a few of our own content blueprints for search indexing.

	#CodeReview Peter.Sauerbrei, Steve.Allison, David.Nikdel

Change 3068661 on 2016/07/28 by Josh.Markiewicz

	#WEX - changed the max number of possible UObjects allowed by a factor of 10 to reduce the memory footprint
	#codereview david.nikdel, peter.sauerbrei

Change 3068500 on 2016/07/28 by David.Nikdel

	#OSSMCP: Use correct HttpRequest creation method to respect game service config

Change 3066945 on 2016/07/27 by David.Nikdel

	Reproduced CL 3063869 from Michael.Noland
	>> Engine: Added a cvar (t.FPSChart.OpenFolderOnDump) to control whether or not FPS charts automatically open the profiling folder when stopfpschart is executed, which can be useful to avoid a bunch of open
	>> windows while doing automated testing
	#CodeReview: Michael.Noland
	#JIRA: WEX-2342

Change 3063495 on 2016/07/25 by Michael.Trepka

	Copy of CL 3063426

	Borderless window support improvements:

	- the cursor changes to resize when hovering over the window edge
	- added a way for widgets to register a delegate that's called when window actions occur (maximize, restore, etc.)
	- used window action notification for WindowTitleBarArea to improve how toggling fullscreen on double click is handled

Change 3063431 on 2016/07/25 by Michael.Trepka

	Copy of CL 3063057 - Use round corners for windows with no system title bar and border only in windowed mode.

Change 3062654 on 2016/07/23 by Michael.Trepka

	Copy of CL 3046975 and 3056204 - Support for making the game window borderless (no system border or title bar). Disabled by default. Enabling requires adding bUseBorderlessWindow=True to [/Script/EngineSettings.GeneralProjectSettings] in DefaultGame.ini. The game using this is responsible for adding WindowTitleBarArea widget to its UI, as well as window minimize/maximize/close buttons.

Change 3062647 on 2016/07/23 by Michael.Trepka

	Copy of CL 3029211 - Added a setting (on by default) to make the game window preserve its content's aspect ratio while being resized by user

Change 3062646 on 2016/07/23 by Michael.Trepka

	Copy of CLs 3039855, 3042644 and 3042911 - Added an option to toggle fullscreen with F11 key in addition to Alt+Enter

Change 3062638 on 2016/07/23 by Michael.Trepka

	Copy of CL 3038201 and CL 3046803 -Added WindowTitleBarArea widget

Change 3062056 on 2016/07/22 by Peter.Sauerbrei

	addition of optimization for ios compile times

Change 3054586 on 2016/07/18 by Nathan.Green

	#WEX
	- Adding tags around my engine level change
	#CodeReview: Chance.Lyon, David.Nikdel

Change 3054581 on 2016/07/18 by Nathan.Green

	#WEX
	- Removing previous change, making all buttons ignore space bar and enter as we don't really care about that functionality
	#JIRA: WEX-2256
	#CodeReview: Chance.Lyon, Colin.Pyle, David.Nikdel

Change 3048243 on 2016/07/13 by Steve.Allison

	This one actually has the changes from rev4

Change 3046649 on 2016/07/12 by Steve.Allison

	Updating to match provision in UE4 Main @ CL 3046262

Change 3046127 on 2016/07/12 by Ian.Fox

	#UE4, #OnlineSubSystem - Hotfix in the ExpirationDate field early so we can update the OGF plugin
	#codereview David.Nikdel

Change 3034707 on 2016/06/30 by Peter.Sauerbrei

	update provision to go with latest certificate
	#rb none

Change 3031429 on 2016/06/28 by David.Nikdel

	#WEX: porting an engine change we depend on in latest OGF (pre integrate)

Change 3030084 on 2016/06/27 by David.Nikdel

	#GameCatalog: Add code to export attributes in itemGrants
	#CodeReview: Scott.Bowen

Change 3030073 on 2016/06/27 by David.Nikdel

	#Json: Make JsonObjectWrapper play nice with serialization and Import/Export Text
	#CodeReview: Scott.Bowen

Change 3030029 on 2016/06/27 by David.Nikdel

	#WEX: Fix for FJsonObjectWrapper::ImportTextItem (use FParse::QuotedString to read from Buffer)
	#CodeReview: Scott.Bowen

Change 3029740 on 2016/06/27 by David.Nikdel

	#OGF #JsonObjectWrapper
	- Add attributes to catalog grants
	@ScottB - I didn't get a chance to test this today. Things are crazy for PS+. All the code should already be there on the backend though. Here's a shelf in case you need it asap
	#CodeReview: Scott.Bowen

Change 3028704 on 2016/06/27 by Ian.Fox

	Duplicating 3027482 from //Orion/Main

	Read TaggedPropertyRedirects from all config files to allow plugins to register property redirectors

	You'll need this before you grab the latest OGF or your catalog prices will go away, so here it is now

	#ue4
	#rb David.Nikdel
	#tests none

Change 3021448 on 2016/06/21 by Peter.Sauerbrei

	potential fix for android apk size issue

Change 3020999 on 2016/06/21 by David.Nikdel

	#WEX: Likely fix for WEX-1610
	#CodeReview: Chance.Lyon

Change 3008450 on 2016/06/09 by Colin.Pyle

	#PF
	- WEX-1737, WEX-1744
	- Adding the ability to set new layers in widget components
	- WidgetComponents are now blueprintable
	- New blueprint for the level marker menu widget components
	- Map marker menus are now in a layer above other widget components

Change 3007804 on 2016/06/09 by Peter.Sauerbrei

	fix for build set up failure

Change 3007292 on 2016/06/09 by Peter.Sauerbrei

	add the WEX e-mail stuff back in, seems to have gotten lost in the transition

Change 3004478 on 2016/06/07 by Peter.Sauerbrei

	for now have the cooker respect the bCookAll flag in the project settings.

Change 3000256 on 2016/06/03 by Peter.Sauerbrei

	fix for iOS compile warning

Change 2998304 on 2016/06/02 by Nathan.Green

	#PF
	- Fixing Windowed Mode
	#CodeReview: Chance.Lyon, Colin.Pyle, Peter.Sauerbrei

Change 2994269 on 2016/05/31 by Peter.Sauerbrei

	Merging

	//depot/UE4-WEX/...

	to //WEX/Main/...

Change 2987181 on 2016/05/23 by Peter.Sauerbrei

	Merging

	//UE4/WEX-Staging/.p4ignore.txt
	//UE4/WEX-Staging/Engine/...
	//UE4/WEX-Staging/GenerateProjectFiles.bat
	//UE4/WEX-Staging/GenerateProjectFiles.command
	//UE4/WEX-Staging/GenerateProjectFiles.sh
	//UE4/WEX-Staging/UE4Games.uprojectdirs
	//UE4/WEX-Staging/WEX/...

	to //WEX/Main/...

Change 2984959 on 2016/05/20 by Peter.Sauerbrei

	re-applying HSL engine change

	#PF
	PF-292
	- Make sure to regenerate the list when you open the recipe view
	- Fixes cases where you buy an item in the store then return to evolve

Change 2984957 on 2016/05/20 by Peter.Sauerbrei

	re-apply engine change from HSL

	#PF
	PF-33
	- Check if we are in BeginDestroyed on Animation updates, possibly fixes a crash on level transition
	- Make interactive items play their mouseover animations
	- Heroes make the screen shake if they are on cooldown, we should figure out how to remove that on PC

Change 2984956 on 2016/05/20 by Peter.Sauerbrei

	re-apply HSL change

	#PF
	PF-11
	- Remove simulated touch with the mouse
	- Add Right-click support to the game
	- Right click now does the special attack

Change 2984345 on 2016/05/19 by Peter.Sauerbrei

	Copying

	//UE4/WEX-Staging/...

	to //WEX/Main/...

	This should reset the merge history

Change 2981872 on 2016/05/18 by Peter.Sauerbrei

	fixes for IOS build of WEX

Change 2980734 on 2016/05/17 by Peter.Sauerbrei

	Copying

	//depot/UE4-WEX/...

	to //WEX/Main/...

	Populating WEX stream from old depot at CL2979954

#lockdown nick.penwarden

[CL 3129012 by Peter Sauerbrei in Main branch]
2016-09-16 17:07:30 -04: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
Matt Kuhlenschmidt
375a2f18a6 Added support for materials to be used on Slate based fonts.
[CL 2588529 by Matt Kuhlenschmidt in Main branch]
2015-06-16 09:30:13 -04:00
Jamie Dale
4fe626b03a Made FSlateFontInfoStructCustomization use GET_MEMBER_NAME_CHECKED
[CL 2514358 by Jamie Dale in Main branch]
2015-04-16 11:46:50 -04:00
Jamie Dale
446e0d00ee Added warnings for when FSlateFontInfo is created with a null font, or a font that can't provide a valid composite font
This also stops offline (bitmap) cached fonts from reporting that they're able to provide a composite font (they can't).

This makes it clearer when Slate will be forced to use the fallback font path, which may not always be as fast as the standard font path.

[CL 2482035 by Jamie Dale in Main branch]
2015-03-17 15:39:05 -04:00
Ben Marsh
149375b14b Update copyright notices to 2015.
[CL 2379638 by Ben Marsh in Main branch]
2014-12-07 19:09:38 -05:00
Jamie Dale
7304f3e03a Fixed crash getting the font info being edited while transitioning to PIE
UE-6203 - Crash when PIE after changing value of wrap text in UMG

IPropertyHandle::AccessRawData can return null values while we're transitioning to PIE, and these should not be added to the array of structs returned by FSlateFontInfoStructCustomization::GetFontInfoBeingEdited as all of those entries are assumed to be valid, non-null, pointers.

[CL 2375943 by Jamie Dale in Main branch]
2014-12-04 09:38:51 -05:00
Jamie Dale
59d60efa73 Speculative fix for a crash when a nested widget is changed
UE-5795 - UMG: Crash when changing font size on TextBlock in a widget that was referenced by another widget (both UMG editors opened)

We were getting a crash using the cached values of SlateFontInfoStructs after updating a nested widget in UMG. This has been changed to get the value of SlateFontInfoStructs as required, first ensuring that the struct property handle is still valid.

[CL 2374699 by Jamie Dale in Main branch]
2014-12-03 09:01:34 -05:00
Mikolaj Sieluzycki
51f5333986 Prepare cpp files for header cleanup.
#codereview Robert.Manuszewski

[CL 2356864 by Mikolaj Sieluzycki in Main branch]
2014-11-12 04:58:53 -05:00
Jamie Dale
f7430ac704 Initial support for composite fonts for Slate, UMG, and Canvas
Slate now has the concept of composite fonts and font families (via FCompositeFont and FTypeface). A composite font is a font that contains a default font family, as well as any number of sub-font families which should be used for a given set of character ranges. This change will greatly improve the localization support for fonts.

UFont assets can now use two forms of caching "offline" (which is the way they have always worked historically), and "runtime" (which utilizes the Slate font cache to cache glyphs on demand). These runtime cached UFont assets are now the only way to specify which font to use for a UMG widget, and address the previous issues about ensuring that the required font files were staged for your game.

The Slate font cache now works on FFontData instances, rather than filenames. This allows the UFont asset to embed a blob of TTF or OTF font data inside it, rather than require the fonts be loaded from files on disk.

The Canvas text renderer has been updated to support runtime cached UFont assets. This gives our legacy Canvas based tools the same improved font localization support as the rest of the Slate-based editor UI.

UFont asset creation has been changed to use runtime caching by default, and additionally, you can now import a TTF or OTF file via the Content Browser and it will automatically create a UFont asset. If you still want an offline cached UFont asset, you can just change the cache type in the font editor, and the usual font picker dialog will appear and allow you to generate a font texture atlas.

[CL 2342203 by Jamie Dale in Main branch]
2014-10-28 09:02:03 -04:00