Commit Graph

94 Commits

Author SHA1 Message Date
Andrew Rodham
8ff0d8b98b Added config migration path for newer versions of the engine.
Newly installed versions of the engine will now attempt to copy the project-agnostic config settings from a previous engine installation. This happens by way of a versioned manifest that copies old versions when the manifest does not exist, or is a different version. This code path is benign for non-installed versions of the engine (or FPaths::ShouldSaveToUserDir() is false).

EditorGameAgnosticSettings and EditorUserSettings ini paths have been renamed to EditorSettings and EditorPerProjectUserSettings respectively to better convey their purpose. In general, most settings should be saved in EditorSettings (project-agnostic) so that they apply regardless of which project is open. We have some way to go migrating existing settings for this to be the case, however.

Some previously per-project configuration files are now project-agnostic (such as Editor.ini, EditorKeyBindings.ini, and EditorLayout.ini)

GEditor->Access...Settings and GEditor->Get...Settings have been removed in favor of direct access of the CDO through GetMutableDefault<> and GetDefault<> respectively. Global config ini filenames that are not set up are now neither loaded nor saved on build machines, to handle the problem of indeterminate state more generically.

This addresses UETOOL-270 (Most editor preferences should be project-agnostic)

[CL 2517558 by Andrew Rodham in Main branch]
2015-04-20 10:12:55 -04:00
Richard TalbotWatkin
e0585d6a98 Added new constructor to FRootWindowLocation taking just a window size, and added new public method to determine the best screen location based on the window size and the current display metrics.
Made the Project Browser window a bit higher so it's clear that there's description text below the template image.
#jira UE-9085 - new project browser window clipping

[CL 2511581 by Richard TalbotWatkin in Main branch]
2015-04-14 09:07:48 -04:00
Ben Marsh
3059283e21 Add a better dialog for whenever we need to output the log from an external process, and use it to display errors when GenerateProjectFiles fails.
[CL 2506838 by Ben Marsh in Main branch]
2015-04-09 11:11:48 -04:00
James Moran
ecb7803af1 Adding Http chunk install options to Editor Packaging menu.
Adding Http chunk installer sync mode and offline mode.

[CL 2506610 by James Moran in Main branch]
2015-04-09 05:52:05 -04:00
Robert Manuszewski
8fe5db30e3 Merging UE4-Streaming to UE4
- Linkers are no longer UObjects. Renamed ULinker, ULinkerLoad and ULinkerSave to FLinker, FLinkerLoad, FLinkerSave respectively
- Linkers are now associated with their UPackages
- Linker version is now stored in UPackages
- Async loading is now performed on a separate thread (if platform supports it and only in cooked builds), with the exception of PostLoad which is still done on the game thread
- Added UObject::IsPostLoadThreadSafe() function to determine if PostLoad is thread safe and can be executed on the async loading thread (defaults to false)
- UObject creation is now thread safe and can be performed on any thread
- Move many of the linker/UObject globals into FUObjectThreadContext (TLS)
- GetAsyncLoadPercentage() now takes PostLoad into account
- More async loading stats
- Added AtomicallySetFlags/ClearFlags to UObject
- Made FModuleManager thread safe.
- Added FGCScopeGuard as means of preventing GC from executing from non-game thread
- It's possible to disable async loading thread through ini settings.
- Cancelling async loading will now also trigger GC
- Implemented a basic version of async streaming priorities.

Change 2410813 by Mikolaj Sieluzycki:
	Change Sleep in while loop to ConditionalSleep in FMultiReaderSingleWriterGT
Change 2410734 by Mikolaj Sieluzycki:
	Make FModuleManager thread safe.
Change 2399879 by Mikolaj Sieluzycki:
	Basic version of async streaming priorities.
Change 2410707 by Mikolaj Sieluzycki:
	Implement conditional and no stat versions of sleep.
Change 2371939 by Robert Manuszewski:
	Async Loading Improvements: adding more stats (accumulators)
Change 2372403 by Robert Manuszewski:
	Fixing compile errors when STATs are not enabled
Change 2371526 by Robert Manuszewski:
	AsyncLoading Improvements (WIP)
Change 2407198 by Robert Manuszewski:
	Re-implementing delegate fixes for Async Loading
