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

장태성님의 프로필 이미지
장태성

작성한 질문수

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

2강 캐릭터와 입력 시스템

섹션1-캐릭터와 입력 시스템에서 입력 관련 오류 질문 입니다.

작성

·

1.7K

0

디폴트 프로퍼티 경고 및 오류:
Error: CDO Constructor (ABCharacterPlayer): Failed to find /Script/EnhancedInput.InputMappingContext'/Game/ArenaBattle/Input/IMC_Default.IMC_Default'

Error: CDO Constructor (ABCharacterPlayer): Failed to find /Script/EnhancedInput.InputAction'/Game/ArenaBattle/Input/Actions/IA_Move.IA_Move'

Error: CDO Constructor (ABCharacterPlayer): Failed to find /Script/EnhancedInput.InputAction'/Game/ArenaBattle/Input/Actions/IA_Jump.IA_Jump'

Error: CDO Constructor (ABCharacterPlayer): Failed to find /Script/EnhancedInput.InputAction'/Game/ArenaBattle/Input/Actions/IA_Look.IA_Look'
LoginId:4a8eece345346426fe381997e0c98e22
EpicAccountId:4d91a906db6c4d6eb14f7111a7f7e943

Fatal error: [File:D:\build\++UE5\Sync\Engine\Source\Runtime\CoreUObject\Private\Templates\Casts.cpp] [Line: 10] Cast of AIController /Game/ArenaBattle/Maps/UEDPIE_0_Step3.Step3:PersistentLevel.AIController_0 to PlayerController failed

UnrealEditor_CoreUObject
UnrealEditor_ArenaBattle_patch_0!AABCharacterPlayer::BeginPlay() [C:\Users\bigda\Documents\Unreal Projects\ArenaBattle\Source\ArenaBattle\Character\ABCharacterPlayer.cpp:53]
UnrealEditor_Engine
UnrealEditor_Engine
UnrealEditor_Engine
UnrealEditor_Engine
UnrealEditor_Engine
UnrealEditor_UnrealEd
UnrealEditor_UnrealEd
UnrealEditor_UnrealEd
UnrealEditor_UnrealEd
UnrealEditor_UnrealEd
UnrealEditor_UnrealEd
UnrealEditor_UnrealEd
UnrealEditor_UnrealEd
UnrealEditor
UnrealEditor
UnrealEditor
UnrealEditor
UnrealEditor
UnrealEditor
kernel32
ntdll

play 누르면 에디터가 꺼지고 이런 에러 메세지가 뜨고,

스크린샷 2023-06-05 180803.pngArenaBattle 프로젝트를 다시 시작하면 이런 에러 메세지가 뜹니다.

// Input
	static ConstructorHelpers::FObjectFinder<UInputMappingContext> InputMappingContextRef(TEXT("/Script/EnhancedInput.InputMappingContext'/Game/ArenaBattle/Input/IMC_Default.IMC_Default'"));
	if (nullptr != InputMappingContextRef.Object)
	{
		DefaultMappingContext = InputMappingContextRef.Object;
	}

	static ConstructorHelpers::FObjectFinder<UInputAction> InputActionMoveRef(TEXT("/Script/EnhancedInput.InputAction'/Game/ArenaBattle/Input/Actions/IA_Move.IA_Move'"));
	if (nullptr != InputActionMoveRef.Object)
	{
		MoveAction = InputActionMoveRef.Object;
	}

	static ConstructorHelpers::FObjectFinder<UInputAction> InputActionJumpRef(TEXT("/Script/EnhancedInput.InputAction'/Game/ArenaBattle/Input/Actions/IA_Jump.IA_Jump'"));
	if (nullptr != InputActionJumpRef.Object)
	{
		JumpAction = InputActionJumpRef.Object;
	}

	static ConstructorHelpers::FObjectFinder<UInputAction> InputActionLookRef(TEXT("/Script/EnhancedInput.InputAction'/Game/ArenaBattle/Input/Actions/IA_Look.IA_Look'"));
	if (nullptr != InputActionLookRef.Object)
	{
		LookAction = InputActionLookRef.Object;
	}

나눠주신 소스코드를 그대로 복붙했는데도, 왜 이런 건지 감이 안오네요.

