ПолучитьИмя();
Найти владельца компонента. Пример: при вставке компонента в кресло будет возвращена ссылка на кресло.
Из справочника API Unreal Engine:
UObjectBaseUtility::GetName
Синтаксис: FString GetName()
Примечания Возвращает имя этого объекта (без информации о пути)
ОК, выполните следующие действия:
1) Файл -> Новый проект -> С++ -> Базовый код -> Со стартовым содержимым
2) Внутри карты MinimalDefault выберите один стул и нажмите кнопку «Добавить компонент».
3) Выберите новый компонент C++
4) Выберите класс компонентов актера и нажмите кнопку «Далее».
5) В Visual Studio внутри NewActorComponent.cpp вставьте код ниже в функцию BeginPlay()
UNewActorComponent::UNewActorComponent()
{
PrimaryComponentTick.bCanEverTick = true;
FString ObjectName = GetOwner()->GetName();
UE_LOG(LogTemp, Warning, TEXT("ObjetctName: %s"), *Objectname);
}
6) Показать окно журнала в Unreal Engine 4 Окна журнала
7) Скомпилировать!
8) См. результаты в окне журнала logwindowresults
Ниже полный код. Оно работает! Наслаждаться!
#include "NewActorComponent.h"
#include "Runtime/Engine/Classes/GameFramework/Actor.h"
UNewActorComponent::UNewActorComponent()
{
PrimaryComponentTick.bCanEverTick = true;
}
void UNewActorComponent::BeginPlay()
{
Super::BeginPlay();
FString NameOfObject = GetOwner()->GetName();
UE_LOG(LogTemp, Warning, TEXT("Name is: %s"), *NameOfObject)
}
void UNewActorComponent::TickComponent(float DeltaTime, ELevelTick TickType, FActorComponentTickFunction* ThisTickFunction)
{
Super::TickComponent(DeltaTime, TickType, ThisTickFunction);
}
person
ProfMarcosPacheco
schedule
18.09.2017
GetOwner()
, и убедиться, что оно не равно null, прежде чем вызывать из него какие-либо методы. - person user7860670   schedule 18.09.2017