Commit Graph

21 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
Nick Darnell
630510e3ef Copying //UE4/Dev-Editor to Dev-Main (//UE4/Dev-Main)
#lockdown Nick.Penwarden

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

Change 2888098 on 3/1/2016 by Nick.Darnell

	Adding back the SetWidgetToFocusOnActivate call and deprecating it.  Will need to also do this in 4.11.

	#lockdown Nick.Penwarden

Change 2851669 on 2016/02/01 by Alexis.Matte

	#jira UE-25928
	Skeletal mesh import now support _skinXX that are not sequential.
	Static mesh was already supporting non sequential _skinxx ordering

	#codereview nick.darnell

Change 2851672 on 2016/02/01 by Alexis.Matte

	#jira UE-25971

	The proxy camera mesh is now properly reset to zero

	#codereview nick.darnell

Change 2851675 on 2016/02/01 by Alexis.Matte

	#jira UE-25525

	Update the tooltips

	#codereview nick.darnell

Change 2851764 on 2016/02/01 by Alexis.Matte

	#jira UE-25595

	The fbx plus and minus icons are now brighter

	#codereview nick.darnell

Change 2852116 on 2016/02/01 by Bob.Tellez

	#UE4 Submitting pull request 2013 from GitHub (Pull request 2013). Thanks for the fix hoelzl!

	Fix file selection when reimporting curve from moved CSV file
	When reimporting a data curve after moving the CSV file from which it was generated, the file selection dialog does not present an option to select CVS files. This patch fixes the issue by assigning the correct 'SupportedClass' value for `UReimportCurveFactory` instances.

	#codereview Nick.Darnell
	#JIRA UE-26247
	#2013

Change 2852375 on 2016/02/02 by Richard.TalbotWatkin

	Spline component improvements: added facility to not restore component instance cache after the construction script has run, so the points can act as inputs to the construction script. Created a new property bInputSplinePointsToConstructionScript for that.  Added SetUpVectorAtSplinePoint, and corrected some bugs.
	#jira UE-24931 - Set Location at Spline Point doesn't do anything

Change 2852726 on 2016/02/02 by Richard.TalbotWatkin

	Fixed FPropertyChangedEvent::GetArrayIndex when called from PostEditChangeProperty.
	#jira UE-25316 - PropertyChangedEvent.GetArrayIndex broken
	#codereview Robert.Manuszewski

Change 2853152 on 2016/02/02 by Jamie.Dale

	Fixed multi-line editable texts not updating their font when changed in UMG

	Also made all the SetStyle functions use the default if they're passed null (to match SEditableTextBox), and tidied up some of the property panel layout when editing styles.

	#codereview Chris.Wood

Change 2853220 on 2016/02/02 by Alexis.Matte

	#jira UE-26303

	We now apply the scene option transform to the vertex of meshes instead of the root node of the scene. This allow re-alignment of the mesh to go with animation.

	#codereview nick.darnell

Change 2853282 on 2016/02/02 by Alexis.Matte

	Back out changelist 2853220

Change 2854211 on 2016/02/03 by Nick.Darnell

	Widget Reflector - Limit the minimum scale that can be applied to something more reasonable 50%, instead of 10%.

Change 2854216 on 2016/02/03 by Nick.Darnell

	Scene Viewport - The scene viewport handles application scale better now, allowing click locations to be interepreted correctly and transformed into pixel hit location, rather than local space widget location, which may not match.

Change 2854220 on 2016/02/03 by Nick.Darnell

	Slate - Allowing mousewheel or gesture to be routed directly for a widget path like has been done for other mouse events, this permits more kinds of mouse like actions in a VR environment onto widgets in the scene.  (not actually hooked up to do it, but this now permits it at the slate level to be done correctly).

Change 2854449 on 2016/02/03 by Alexis.Matte

	-Fix the fbx import options, for the scene transform value that was not apply correctly
	-Add an inspector on the scene import option in the reimport dialog

Change 2855659 on 2016/02/04 by Alexis.Matte

	-Fix the bake pivot when there is a hierarchy, we now accumulate the pivot effect in the hierarchy to place the object at the correct place.

	#codereview nick.darnell

Change 2855922 on 2016/02/04 by Alexis.Matte

	#jira UE-26303

	The animation is now align with the imported skeletal mesh, the bakepivot is also supported

	#codereview nick.darnell

Change 2856989 on 2016/02/05 by Jamie.Dale

	Some improvements to the source code loc gatherer

	* We now strip any comments out of any pre-processor tokens before we start handling them.
	* Fixed a case where "#if defined" and "#elif defined" would parse incorrectly.
	* Fixed a case where "#define LOCTEXT_NAMESPACE" and "#define LOC_DEFINE_REGION" may not be paired correctly with their corresponding "#undef".

