[TIL] 2026-01-08 | 언리얼 엔진 기본 구조, 빌드 문제 해결, Actor 클래스에 컴포넌트 추가

2026. 1. 8. 17:57·내배캠Unreal_TIL/UE
C++와 Unreal Engine으로 3D 게임 개발 1-1~4

 

 

C++ 텍스트 콘솔 RPG 팀플을 마치고

이제 챕터 3 시작! 

앞으로 2달을 함께 할 멤버

 

1. WHY

언리얼 엔진 C++ 개발 환경 설정 및 기본 구조 익히기

2. WHAT

- 프로젝트 폴더 구조 이해

  • vsconfig
    • Visual Studio Configuration 파일, VS 프로젝트에서 사용되는 특정 설정 및 구성 요소 설치 요구 사항 정의
  • .vs 폴더
    • 디버깅과 솔루션 설정에 관련된 파일 저장
  • Binaries 폴더
    • C++ 코드 빌드 시 생성되는 실행 파일 저장 (.exe, .dll 등)
    • 폴더 삭제 > 재 빌드 시 다시 생성 > 시간 ↑
  • Config 폴더
    • .ini 파일(게임 플레이, 렌더링, 입력 등의 설정)
  • Content 폴더
    • 언리얼 에디터의 Content Browser와 연결
  • DerivedDataCache 폴더 (삭제 O)
    • 에셋, 쉐이더 등 빠른 처리를 위한 캐시 파일
  • Intermediate 폴더 (삭제 O)
    • 임시 파일 및 빌드 중간 결과물 저장
    • 빌드 문제 발생 > 폴더 삭제 후 재 빌드
  • Saved 폴더 (삭제 O)
    • 자동 저장 파일, 로그, 크래시 덤프 등
  • Source 폴더⭐ 
    • C++ 소스 코드(.cpp, .h)가 들어 있는 핵심 폴더, 실제 게임 로직을 작성하는 곳

 

- 빌드

언리얼 에디터 종료 상태 > ctrl + shift + b (빌드) > dll 파일 갱신 > F5 (디버깅)

 

- 빌드 문제 복구 하기

  1. 언리얼 에디터와 Visual Studio 종료
  2. 프로젝트 폴더에서 Intermediate, DerivedDataCache, Saved 폴더 삭제
    • 이 폴더들은 빌드 캐시 및 임시 데이터를 담고 있음.
    • 삭제 후 다시 빌드 > 새로 생성, 잘못된 캐시로 인한 오류를 해결.
  3. .uproject 파일을 우클릭 → “Generate Visual Studio project files”
    • 솔루션(.sln) 파일과 프로젝트 설정을 재생성, 누락되었거나 꼬인 구성을 복구.
  4. Visual Studio에서 클린 빌드 수행
    • 새로 생성된 솔루션 (.sln 파일)을 Visual Studio에서 열고 다음을 수행
      • Build → Clean Solution으로 기존 빌드 산출물을 정리
      • Build → Build Solution으로 프로젝트 재빌드
    • 에러가 난다면 Output 창과 Error List를 확인해 원인을 파악하고 수정.
  5. 언리얼 에디터 다시 실행
    • 에디터를 다시 실행해 코드 변경 사항이 반영되었는지 확인.
    • 여전히 문제가 해결되지 않는다면, 프로젝트 내 Saved/Logs 폴더에 있는 로그 파일 > 구체적인 에러 메시지를 확인, 엔진 버전 및 프로젝트 설정을 점검.

 

- Actor 클래스 삭제

  1. 언리얼 에디터 종료
  2. VS Solution Explorer에서 .h, .cpp 파일 우클릭 → Remove
  3. 프로젝트 폴더에서 물리적 파일 삭제
  4. VS 빌드 > 에디터 재실행

 

- C++로 Actor 클래스에 컴포넌트 추가

#include "Item.generated.h"

