Skip to content

Latest commit

 

History

History
60 lines (42 loc) · 1.45 KB

c++-data-type-snippets.md

File metadata and controls

60 lines (42 loc) · 1.45 KB
description
This page contains several code snippets for quickly creating C++ data types that can be used with Blueprints. Use this as reference or as a copy + paste resource as needed.

C++ Data Type Snippets

Interfaces

For more information about interfaces in Unreal, check out this wiki article.

  • You need to define two classes: U<Name> and I<Name>. The second class is what your C++ code will extend to implement the interface.
UINTERFACE(BlueprintType)
class MYPROJECT_API UExample : public UInterface
{
  GENERATED_BODY()
};

class MYPROJECT_API IExample
{
  GENERATED_BODY()

public:

  UFUNCTION(BlueprintNativeEvent, BlueprintCallable)
  bool NativeEventExampleMethod();

  UFUNCTION(BlueprintImplementableEvent, BlueprintCallable)
  bool BlueprintEventExampleMethod();

};

Structs

For more information about structs in Unreal, check out this wiki article.

  • To access your struct from Blueprint, make sure to add the BlueprintType keyword to the USTRUCT macro.
  • Structs must have a default constructor.
  • It's Unreal coding standard to prefix your structs with a capital F.
  • You cannot use the UFUNCTION macro with methods on structs.
USTRUCT(BlueprintType)
struct MYPROJECT_API FExample
{
    GENERATED_BODY()
    
public:

    UPROPERTY(BlueprintReadOnly)
    int32 SomeValue;

};