[CL 2888106 by Nick Darnell in Main branch]
2016-03-01 15:17:24 -05:00
Max Chen
dfad80bd9e Copying //UE4/Dev-Sequencer to Dev-Main (//UE4/Dev-Main)
==========================
MAJOR FEATURES + CHANGES
==========================

Change 2800717 on 2015/12/11 by Max.Chen

	Sequencer: Sort the key times for drawing to fix path trajectory.
	#jira UE-24331

Change 2803299 on 2015/12/15 by Max.Chen

	Sequencer: Fix property names so that they're the display names. For example, "DepthOfFieldFStop" now reads as "Aperture F Stop"

Change 2804586 on 2015/12/15 by Max.Chen

	Sequencer: Add zoom in/out with shortcuts underscore and equals.

Change 2811823 on 2015/12/23 by Max.Preussner

	Editor: Added UI action for creating new content browser folders; code cleanup; removed dead code

	Based on GitHub PR #1809 by artemavrin (https://github.com/EpicGames/UnrealEngine/pull/1809)

	#github: 1809

Change 2811839 on 2015/12/23 by Max.Preussner

	StereoPanorama: Code cleanup pass

	Based on GitHub PR# 1756 by ETayrienHBO (https://github.com/EpicGames/UnrealEngine/pull/1756)

	Also:
	- NULL to nullptr
	- namespaced enums to enum classes
	- consistent whitespace, line breaks and parentheses

	#github: 1756

Change 2819172 on 2016/01/07 by Andrew.Rodham

	Sequencer: Marquee and move modes are now automatically activated based on sequencer hotspot

Change 2819176 on 2016/01/07 by Andrew.Rodham

	Sequencer: Various cosmetic fixes

	  - Added icons to tracks
	  - Removed SAnimationOutlinerTreeNode dependency from FSequencerDisplayNode (to enable future customization of shot/event track etc)
	  - Added spacer nodes between top level display nodes
	  - Various hover states and highlights

Change 2819445 on 2016/01/07 by Andrew.Rodham

	Sequencer: Rendering out a capture from the composition graph now renders at the correct size even if r.ScreenPercentage is not 100.
	#jira UE-24920

Change 2820747 on 2016/01/08 by Andrew.Rodham

	Sequencer: Added option to close the editor when capturing starts
	#jira UE-21932

Change 2827701 on 2016/01/13 by Max.Preussner

	Media: Updating audio track specs each frame to better support streaming media and variable streams.

Change 2828465 on 2016/01/14 by Max.Preussner

	Media: Better visualization of unknown media durations

Change 2828469 on 2016/01/14 by Max.Preussner

	Media: Checking URL scheme on URLs that didn't pass the file extension filter

Change 2834888 on 2016/01/19 by Max.Preussner

	Core: TQueue modernization pass

Change 2834934 on 2016/01/19 by Max.Preussner

	Core: Implemented TTripleBuffer for triple buffers.

Change 2834950 on 2016/01/19 by Max.Preussner

	Core: Added unit tests for TTripleBuffer dirty flag

Change 2835488 on 2016/01/20 by Max.Preussner

	Core: More descriptive method names, initialization constructor, unit tests for TTripleBuffer

Change 2837515 on 2016/01/20 by Max.Chen

	Sequencer: Command line options for custom passes.

Change 2837517 on 2016/01/20 by Max.Chen

	Sequencer: Fix crash in visibility track instance on PIE.

Change 2837518 on 2016/01/20 by Max.Chen

	Sequencer: Add option to lock to frame rate while playing.
	#jira UETOOL-475

Change 2837523 on 2016/01/20 by Max.Chen

	Sequencer: Capture thumbnail on level sequence asset save.

Change 2837527 on 2016/01/20 by Max.Chen

	Sequencer: Added preroll for subsequences. Refactor instance update to combine data in EMovieSceneUpdateData.
	#jira UE-25380

Change 2837537 on 2016/01/20 by Max.Chen

	Sequencer: Add sequencer transport controls back into viewports.
	#jira UE-25460

Change 2837561 on 2016/01/20 by Max.Chen

	Sequencer: Added ability to convert a possessable to a spawnable

	  - This option is available for any root-level possessable object bindings
	  - It will currently delete the existing possessable (we could make this behaviour optional in future)
	  - There is currently no check to sett if the actor is possessed by subsequent sub-sequences. If this is the case, using a possessable, or externally owned spawnable would be a better bet.

Change 2837565 on 2016/01/20 by Max.Chen