UCLASS()
class SPARTAPJ_API AItem : public AActor
{
	GENERATED_BODY()
	
public:	
	AItem();

protected:
	USceneComponent* SceneRoot;
	UStaticMeshComponent* StaticMeshComp;

};

 

Item.h

 

#include "Item.h"

// Sets default values
AItem::AItem()
{
    // 루트 컴포넌트 지정 ( 주로 SceneComponent )
    SceneRoot = CreateDefaultSubobject<USceneComponent>(TEXT("SceneRoot"));
    SetRootComponent(SceneRoot);

    // StaticMesh 컴포넌트 생성 및 루트에 부착
    StaticMeshComp = CreateDefaultSubobject<UStaticMeshComponent>(TEXT("StaticMesh"));
    StaticMeshComp->SetupAttachment(SceneRoot);

    // StaticMesh와 Material 에셋 로드 및 설정
    static ConstructorHelpers::FObjectFinder<UStaticMesh> MeshAsset(TEXT("/Game/Resources/Props/SM_Potion_A.SM_Potion_A"));
    if (MeshAsset.Succeeded()) 
    {
        StaticMeshComp->SetStaticMesh(MeshAsset.Object);
    }
    static ConstructorHelpers::FObjectFinder<UMaterial> MatAsset(TEXT("/Game/Resources/Materials/M_Coin_B.M_Coin_B"));
    if (MatAsset.Succeeded())
    {
        StaticMeshComp->SetMaterial(0, MatAsset.Object);
    }
}

Item.cpp

 


(+) 단축키

  • ctrl + k + o : .h ↔ .cpp 전환
  • ctrl + F4 : 창 닫기
  • F12 : 정의로 이동
  • ctrl + - : 정의 back

JetBrains ToolBox - Rider

'내배캠Unreal_TIL > UE' 카테고리의 다른 글

[TIL] 2026-01-12 | UE C++ 캐릭터 컨트롤  (0) 2026.01.12
[TIL] 2026-01-09 | C++ 문자 종류 판단, Actor 라이프 사이클, Transform, 리플렉션 시스템  (0) 2026.01.09
[TIL] 2025-12-24 | 과제 5 구현, 레벨 테스트 후기  (1) 2025.12.24
[TIL] 2025-12-22 | UE와 VS 충돌 ? 해결 및 언리얼 C++ 시작하기  (0) 2025.12.22
[UE5] 언리얼 엔진 그림자 깨질 때.. 해결, 나나이트  (0) 2025.12.08
'내배캠Unreal_TIL/UE' 카테고리의 다른 글
  • [TIL] 2026-01-12 | UE C++ 캐릭터 컨트롤
  • [TIL] 2026-01-09 | C++ 문자 종류 판단, Actor 라이프 사이클, Transform, 리플렉션 시스템
  • [TIL] 2025-12-24 | 과제 5 구현, 레벨 테스트 후기
  • [TIL] 2025-12-22 | UE와 VS 충돌 ? 해결 및 언리얼 C++ 시작하기
윤윤씨
윤윤씨
🎮 내일배움캠프 Unreal 7기
  • 윤윤씨
    컴퓨터온열맛사지
    윤윤씨
  • 전체
    오늘
    어제
    • 분류 전체보기 (62)
      • 내배캠Unreal_TIL (62)
        • C++ (23)
        • UE (31)
        • 팀프로젝트 (7)
      • etc (0)
  • 블로그 메뉴

    • 홈
    • 태그
    • 방명록
  • 링크

    • Github
    • Solved.ac
    • YouTube
  • 태그

    언리얼과제
    gas
    오토마타
    머티리얼
    코드카타
    ta
    프로그래머스
    챌린지
    스테이트머신
    디자인패턴
    STL
  • 최근 댓글

  • hELLO· Designed By정상우.v4.10.6
윤윤씨
[TIL] 2026-01-08 | 언리얼 엔진 기본 구조, 빌드 문제 해결, Actor 클래스에 컴포넌트 추가
상단으로

티스토리툴바