Change 2407425 by Robert Manuszewski:
	Re-implementing cancelling async loading in the async loading branch.
Change 2484362 by Robert Manuszewski:
	Making it possible to disable async loading thread through ini settings.
Change 2484744 by Robert Manuszewski:
	Minimizing locks in GC and other threads when handling UObjects
Change 2480190 by Robert Manuszewski:
	Fixing infinite stall after canceling async loading in non-cooked builds
Change 2484268 by Robert Manuszewski:
	Fixing crash when allocating permanent object pool.
Change 2489761 by Robert Manuszewski:
	Fixing BulkData using linker archive on the main thread even if the linker was created on the async loading thread.
Change 2493624 by Robert Manuszewski:
	Cancelling async loading will now also trigger GC
Change 2487881 by Robert Manuszewski:
	Making ShaderIdMap operations thread safe.
Change 2488067 by Robert Manuszewski:
	Fixing GetAsyncLoadPercentage. It will now also respect PostLoad.
Change 2458640 by Robert Manuszewski:
	Fixing crash in PIE
Change 2458825 by Robert Manuszewski:
	Fixing a few crashes when streaming and the package is missing.
Change 2476935 by Robert Manuszewski:
	Fixing crash while async loading ANavigationData
Change 2477361 by Robert Manuszewski:
	Fixing crashes in cooked game
Change 2480095 by Robert Manuszewski:
	Making FUObjectArray more thread safe
Change 2475443 by Robert Manuszewski:
	Re-enabling single-threaded async loading path for the editor and platforms that don't support multithreading.
Change 2475458 by Robert Manuszewski:
	Making sure bulk data is only loaded on a separate thread if it's not being loaded on the async loading thread.
Change 2476661 by Robert Manuszewski:
	Fixing FlushAsyncLoading not flushing everything
Change 2401089 by Jaroslaw Surowiec:
	Core - Added AtomicallySetFlags/ClearFlags to UObject, added a comment to ThisThreadAtomicallyClearedRFUnreachable

[CL 2498249 by Robert Manuszewski in Main branch]
2015-04-01 03:03:18 -04:00
Marc Audy
a425eba9ed Unify Slate's FInputGesture and Engine's FInputChord as FInputChord defined in Slate
[CL 2481648 by Marc Audy in Main branch]
2015-03-17 11:36:28 -04:00
Peter Sauerbrei
498f7cd482 fix for Plugins not being found when -nocompile is provided
fix for generating Target.cs when -nocodeproject is provided (removed -nocodeproject as it is no longer needed due to other fixes)
default plugins no longer cause a target file to be generated
#codereview ankit.khare, josh.adams, daniel.lamb

[CL 2473705 by Peter Sauerbrei in Main branch]
2015-03-10 09:50:47 -04:00
Peter Sauerbrei
89016fa52e found another place where we weren't checking for the ManifestNotFound validation error
#ios

[CL 2466832 by Peter Sauerbrei in Main branch]
2015-03-02 15:57:43 -05:00
Richard TalbotWatkin
47d421e075 Added option to specify whether a save dialog can be declined as opposed to cancelled.
Some dialogs, e.g. from save menu actions, don't need the two options.
#jira UE-10400 - Clicking on Save All brings up same window as when closing the editor

[CL 2463740 by Richard TalbotWatkin in Main branch]
2015-02-27 04:17:41 -05:00
Jamie Dale
22010f5259 Made the context menu naming for adding new C++ classes consistent
UE-9418 - Unify description for adding C++ Class to project

[CL 2450363 by Jamie Dale in Main branch]
2015-02-18 12:30:56 -05:00
Matthew Griffin
4b5132f7b2 [INTEGRATE] Change 2449494 by Ben.Marsh@Ben.Marsh_T3245_Clean on 2015/02/17 19:56:33
Add a separate option in the packaging settings for whether to include debug files, and let it default to off. PDBs in packaged games aren't usually necessary, and they bloat the packaged game a lot. Also move the Full Rebuild setting out of the advanced section so people can see it. UE-9983.

[CL 2450052 by Matthew Griffin in Main branch]
2015-02-18 09:21:55 -05:00
Matthew Griffin
1d2b8bfafb [INTEGRATE] Change 2449459 by Ben.Marsh@Ben.Marsh_T3245_Clean on 2015/02/17 19:18:52
Don't stage PDBs if packaging is for distribution. (UE-9983)

	#codereview Josh.Adams