빌드 시작...
1>------ 빌드 시작: 프로젝트: ArenaBattle, 구성: Development_Editor x64 ------
1>Running UnrealBuildTool: dotnet "..\..\Engine\Binaries\DotNET\UnrealBuildTool\UnrealBuildTool.dll" ArenaBattleEditor Win64 Development -Project="C:\Users\bigda\Documents\Unreal Projects\ArenaBattle\ArenaBattle.uproject" -WaitMutex -FromMsBuild
1>Log file: C:\Users\bigda\AppData\Local\UnrealBuildTool\Log.txt
1>Unable to build while Live Coding is active. Exit the editor and game, or press Ctrl+Alt+F11 if iterating on code in the editor or game
1>C:\Program Files\Microsoft Visual Studio\2022\Community\MSBuild\Microsoft\VC\v170\Microsoft.MakeFile.Targets(44,5): error MSB3073: ""C:\Program Files\Epic Games\UE_5.1\Engine\Build\BatchFiles\Build.bat" ArenaBattleEditor Win64 Development -Project="C:\Users\bigda\Documents\Unreal Projects\ArenaBattle\ArenaBattle.uproject" -WaitMutex -FromMsBuild" 명령이 종료되었습니다(코드: 6).
1>"ArenaBattle.vcxproj" 프로젝트를 빌드했습니다. - 실패
========== 빌드: 0개 성공, 1개 실패, 0개 최신 상태, 0개 건너뜀 ==========
========== 빌드이(가) 6:03 PM에 시작되었고 01.666 초이(가) 소요됨 ==========

이건 visual studio에서 ctrl + f5 빌드 했을때, 나오는 에러 메세지 입니다. 참조를 못하는가 싶어서

https://bangp.tistory.com/36 이 링크에 나온 내용처럼 ArenaBattle 속성에 "포함검색 경로"란에 "C:\Program Files\Epic Games\UE_5.1\Engine\Intermediate\Build\Win64\UnrealEditor\Inc" 이런 경로도 추가해 봤지만 해결하지 못했습니다. 어떤 문제인지 알려주시면 감사하겠습니다.

답변 2

2

안녕하세요. 저도 같은 문제가 있어서 문제를 확인해 보았는데

혹시 37:20 부분에서 빌드 후 실행 할때 문제가 발생 되나요? (영상 처음부터 쭉 따라왔다는 가정하에)

나눠주신 소스코드는 최종 완료 버젼인 ArenaBattle로 경로가 지정되어 있지만,

TEXT("/Script/EnhancedInput.InputMappingContext'/Game/ArenaBattle/Input/IMC_Default.IMC_Default'")

영상기준에서는 아직 ArenaBattle 폴더에 Input 폴더도 만들어지지 않아서 경로 이상으로 에러를 띄운거 같습니다.(37:40 에서 Input폴더를 복사합니다)

34:16 부분에서 ThirdPerson 폴더

TEXT("/Script/EnhancedInput.InputMappingContext'/Game/ThirdPerson/Input/IMC_Default.IMC_Default'")

로 나와있습니다

저는 앞선 강의보다 작성해야하는 코드가 많고 교수님 또한, 코드를 붙어넣기 식으로 하다보니 따라가기 급급해서 복사, 붙어넣기 식으로 하다 문제가 발생했는데 문제점이 너무 유사해서 답변드립니다.

요약

1. 나눠주신 소스코드로 복사 붙여넣기 식으로 코드 작성할때

2. [37:20] 부분에서 경로 이상 에러 메시지를 띄우면

3. ArenaBattle/.. 경로가 아닌 ThirdPerson/.. 으로 변경해보세요

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

네 아무래도 타이핑하면 오래걸려, 보는 분들이 불편할 것 같아 붙여넣기 했는데, 타이핑할 걸 그랬네요. 말씀주신 부분이 맞습니다. 깃허브에 있는 소스는 최종 버전이라 34분정도에서는 ThirdPerson 주소를 사용하고, 37분부터 복사한 후에 깃허브 코드가 반영됩니다.

좋은 답변 감사합니다!~

장태성님의 프로필 이미지
장태성
질문자

감사합니다.

선생님과 Bell Studio님 덕분에 해결되었네요 ^^ㅋ

1

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

안녕하세요. 해당 런타임 에러는 지정한 경로에 애셋이 없을 때 나오는 에러입니다.

2강 진행하는 중이시면, 아래 깃허브의 파일 받으셔서 Content 폴더 아래의 ArenaBattle 폴더를 동일한 위치로 복사한 후에 진행하시면 런타임 에러는 잡힐 것으로 보여집니다.
https://github.com/ideugu/UnrealProgrammingPart2/tree/2/

컴파일 에러의 경우 에디터가 띄워져 있는 상태라면 비주얼 스튜디오에서 컴파일이 안됩니다. 에디터에서 Ctrl+Alt+F11키를 눌러 컴파일을 하시거나 에디터를 종료한 후에 비주얼 스튜디오에서 컴파일을 진행해주시면 됩니다.

 

영상수정안해주시나요?

이 에러로 몇시간을 헤메었는지 모르겠네요.
초반강의 2강인데 이런부분으로 막히는거먼 앞으로 얼마나 막힐지. .

영상 수정해주시면 좋을거같습니다

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

네 불편을 드려서 죄송합니다.

곧 자막으로 안내 문구를 추가하겠습니다.

장태성님의 프로필 이미지
장태성

작성한 질문수

질문하기