【问题标题】:Unreal Engine 4, AddDynamic is not working if being called from constructor虚幻引擎 4,如果从构造函数调用 AddDynamic 将不起作用
【发布时间】:2020-11-14 22:09:46
【问题描述】:

我是一个初学者,正在尝试完成一个简单的 UE4 C++ 教程: https://www.raywenderlich.com/185-unreal-engine-4-c-tutorial#toc-anchor-001 在您将 OnActorBeginOverlap.AddDynamic(this, &ABaseCoin::OnOverlap) 添加到 ABaseCoin 构造函数以处理事件时,它只是不起作用。 OnOverlap 函数在我重叠这个演员时没有被调用( 但是,如果我将OnActorBeginOverlap.AddDynamic 放入ABaseCoin::BeginPlay,一切正常。 请帮忙,谁知道这个问题

【问题讨论】:

    标签: unreal-engine4 unrealscript


    【解决方案1】:

    现在在构造函数中使用 .AddDynamic 时会出现问题。它还可能导致蓝图损坏。

    将每个构造函数 .AddDynamic 放入 PostInitializeComponents() 或 BeginPlay()

    【讨论】:

    • 感谢您的回复! PostInitializeComponents 对我有用!
    • 它可以工作,但它会在每个第一次加载关卡/编辑器时导致错误“确保条件失败:InvocationList[ CurFunctionIndex ] != InDelegate”,但在游戏中,它可以正常工作。
    猜你喜欢
    • 2017-09-20
    • 2014-04-26
    • 1970-01-01
    • 1970-01-01
    • 2019-11-11
    • 1970-01-01
    • 1970-01-01
    • 2020-08-09
    • 2015-10-12
    相关资源
    最近更新 更多