这个宏怎么了?

问题描述 投票:-2回答:1

我无法弄清楚记录玩家观点的宏有什么问题。据我所知,我必须错过“包括你使用的”哈希,但我无法弄清楚它是什么。我已经尝试了所有我能想到的东西,谷歌疯了似的,可能与FRotator和Vectors的转换有关,可以在宏输出到控制台。

// Copyright Josh Marino 2017

#include "Grabber.h"
#include "PositionReport.generated.h"
#include "CoreMinimal.h"
#include "Engine/World.h"

// Sets default values for this component's properties
UGrabber::UGrabber()
{
   // Set this component to be initialized when the game starts, and to be ticked every frame.  You can turn these features
// off to improve performance if you don't need them.
PrimaryComponentTick.bCanEverTick = true;

// ...
}

// Called when the game starts
void UGrabber::BeginPlay()
{
Super::BeginPlay();

UE_LOG(LogTemp, Warning, TEXT("Grabber reporting for Duty!"))

}

// Called every frame
void UGrabber::TickComponent(float DeltaTime, ELevelTick TickType, FActorComponentTickFunction* ThisTickFunction)
{
Super::TickComponent(DeltaTime, TickType, ThisTickFunction);

// Get Player viewpoint viewpoint
FVector PlayerViewPointLocation;
FRotator PlayerViewPointRotation;
GetWorld()->GetFirstPlayerController()->GetPlayerViewPoint(
     PlayerViewPointLocation,
     PlayerViewPointRotation
);

// Log Out To Test

UE_LOG(LogTemp, Warning, TEXT("Location: %s Position: %s") *PlayerViewPointLocation.ToString(), *PlayerViewPointRotation.ToString())

// Ray-Cast out to reach distance


// See what we hit


}
c++ macros unreal-engine4
1个回答
0
投票

由于某种原因它现在有效........宏是愚蠢的

#include "Grabber.h"
#include "PositionReport.generated.h"
#include "CoreMinimal.h"
#include "Engine/World.h"


// Sets default values for this component's properties
UGrabber::UGrabber()
{
    // Set this component to be initialized when the game starts, and to be ticked every frame.  You can turn these features
    // off to improve performance if you don't need them.
    bWantsBeginPlay = true;
    PrimaryComponentTick.bCanEverTick = true;

    // ...
}


// Called when the game starts
void UGrabber::BeginPlay()
{
    Super::BeginPlay();
    UE_LOG(LogTemp, Warning, TEXT("Grabber reporting for duty!"));

}


// Called every frame
void UGrabber::TickComponent(float DeltaTime, ELevelTick TickType, FActorComponentTickFunction* ThisTickFunction)
{
    Super::TickComponent(DeltaTime, TickType, ThisTickFunction);

    // Get player view point this tick
    FVector PlayerViewPointLocation;
    FRotator PlayerViewPointRotation;
    GetWorld()->GetFirstPlayerController()->GetPlayerViewPoint(
        OUT PlayerViewPointLocation,
        OUT PlayerViewPointRotation
    );
    // TODO Log out to test
    UE_LOG(LogTemp, Warning, TEXT("Location: %s, Rotation: %s"),
        *PlayerViewPointLocation.ToString(),
        *PlayerViewPointRotation.ToString()
    )

        // Ray-cast out to reach distance

        // See what what we hit

}
© www.soinside.com 2019 - 2024. All rights reserved.