인프런 커뮤니티 질문&답변

김동현님의 프로필 이미지

작성한 질문수

이득우의 언리얼 프로그래밍 Part2 - 언리얼 게임 프레임웍의 이해

1강 언리얼 엔진 게임 제작 기초

헤더를 사용하지 않고 BeginPlay 동작 안하는 문제.

23.12.16 07:08 작성

·

478

·

수정됨

0

// Fill out your copyright notice in the Description page of Project Settings.


#include "Game/ABGameMode.h"
#include "ABGameMode.h"
//#include "Player/ABPlayerController.h"


AABGameMode::AABGameMode()
{
	UE_LOG(LogTemp, Warning, TEXT("inflearn1"));
	static ConstructorHelpers::FClassFinder<APawn> ThirdPersonClassRef(TEXT("/Game/ThirdPerson/Blueprints/BP_ThirdPersonCharacter.BP_ThirdPersonCharacter_C"));
	if (ThirdPersonClassRef.Class)
	{
		DefaultPawnClass = ThirdPersonClassRef.Class;
	}
	static ConstructorHelpers::FClassFinder<APlayerController> PlayerControllerClassRef(TEXT("/Script/ArenaBattle.ABPlayerController"));
	if (PlayerControllerClassRef.Class != nullptr)
	{
		UE_LOG(LogTemp, Warning, TEXT("PlayerControllerClassRef.Class found: %s"), *PlayerControllerClassRef.Class->GetName());
		PlayerControllerClass = PlayerControllerClassRef.Class;
	}
	else
	{
		UE_LOG(LogTemp, Error, TEXT("PlayerControllerClassRef.Class not found."));
	}
	//PlayerControllerClass = AABPlayerController::StaticClass();
}

위 코드를 입력했을 때 실행 결과는 아래와 같습니다.

제가 경로를 잘못 넣었다기에는 수업자료를 그대로 복붙도 해보았으며

/Script/CoreUObject.Class'/Script/ArenaBattle.ABPlayerController'

위 경로 또한 5초전에 레퍼런스를 복사해 온 경로입니다

답변 2

0

이득우님의 프로필 이미지
이득우
지식공유자

2023. 12. 16. 13:28

흠.. 콘텐츠 브라우저에서 해당 클래스가 보여서 레퍼런스까지 복사해왔다면 딱히 문제될 요소가 보이지는 않아보이네요.
지금까지 많은 분들이 이 강의를 들었지만 이런 문제는 처음 발생하는 것 같은데, 마지막으로는 형변환, 즉 APlayerController가 부모인지 확인하는 수 밖에요.

깃헙의 최종 프로젝트는 잘 동작하는지요?

0

김동현님의 프로필 이미지
김동현
질문자

2023. 12. 16. 07:09

헤더를 사용하는 방식으로 가면 정상적으로 작동합니다.