gpt4 book ai didi

c++ - 在虚幻引擎C++中设置计时器

转载 作者:行者123 更新时间:2023-12-02 10:08:39 24 4
gpt4 key购买 nike

我在虚幻引擎4中创建计时器时遇到问题。问题出在GetWorldTimerManager中。当我对此调用set timer时,出现E0070类型不完整错误。通常这意味着我没有包含一些东西

void ACubeFarmBlock::HandleClicked()
{
if (!bIsPlanted)
{
bIsPlanted = true;

// Change material
BlockMesh->SetMaterial(0, OrangeMaterial);

// Determine when to harvest
GetWorldTimerManager().SetTimer(HarvestTimerHandle, &ACubeFarmBlock::Harvest, HarvestTime,false);
}
}

header 中定义了HarvestTimerHandle。
以下是包含项列表。 MyActor.h包含定义GetWorldTimerManager的方法,因此我认为我已经包含了所有内容。值得一提的是,当我在线查看计时器功能时,发现了几个站点,在该站点中,此设置计时器方法包括在HarvestTimerHandle参数和&ACubeFormBlock::Harvest参数之间插入的this参数。包括这并不能使我的错误消失。
#include "CubeFarmBlock.h"
#include "CubeFarmBlockGrid.h"
#include "UObject/ConstructorHelpers.h"
#include "Components/StaticMeshComponent.h"
#include "Engine/StaticMesh.h"
#include "Materials/MaterialInstance.h"
#include "MyActor.h"

错误:

..\CubeFarmBlock.cpp(76): note: see reference to function template instantiation 'TFunction::TFunction(FunctorType &&)' being compiled 1> with 1> [ 1> FunctorType=void (__cdecl ACubeFarmBlock::* )(float) 1> ]

Severity Code Description Project File Line Suppression State Error (active)
E0070 incomplete type is not allowed CubeFarm ..\CubeFarmBlock.cpp 78 Severity
Code Description Project File Line Suppression State Error (active) E0070
incomplete type is not allowed CubeFarm ..\CubeFarmBlock.cpp 78

最佳答案

在头文件中,创建一个处理程序FTimerHandle InputTimeHandle;

然后在您的cpp文件中

GetWorld()-> GetTimerManager()。SetTimer(InputTimeHandle,this,&AMyPlayerController::GetInputTimer,1,true,0.5f);

您只缺少参数

关于c++ - 在虚幻引擎C++中设置计时器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44492250/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com