Commit Graph

18 Commits

Author SHA1 Message Date
Ryan Vance
7c51ff94af Merging //UE4/Dev-Main to Dev-VR (//UE4/Dev-VR)
CL 1 of 8
#rb integration

[CL 4748712 by Ryan Vance in Dev-VR branch]
2019-01-17 18:54:05 -05:00
Ben Marsh
13d012685f Merging copyright update from 4.19 branch.
#rb none
#rnx
#jira

[CL 3818977 by Ben Marsh in Staging-4.19 branch]
2018-01-02 15:30:26 -05:00
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
f868d10725 Build fixes
#rb none
#lockdown Nick.Penwarden

[CL 3209554 by Ben Marsh in Main branch]
2016-11-23 19:55:41 -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
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
Jaroslaw Palczynski
9703d22f63 Major HotReload fix.
[CL 2710850 by Jaroslaw Palczynski in Main branch]
2015-09-30 05:26:51 -04:00
Jaroslaw Palczynski
c0ec175019 UE-5946: Cannot compile/save BP after hot reload
[CL 2627395 by Jaroslaw Palczynski in Main branch]
2015-07-21 10:33:15 -04:00
Jaroslaw Palczynski
029c933d47 UE-18307: Hot reloading with a plugin in the project prevents the project from being able to save.
#codereview Robert.Manuszewski

[CL 2618000 by Jaroslaw Palczynski in Main branch]
2015-07-13 07:30:06 -04:00
Jaroslaw Palczynski
f065239148 UE-15366: Hot-reload crashes if you try to change and reload a default subobject's class.
#codereview Robert.Manuszewski, Maciej.Mroz, Ben.Zeigler

[CL 2553253 by Jaroslaw Palczynski in Main branch]
2015-05-15 14:07:44 -04:00
Richard TalbotWatkin
843693898d Fixed issue in which the root component of an actor can be lost after hot reload if its class has changed.
#jira UE-11645 - Changing UPROPERTY() settings causes detail components to vanish in editor
#reviewedby Phillip.Kavan

[CL 2514339 by Richard TalbotWatkin in Main branch]
2015-04-16 11:43:50 -04:00
Maciej Mroz
9f4d26d152 UE-4871 Live: Crash when opening a blueprint who's component was edited in VS
Hot Reload reinstancer replaces old uclass.

#codereview Robert.Manuszewski, Nick.Whiting

[CL 2483400 by Maciej Mroz in Main branch]
2015-03-18 14:55:09 -04:00
Maciej Mroz
2e71ac300c UE-8677 Adding a protected component to a class and performing a hot reload can crash the Editor if a Blueprint already exists that is derived from that class
Overriden Archetype for old CDO while hot reloading.

#codereview Robert.Manuszewski

[CL 2472887 by Maciej Mroz in Main branch]
2015-03-09 15:41:53 -04:00
Robert Manuszewski
19ede68e7b Fixing hot-reload crash
#codereview Maciej.Mroz

[CL 2458548 by Robert Manuszewski in Main branch]
2015-02-24 11:28:59 -05:00
Robert Manuszewski
37d4f02451 Fixing hot-reload not updating values on DSO's properties.
UE-8067

[CL 2416765 by Robert Manuszewski in Main branch]
2015-01-23 08:34:49 -05:00
Robert Manuszewski
cb091bcd80 Hot-Reload improvements:
- CDO property values that have changed after hot-reload will now be propagated to the existing instances
- Adding code to a non-code project will no longer require restarting the editor to be able to work with new code (the new module will automatically be compiled and loaded)

[CL 2385307 by Robert Manuszewski in Main branch]
2014-12-11 06:03:58 -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
Robert Manuszewski
0de4660aee Hot-reload: all CDOs will now get re-constructed after hot-reload. If a CDO has changed, the class will be re-instanced.
#change Moved hot-reload-only code from FBlueprintCompileReinstancer to FHotReloadClassReinstancer
#change It's not possible to derive classes from FBlueprintCompileReinstancer
#change Added code to handle re-creating CDOs after hot-reload even if the class hasn't changed.

[CL 2300696 by Robert Manuszewski in Main branch]
2014-09-17 04:34:40 -04:00