[CL 2858958 by Max Chen in Main branch]
2016-02-08 13:35:28 -05:00
Bob Tellez
b51555abf7 Copying //UE4/Fortnite-Staging to //UE4/Main
#lockdown nick.penwarden

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

Change 2806454 on 2015/12/16 by Bob.Tellez

	#UE4 Getting crash reporting working again on linux servers. Since -Unattended is now being passed BEFORE the target folder, the cmd line parsing code was failing so now it parses tokens and switches in a more general way. Also, diagnostics.txt had the incorrect case, since the d is supposed to be capitolized and the crash report processor is case sensitive.

	#rb Ben.Zeigler

	#codereview Dmitry.Rekman

Change 2805502 on 2015/12/16 by Ben.Zeigler

	#UE4 Move ValidateEnumProperties into ValidateGeneratedClass, it was happening too early in the generation process so was being called at an invalid time.
	As a result of this ValidateEnumProperties will not be called correctly for compile on load blueprints, that issue is covered in UE-24569
	#codereview mike.beach, bob.tellez

Change 2805288 on 2015/12/16 by David.Nikdel

	#HTTP #HttpRetry
	- Add new Failed_ConnectionError code to EHttpRequestStatus to distinguish between connection errors and protocol errors.
	- Changed HTTP retry logic a little bit
	  * If a response was received, retry on service-specific explicit HTTP codes (defaults to empty)
	  * If a response was not received and we did not send a full request, automatically retry
	  * If a response was not received and a request may have been sent, retry if the verb is GET or HEAD (should be idempotent)
	- Adjusted Curl/IOS/Mac/PS4/WinInet to try and distinguish Failed_ConnectionError where possible
	  * Other systems will default to Failed which is ok (ConnectionError is an opportunistic categorization)
	  * Opened a PS4 ticket to try to improve detection, but unfortunately there's no way (currently) to distinguish between send timeout, connection timeout, and receive timeout, the latter being the problematic case.
	- Removed the concept of global/default HTTP retry status codes. No system has enough knowledge to set those globally.
	  * Individual requests still specify explicit "retryable" codes and McpServiceBase sets that on each request on a per-service basis
	#RB: Sam.Zamani
	#CodeReview: Sam.Zamani, Josh.Markiewicz, Alex.Fennell, Dmitry.Rekman, Sam.Spiro
	#Fixes: FORT-17804

Change 2803864 on 2015/12/15 by Bob.Tellez

	#UE4 Changed usage of !UE_SERVER to !IsRunningDedicatedServer in cases where we are preventing load attempts on UFonts. This is so running an editor build with -server works the same as running a cooked server.

	#rb Dmitry.Rekman

	#codereview Nick.Darnell

Change 2803677 on 2015/12/15 by Billy.Bramer

	- Expose equality and inequality operators for gameplay attributes

	#rb Todd.Eckert

Change 2802881 on 2015/12/14 by Bob.Tellez

	#UE4 InheritableComponentHandler no longer keeps records for components that we are no longer inheriting.

	#rb Phillip.Kavan, Maciej.Mroz

	#codereview Phillip.Kavan, Maciej.Mroz

Change 2801636 on 2015/12/14 by Bob.Tellez

	#UE4 Returning package insert order for non-imports back to being after those of matching priorities unconditionally since this is what you want even when you are not using the asset registry to preload packages.

	#codereview Graeme.Thornton

Change 2800400 on 2015/12/11 by Jonathan.Lindquist

	Submitting a new Pivot Painter Edition
	- now renders to textures
	- improved workflow
	- greater capabilities

Change 2799579 on 2015/12/11 by John.Abercrombie

	[AUTOMERGE]

	Fixed EQS BP query wrappers getting GCed before wrapped query finishes #UE4

	Fixes FORT-18649 - Patrols don't spawn consistently
	- The patrol blueprint was waiting (endlessly) for an EQS query to finish but because the wrapper could be GC-ed while the EQS query was running the delegate would never fire

	#rb me (this code was written by MieszkoZ)
	(removed code review for integration of Mieszko.Zielinski, Phil.Cole, Dominic.Barile)

	--------
	Integrated using branch UE4-Fortnite-To-UE4-FortniteReleases/0.10 (reversed) of change#2799575 by John.Abercrombie on 2015/12/11 09:55:11.

Change 2799018 on 2015/12/10 by Bob.Tellez

	#UE4 The asset registry tags stripped from cooked builds is now a blacklist by default that includes only the FiB tag. You can opt-in to using the whitelist by flipping the bUseAssetRegistryTagsWhitelistInsteadOfBlacklist flag.

	#rb Fred.Kimberley

	#codereview Peter.Knepley

