Commit Graph

113 Commits

Author SHA1 Message Date
Ben Marsh
49140920c3 Compile game executables for content-only projects if we're not running from a promoted or installed build.
[CL 2653497 by Ben Marsh in Main branch]
2015-08-12 16:55:01 -04:00
Ben Marsh
047fafaf98 Add a -ScriptsForProject parameter to UAT, which causes it to only compile and load scripts for a certain project. Fixes issues when only syncing source for one project, as is typical in UGS workflows. Always pass that parameter from the editor, and always compile UAT when running from a non-installed, non-promoted build.
#codereview Bob.Tellez

[CL 2638899 by Ben Marsh in Main branch]
2015-07-30 12:15:19 -04:00
Timothy Reynolds
5eaf91c514 Fixed zipping project path issue on mac. Cleaned up log messages. Display the correct OS for the process.
UE-19001, UE-19003

[CL 2629653 by Timothy Reynolds in Main branch]
2015-07-22 17:27:55 -04:00
Daniel Lamb
6880d0d54c Added experimental settings for num worker cookers when using File->Package
[CL 2625323 by Daniel Lamb in Main branch]
2015-07-18 14:12:56 -04:00
Wes Hunt
7fa290bb33 Summary: running UAT from VS is simpler and faster.
UEB-261 - Ensure that compiling AutomationTool in VS will compile all other Automation Projects
* Just set AutomationTool as your startup project and pass the command to execute.
* VS will build the script modules at build time, instead of every time at runtime.
* To make this happen, "UBT.exe -ProjectFiles" now generates a companion AutomationTool.csproj.References that make AutomationTool depend on all Automation modules.
* AutomationTool.exe defaults to not building script modules at runtime. Pass -compile if you want to dynamically build them.
* Without the .references file, AutomationTool will only build itself and you will need to pass -compile.
* RunUAT.bat still works that same, defaulting to runtime compilation and supporting -nocompile flag. It then passes -compile (or nothing) to AutomationTool.

Other
* All Automation projects target .Net 4.5. Some already were and had hard dependencies on them (Rocket and SyncGithub -> Octokit). Now that AutomationTool directly depends on them, everything had to use .Net 4.5.
* Decoupled logic for -NoCompile and -NoCompileEditor. The flags are still confusing, but -NoCompile is no longer linked to -NoCompileEditor.
* Had to leave in stub support in UAT for -NoCompile else RunUAT.bat passes it along and UAT complains that it doesn't understand it.
* Added a CommandUtils.Run option to support run command, but still output the run duration.
* Reduced the verbosity when UAT.proj is run from dozens of lines per module to a single Module -> Output line. It was looking like there were problems, but it was just msbuild spew.
#codereview:ben.marsh

[CL 2615060 by Wes Hunt in Main branch]
2015-07-09 10:15:37 -04:00
Timothy Reynolds
9cb4b611b6 Button added under File -> Package Project for zipping up the project. Allows you to choose desired location. Filters applied to zip only necessary information.
UE-17086

#codereview Matt.Kuhlenschmidt

[CL 2609763 by Timothy Reynolds in Main branch]
2015-07-02 17:08:22 -04:00
Lee Clark
5597df6bf0 Cancel playing via launcher before starting a package build
[CL 2608941 by Lee Clark in Main branch]
2015-07-02 08:50:47 -04:00
Terence Burns
7e2fdfdb9e Package project Cook and package step errors are now presented to the Message Log
UEPLAT-880

[CL 2596809 by Terence Burns in Main branch]
2015-06-23 04:44:30 -04:00
Timothy Reynolds
312809f542 Updated help button tooltips, including forums, wiki, documentation, and answer hub.
UE-16486, UE-16487

#codereview Matt.Kuhlenschmidt

[CL 2577167 by Timothy Reynolds in Main branch]
2015-06-04 12:31:03 -04:00
Terence Burns
05115ff5f4 Undoing changes in CL# 2537281.
Not compatible with users who have no source, but may have visual studio installed.

#CodeReview Mikolaj.Sieluzycki

[CL 2565055 by Terence Burns in Main branch]
2015-05-26 11:52:32 -04:00
Frank Fella
62629773a5 Prevent a crash on shutdown in windows in open gl by setting the current gl display context to null when the current device context is being released back to the system. This also required a small change to frame profiling to guard against the null context, and a change to the slate font texture which could end up processing a texture with a null context.
[CL 2553538 by Frank Fella in Main branch]
2015-05-15 17:01:47 -04:00
Frank Fella
dc1f7871da MainFrame - Add a low risk hack for 4.8 which doesn't force the window to close immediately in the choose project window to avoid a shut down crash when using opengl in windows. A proper fix is coming for 4.9.
[CL 2553283 by Frank Fella in Main branch]
2015-05-15 14:21:51 -04:00
Daniel Lamb
d61dd2a30b Cooker now checks project settings cook map list then all maps, still handles mapsinisection if provided on commandline. Stopped UAT from passing in mapsinisection=AllMaps.
[CL 2553265 by Daniel Lamb in Main branch]
2015-05-15 14:12:11 -04:00
Terence Burns
8824bbf6e5 Added the architecture to Project Params.
Specify the windows XP arch from the package project option

#ReviewedBy Ben.Marsh

[CL 2549140 by Terence Burns in Main branch]
2015-05-13 12:27:09 -04:00
Terence Burns
f6833994ad Fix for CrashReporter being a dependency when packaging windows XP.
[CL 2548624 by Terence Burns in Main branch]
2015-05-13 05:18:05 -04:00
Dmitry Rekman
9781796a59 Rocket: disable packaging for projects that need libs which aren't bundled (UE-7114).
- Rocket doesn't bundle Linux libs, making code-based projects (and projects with third-party plugins) fail during compilation.
- Updated messaging to reflect this.
- Also added a SDK check for Linux and a 'getting' started UDN page.
- Updated Linux README for 4.8.

#codereview Peter.Sauerbrei, Ben.Marsh, Jeff.Wilson

[CL 2543338 by Dmitry Rekman in Main branch]
2015-05-08 14:31:12 -04:00
Mikolaj Sieluzycki
787b236f2e Force UAT to build content-only projects as well to avoid issues with missing/outdated UE4Game binaries.
#codereview terence.burns

[CL 2537281 by Mikolaj Sieluzycki in Main branch]
2015-05-05 09:23:33 -04:00
Ben Marsh
d271530fe0 Allow using both Win32 and Win64 in Rocket builds.
[CL 2535196 by Ben Marsh in Main branch]
2015-05-03 09:12:14 -04:00
Peter Sauerbrei
ae371ac807 fixed issue with not being able to tell if a content-based project needs to be built as code within the editor
UE-11636

[CL 2533916 by Peter Sauerbrei in Main branch]
2015-05-01 14:00:34 -04:00
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