30 public string[]
Name {
get;
set; } = [];
67 public virtual string[]
Spec {
get;
set; } = [];
129 | Create new module in the owning project or plugin
130 | (depending on working directory)
134 | --TemplatesPath (adv.)
139 .Requires(() =>
Name)
146 (AbsolutePath) Environment.CurrentDirectory,
166 | Add C++ code to a project which doesn't have one yet.
169 | --TemplatesPath (adv.)
196 | Create a new project plugin.
199 | --TemplatesPath (adv.)
204 .Requires(() =>
Name)
209 (AbsolutePath) Environment.CurrentDirectory,
229 | Create new Unreal Actor in current directory
232 | --TemplatesPath (adv.)
237 .Requires(() =>
Name)
242 (AbsolutePath) Environment.CurrentDirectory,
262 | Create new Unreal Interface in current directory
265 | --TemplatesPath (adv.)
270 .Requires(() =>
Name)
275 (AbsolutePath) Environment.CurrentDirectory,
295 | Create new Unreal Object in current directory
298 | --TemplatesPath (adv.)
303 .Requires(() =>
Name)
308 (AbsolutePath) Environment.CurrentDirectory,
328 | Create new Unreal Struct in current directory
331 | --TemplatesPath (adv.)
336 .Requires(() =>
Name)
341 (AbsolutePath) Environment.CurrentDirectory,
361 | Create new Unreal Automation Spec in current directory
364 | --TemplatesPath (adv.)
369 .Requires(() =>
Name)
374 (AbsolutePath) Environment.CurrentDirectory,
410 | Create boilerplate module for third-party C++ libraries. Specify the kind of
411 | library with `--LibraryType Header|CMake|XRepo` The latter two will generate
412 | extra nuke targets preparing the library to be consumed by Unreal.
413 | Fetching/storing the library is up to the developer
414 | (except of course with XRepo).
416 | Use type specific targets for more comfortable CLI experience, for example
417 | nuke use-xrepo --spec tracy
419 | nuke UseLibrary --LibraryType xrepo --spec tracy
421 | This only needs to be done once, you can check the results into source control.
433 Assert.NotEmpty(
Spec);
438 Log.Information(
"Preparing library {0}", n);
442 EnvironmentInfo.WorkingDirectory,
448 Log.Information(
"Run `Prepare` or `Generate` to install new libraries.");
449 Log.Information(
"This only needs to be done once, you can check the results into source control.");
492 | Use libraries from the xrepo package manager. This target only configures
493 | another target which will eventually fetch the input libraries. To make them
494 | available to Unreal run `Prepare` or `Generate` targets.
496 | Specify the xrepo package reference and its config separated by space.
499 | nuke UseXRepo --Spec "zlib
"
500 | nuke UseXRepo --Spec "zlib 1.2.x
"
501 | nuke UseXRepo --Spec "boost regex=
true,thread=
true"
502 | nuke UseXRepo --Spec "imgui 1.91.1 freetype=
true"
504 | Or multiple libraries at once
506 | nuke UseXRepo --Spec
508 | "boost regex=
true,thread=
true"
509 | "imgui 1.91.1 freetype=
true"
512 | More about xrepo: https://xrepo.xmake.io
513 | NOTE: since Unreal uses MD runtime linkage `runtimes='MD'` config is always
514 | appended by Nuke.Unreal, and the user must not specify it.
516 | This only needs to be done once, you can check the results into source control.
524 .Requires(() =>
Spec)
534 .Requires(() =>
Spec)
544 .Requires(() =>
Spec)