Change 2798926 on 2015/12/10 by Bob.Tellez

	#UE4 Removed some showflags from the list of "Fixed" showflags since they were actually in use at runtime in Fortnite in a scene capture.

	#jira FORT-18514

	#codereview Martin.Mittring

Change 2797758 on 2015/12/10 by Mark.Satterthwaite

	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 2781204 on 2015/11/25 by Dmitry.Rekman

	Linux: use jemalloc by default if available.

	- Alleviates one of the reasons for player disconnect (FORT-18048), which was machines running OOM.

	#rb Bob.Tellez
	#codereview Bob.Tellez, Ben.Zeigler

Change 2779398 on 2015/11/24 by Mark.Satterthwaite

	Switch the default graphics API on Mac back to OpenGL, but allow Metal to run with -metal (or -metalsm5 for experimental SM5 support).
2016-01-08 19:10:43 -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
Marc Audy
e5bb9b4d0d Integrate all non-branch Engine/Source changes from //depot/UE4-Orion to //depot/UE4
#lockdown Ben.Marsh
#platformnotify Josh.Adams

[CL 2718236 by Marc Audy in Main branch]
2015-10-06 15:59:09 -04:00
Andrew Rodham
c3306d65af Added ability to specify units on UProperty types through a Units= meta tag
Added ability to adaptively change display units to a more appropriate range on numerical property editors. This behaviour can be disabled with a AllowUnitRangeAdaption=False meta tag.
Spin boxes now accept a numeric type interface which allows customization of numeric handling.

[CL 2398620 by Andrew Rodham in Main branch]
2015-01-06 07:29:48 -05: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
adeaa8b5d5 UMG now uses the Roboto font asset by default
[CL 2342273 by Jamie Dale in Main branch]
2014-10-28 10:12:16 -04: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
Nick Darnell
5ffd080963 UMG - Using displayname to clean up the name of several basic widgets. Moving several less common widgets into Input.
[CL 2328854 by Nick Darnell in Main branch]
2014-10-14 14:02:56 -04:00
Jaroslaw Palczynski
7c41927cf4 Rename FPostConstructInitializeProperties to something simpler
Changed it with FObjectInitializer.

UECORE-7

[CL 2328384 by Jaroslaw Palczynski in Main branch]
2014-10-14 10:29:11 -04:00
Nick Darnell
f12afd3836 UMG - Modal has been removed from AddToViewport now that the PlayerController controls it with SetInputMode. Updating all widgets to better handle destruction and cleanup of slate resources. Fixing an issue specifically with STextBlock accessing style information on Tick, which just after a Blueprint compiled can be removed. UTextBlock's now forcefully clear the style of widgets before being destroyed just in case they're still held onto someone that's presenting them for an extra frame.
[CL 2305861 by Nick Darnell in Main branch]
2014-09-22 15:09:37 -04:00
Nick Darnell
60e9e32b30 UMG - Fixing a bug in the spin box that was preventing the value from being properly clamped using the users settings.
[CL 2299776 by Nick Darnell in Main branch]
2014-09-16 14:01:13 -04:00
Nick Darnell
cf057b22e2 UMG - Upgrading several more widgets to use the new mechanism for styling. Making a few things advanced/not.
[CL 2298363 by Nick Darnell in Main branch]
2014-09-15 13:17:20 -04:00
Dan Hertzka
7337a9f929 Updated UMG to consistently use the term "Palette"
[CL 2298211 by Dan Hertzka in Main branch]
2014-09-15 11:21:09 -04:00
Dan Hertzka
877cf795da - Fixed const-ness to make functions visible w/ "context sensitive" enabled for some UMG widgets
[CL 2286797 by Dan Hertzka in Main branch]
2014-09-05 17:50:06 -04:00
Dan Hertzka
ebd02f3441 -Moved all widget toolbox categories from metadata to virtual UWidget::GetToolboxCategory()
[CL 2283123 by Dan Hertzka in Main branch]
2014-09-03 12:32:27 -04:00
Gareth Martin
5af13e4958 Fix TOptional so it calls the constructor and destructor of the optional type at the correct times.
Added Emplace() and Reset() to TOptional.
Added checkSlow() that you aren't calling GetValue() on a TOptional that's not set, and fix something that was.

[CL 2280466 by Gareth Martin in Main branch]
2014-09-01 10:19:17 -04:00
Dan Hertzka
2d593459c7 - Added UMG SpinBox widget
- Added SpinBoxStyle uobject wrapper

[CL 2274259 by Dan Hertzka in Main branch]
2014-08-27 14:11:49 -04:00