【问题标题】:UPROPOERTY variables not showing in detailsUPROPOERTY 变量未详细显示
【发布时间】:2019-09-23 14:12:56
【问题描述】:

我一直在尝试展示我在 C++ 类中创建的一些变量,然后基于它创建一个蓝图类。但是当我看到对象的详细信息或尝试在蓝图中找到这些变量时,它们并没有显示出来。

我基本上已经从 UE4 文档中复制和粘贴代码,请参见此处:https://docs.unrealengine.com/en-us/Programming/Introduction,但我没有显示变量。

// MyActor.cpp

#include "MyActor.h"

// Sets default values
AMyActor::AMyActor()
{
    //PrimaryActorTick.bCanEverTick = true;
    TotalDamage = 200.0f;
} 

// Called when the game starts or when spawned
void AMyActor::BeginPlay()
{
    Super::BeginPlay();
}

// Called every frame
void AMyActor::Tick(float DeltaTime)
{
    Super::Tick(DeltaTime);
}
// MyActor.h

#include "CoreMinimal.h"
#include "GameFramework/Actor.h"
#include "MyActor.generated.h"

UCLASS()
class MYPROJECT3_API AMyActor : public AActor
{
    GENERATED_BODY()

public: 
    UPROPERTY(EditAnywhere)
    float TotalDamage;
    // Sets default values for this actor's properties
    AMyActor();

protected:
    // Called when the game starts or when spawned
    virtual void BeginPlay() override;

public: 
    // Called every frame
    virtual void Tick(float DeltaTime) override;
};

我想从事件图表中修改这些变量。请帮我找出我做错了什么,如果您需要更多信息,我很乐意提供给您。

【问题讨论】:

    标签: unreal-engine4 unreal-blueprint


    【解决方案1】:

    使用BlueprintReadWriteBlueprintReadOnly

    UPROPERTY(EditAnywhere, BlueprintReadWrite)
    float TotalDamage;
    

    【讨论】:

    • 您好,谢谢您的回复,我试过了,但没有成功,还有什么需要注意的吗?
    • 我刚试了一下,效果很好。这可能是你的项目。检查您是否真的从 AMyActor 派生。
    • 好的。当我今晚晚些时候到家时,我会检查一下,同时这是我在检查变量是否可编辑之前所做的步骤: 1. 我创建了我的 C++ 类。然后我通过单击 UE 编辑器中的编译图标来编译项目。 2. 我转到 Actor 类并通过右键单击我选择 Create Blueprint class based... 3. 然后我转到那个新蓝图,打开它并尝试在详细信息中找到我的变量并查看所有操作蓝图。
    • 是的,看起来一切都很好。除了我制作的脚本并从中创建蓝图之外,我还缺少其他步骤吗?
    • 好吧,最后我决定创建一个新课程并从中制作蓝图,现在它可以工作了。我真的没有看到课程之间有任何区别,但我现在比你开心。
    【解决方案2】:

    这只是发生在我身上,如果你认为你的代码是正确的(在我的情况下是正确的),我觉得这也是 Juan Esteban 可能发生的事情:

    尽管重新构建项目并从文件菜单运行“刷新 Visual Studio 项目”,但项目的“热重载”在 Unreal 中“卡住”(即对项目所做的更改未反映在编辑器中)。

    所以...重新启动虚幻引擎实际上修复了它。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2018-02-03
      • 2021-07-04
      • 1970-01-01
      • 1970-01-01
      • 2021-12-29
      • 1970-01-01
      • 2016-07-05
      相关资源
      最近更新 更多