Search in

Sort by:

Everything Legal & Licensing

Current Space

Question Status:

All Questions With Answer With Accepted Answer

Quick results

Search help

Simple searches use one or more words. Separate the words with spaces (cat dog) to search cat,dog or both.
Separate the words with plus signs (cat +dog) to search for items that may contain cat but must contain dog.

You can further refine your search on the search results page, where you can search by keywords, author, topic. These can be combined with
each other. Examples

How can we Ship Games that use custom animation nodes?

How can we ship games that have custom animation nodes that we use in the editor in our Animation Blueprints?

Private Dependencies

I have to include Animgraph and BlueprintGraph in my private dependencies in order to get my custom animation nodes to work!

Specifically for the animgraph node

#pragma once
#include "AnimGraphNode_Base.h"
#include "AnimGraphDefinitions.h"
#include "Kismet2/BlueprintEditorUtils.h"
#include "AnimNode_VictoryTurnInPlace.h"
#include "AnimGraphNode_VictoryTurnInPlace.generated.h"
//Whole point of this is to be wrapper for node struct
// so it depends on it, and that node must compile first
// for type to be recognized
UCLASS(MinimalAPI)
class UAnimGraphNode_VictoryTurnInPlace : public UAnimGraphNode_Base
{
GENERATED_UCLASS_BODY()

But these headers depend on UnrealEd, so when I go to ship my project it cannot compile UnrealEd.

You're allowed to extend and modify the editor however you want to in order to create your game, including adding your own custom anim graph nodes. But as you indicated, you are not allowed to ship anything that depends on our editor code. Luckily, there is no need to!

You should create a new game module inside your game project that will contain only editor-specific code. For example, if your primary game module is called "MyGame", you would create another module alongside it called "MyGameEditor". This module will contain all of your editor-specific stuff for your game, such as your custom anim graph node.

Then, edit your "MyGameEditor.Target.cs" file, and make sure that your "MyGameEditor" module is listed in the "ExtraModuleNames" in the SetupBinaries() function. This means that when compiling your game as an editor DLL, your game's special editor module will be compiled too.

Because your "MyGame.Target.cs" file does not list "MyGameEditor" as a dependency, your editor features will be omitted when compiling your actual shipping game.

I also forgot to mention, after adding your "MyGameEditor" module, you should also edit your "MyGame.uproject" file and add an entry for your editor-specific module to that file, so that the engine knows about it and will load it at startup.