[CL 2450045 by Matthew Griffin in Main branch]
2015-02-18 09:20:16 -05:00
Daniel Lamb
627b893cfc Added support for compression in to project launcher and packaging settings in the editor.
[CL 2445290 by Daniel Lamb in Main branch]
2015-02-13 15:35:16 -05:00
Peter Sauerbrei
36a46599b0 fix for failure to cook from File|Cook
UE-9786

[CL 2445279 by Peter Sauerbrei in Main branch]
2015-02-13 15:31:12 -05:00
Peter Sauerbrei
9a51150523 fix for UAT change which requires -platform= instead of -<platform>
UE-9448

[CL 2438445 by Peter Sauerbrei in Main branch]
2015-02-09 13:43:27 -05:00
Matthew Griffin
e6a8ef5559 [INTEGRATE] Change 2426504 by Ben.Marsh@Ben.Marsh_T3245_Clean on 2015/01/30 17:34:30
Check for a compiler when trying to package a code project on a host platform.

[CL 2435183 by Matthew Griffin in Main branch]
2015-02-06 06:43:45 -05:00
Terence Burns
bd442a63ef Speed up packaging steps by removing some usused code that was recursively searching for source.
[CL 2433866 by Terence Burns in Main branch]
2015-02-05 12:59:07 -05:00
Jaroslaw Palczynski
ad6b17577e UE-7755: UBT reporting VS2012 as an unsupported compiler even when UAT was passed -NoCompile
There were two problems with this. One, I had to suppress registering build platforms in UBT if the project has no code. To achieve this I added new flag -nocodeproject and I'm passing it down from the editor to UAT.

The second one emerged after fixing previous one. The Editor was adding -build flag to the UAT if it found any of the VS 2012 or 2013. -build flag is making UAT to try to build, which fails as it is not supported on VS 2012-only system. During the discussion with platform team we came up with the solution to not check for VS 2012 in editor, as we only support it for XDK development, which requires both VSes on the system (2012 and 2013). Hence flag -build should be appended to the UAT command line if and only if there is VS2013 on the system.

[CL 2431415 by Jaroslaw Palczynski in Main branch]
2015-02-04 04:24:32 -05:00
Daniel Lamb
073035bcfc Fix compilation error from cl 2430466
[CL 2430652 by Daniel Lamb in Main branch]
2015-02-03 17:32:30 -05:00
Daniel Lamb
d3288ce4ff Added support for cook all and cook maps only from packaging settings.
Added list of maps to cook for the packaging settings.
#codereview Peter.Sauerbrei

[CL 2430466 by Daniel Lamb in Main branch]
2015-02-03 16:06:53 -05:00
Terence Burns
6f98decbcd UE-8433
Added an error code for missing ue4game binaries when packaging a non code project.
Added a check in main frame actions to determine whether we display a dialog with the error message in it.

Fix for incorrect IOS stub path being logged
Fix for incorrect Android apk path being generated for non ue4game renames in ::GetFinalApkName

[CL 2427458 by Terence Burns in Main branch]
2015-02-01 12:33:30 -05:00
Saul Abreu
ede61945bf Added the experimental Localization Dashboard UI.
[CL 2421013 by Saul Abreu in Main branch]
2015-01-27 16:31:40 -05:00
Ben Marsh
73709d04c2 [INTEGRATE] Change 2417361 by Dan.Hertzka@Dan.Hertzka_T4682_4010 on 2015/01/23 17:29:38
"Add code to project" should no longer be greyed out when the user doesn't have an available compiler

[CL 2419669 by Ben Marsh in Main branch]
2015-01-26 20:00:14 -05:00
Peter Sauerbrei
b990d427dd make it so the game executable is built even for content-only projects if from GitHub or P4, source code is found to be present, and there is a compiler
UE-7459
#uat

[CL 2406212 by Peter Sauerbrei in Main branch]
2015-01-14 14:13:00 -05:00
Richard TalbotWatkin
045ca38692 Moved Source Control actions button into level toolbar.
#jira UE-1512 - NUX: Move Source Control button somewhere more discoverable

[CL 2405840 by Richard TalbotWatkin in Main branch]
2015-01-14 06:59:46 -05:00