From e60d4abe2f7049fd1920754dcfad2ff9e0531d04 Mon Sep 17 00:00:00 2001 From: Steve Streeting Date: Thu, 8 Oct 2020 15:41:43 +0100 Subject: [PATCH] Docs for ancilliary tools --- doc/Cleanup.md | 19 ++++++++++++++++++- doc/GetLatest.md | 23 ++++++++++++++++++++++- doc/RebuildLightmaps.md | 30 +++++++++++++++++++++++++++++- 3 files changed, 69 insertions(+), 3 deletions(-) diff --git a/doc/Cleanup.md b/doc/Cleanup.md index 7870119..e05798e 100644 --- a/doc/Cleanup.md +++ b/doc/Cleanup.md @@ -1,3 +1,20 @@ # Cleanup tool -TODO \ No newline at end of file +Mostly this script cleans up Hot Reload DLLs that often get left over. It used +to also call `git lfs prune` but has stopped doing that for now because +of a previous bug in Git LFS which would delete stashed LFS files. + +I don't use this script very much any more because I'm using Live Coding now. +The script also cleans up Live Coding patches but there's fewer of those. + +``` + ue4-cleanup.ps1 [[-src:]sourcefolder] [Options] + + -src : Source folder (current folder if omitted) + : (should be root of project) + -nocloseeditor : Don't close UE4 editor (this will prevent DLL cleanup) + -lfsprune : Call 'git lfs prune' to delete old LFS files as well + -dryrun : Don't perform any actual actions, just report on what you would do + -help : Print this help +``` + diff --git a/doc/GetLatest.md b/doc/GetLatest.md index 6bbbe9a..7e67e37 100644 --- a/doc/GetLatest.md +++ b/doc/GetLatest.md @@ -1,3 +1,24 @@ # Getting Latest for Artists -TODO \ No newline at end of file +We've found it useful to provide a simple script which can be run on artists' +machines to get the latest from Git, and make sure all the C++ components are +built. + +While the UE editor can sometimes do this successfully on startup as well, +it's just nicer to do it as part of the update process - the artist can then +just double-click a shortcut on their desktop and let it run while getting +coffee or something. + +The script also automatically closes the UE editor if it's open on the same +project to make sure the build is successful. + +``` + ue4-get-latest.ps1 [[-src:]sourcefolder] [Options] + + -src : Source folder (current folder if omitted) + : (should be root of project) + -nocloseeditor : Don't close UE4 editor (this will prevent DLL cleanup) + -dryrun : Don't perform any actual actions, just report on what you would do + -help : Print this help +``` + diff --git a/doc/RebuildLightmaps.md b/doc/RebuildLightmaps.md index 66572bb..6f79450 100644 --- a/doc/RebuildLightmaps.md +++ b/doc/RebuildLightmaps.md @@ -1,3 +1,31 @@ # Rebuilding Lightmaps -TODO \ No newline at end of file +This script is a more convenient alternative to calling `RunUAT RebuildLightmaps`, which +has the downside of being unnecessarily dependent on Perforce. + +This script is compatible with Git (if you're using it), and specifically copes +with Git LFS file locking. When building lighting the `.umap` needs to be locked +for writing, this script will do that if necessary. The RunUAT version fails if +you don't have Perforce even if you've already locked the file in LFS! Very silly. + +This script uses the [packaging configuration file](./Package.md) and can +automatically determine which maps to rebuild if you want, or you can +explicitly list them as arguments: + +``` + ue4-rebuild-lightmaps.ps1 [-src:sourcefolder] [-quality:(preview|medium|high|production)] [-maps Map1,Map2,Map3] [-dryrun] + + -src : Source folder (current folder if omitted) + -quality : Lightmap quality, preview/medium/high/production + : (Default: production) + -maps : List of maps to rebuild. If omitted, will derive which ones to + rebuild based on cooked maps in packageconfig.json + -dryrun : Don't perform any actual actions, just report on what you would do + -help : Print this help + +Environment Variables: + UE4INSTALL : Use a specific UE4 install. + : Default is to find one based on project version, under UE4ROOT + UE4ROOT : Parent folder of all binary UE4 installs (detects version). + : Default C:\Program Files\Epic Games +``` \ No newline at end of file