250211 TIL

2025. 2. 11. 23:42·TIL(Today I Learned)

오늘의 계획

1. 에셋 추출법 작성 완료.

2. 과제 8 시작

3. 팀프로젝트 회의 - 리소스 목록 정하기

4. 팀프로젝트 슬랙 채널 개설

 

에셋 추출 방법

  • UEViewer 실행 방법
    1. 압축 풀기
    2. umodel_materials_ue5.exe 실행
    3. 아래와 같이 설정.
      1. Path to game files : 게임이 설치된 경로
      2. Override game detection 체크
      3. Unreal engine 4 선택
      4. The First Descendant 선택
      5. Skeletal mesh, Animation, Static Mesh, Material, Texture, Lightmap, Verex mesh 체크
    4. OK 클릭
    5. AES 복호화 키 입력
    6. 대부분의 컨텐츠는 최상위에 위치한 특정 폴더에 있음.
    7. Skeletal Mesh와 애니메이션 추출 방법
      • 애니메이션을 포함시켜서 추출해야 한다.
      • Skeletal Mesh 더블 클릭
      • 영어 'o' 키를 클릭하면 Choose a package to open 창이 다시 열린다.
      • 해당 Skeletal Mesh가 사용하는 Skeleton 에셋을 찾아 우클릭 후 Open(add to loaded set)을 클릭해준다.
        • AnimSet, Retargeting, Anim 정보가 표시되는 것을 확인한다.
      • 애니메이션을 찾아 Open(add to loaded set)을 클릭한다. 아니면, 특정 폴더에 다 들어가 있다면 계층구조에서 폴더를 우클릭 하여 Open folder content (append)를 클릭해주면 한번에 여러 개의 애니메이션이 포함된다.
      • 애니메이션 확인 방법
        • [, ] 키로 애니메이션을 전환할 수 있다.
        • SPACE bar 키로 애니메이션을 재생해 볼 수 있다.
      • 다 추가했다면 상단 메뉴에서 Tools → Export current object를 클릭한다.
      • 원하는 경로, glTF 2.0, Export all weights를 설정하고 OK를 눌러준다.
      • 파일이 정상적으로 추출되었다면, 추출된 gltf 파일을 Unreal Editor의 Content Browser에 넣어준다.
      • Import Content 창이 떴다면 Import를 클릭한다. 정상적으로 Import 됐는지 Skeletal Mesh와 Skeleton, Animation을 확인한다.
    8. Material은 정상적으로 로딩이 불가능하므로 Texture를 찾아서 export 해 주는 방법밖에 없다. 우리가 하려는 게임의 경우 UE_Viewer에서 Texture가 정상적으로 표시 및 export가 되지 않으므로 FModel을 사용해야 한다.
    9. FModel의 설치 및 사용방법은 아래를 참고하면 된다.

과제 8 시작

필수과제 1번은 멀티 웨이브 구조 구현, 2번은 HUD & 메뉴 UI 리뉴얼이다.

 

필수과제 1번을 현재 수행 중이며

 

기본적으로 Playable Character를 구현하고 멀티 웨이브 구조를 만들겸 Playable Character를 만드는 복습겸해서

 

TIL 작성 시점까지 Character 클래스를 CPP로 구현하고 이를 상속받는 BP 클래스를 만들었다.

ABaseCharacter::ABaseCharacter()
{
	PrimaryActorTick.bCanEverTick = false;

	SpringArm = CreateDefaultSubobject<USpringArmComponent>(TEXT("SpringArm"));
	SpringArm->SetupAttachment(RootComponent);
	SpringArm->TargetArmLength = 300.0f;
	SpringArm->bUsePawnControlRotation = true;

	Camera = CreateDefaultSubobject<UCameraComponent>(TEXT("Camera"));
	Camera->SetupAttachment(SpringArm, USpringArmComponent::SocketName);
	// 카메라는 스프링 암의 회전을 따르므로 PawnControlRotation 비활성화
	Camera->bUsePawnControlRotation = false;
}

Wave는 GameState를 이용해서 만들 것 같다. 멀티 플레이 게임을 만드는 것은 아니지만 GameState를 다룰 필요도 있기 때문에 이를 활용할 예정이다.

 

리소스 목록 정하기

  1. 플레이어 캐릭터 - XX
  2. 일반 몬스터
    1. 근거리 - XX02
    2. 원거리 - XX03
    3. 공중 - SumXXXX에서 몬스터 담당자가 택 1
  3. 보스 몬스터
    1. XXX01
  4. 무기
    1. 주무기 2개를 겹치지 않는 종류로 하나씩 담당자가 정하여 추출
    2. 권총 1개를 담당자가 택 1
    3. 특수무기를 담당자가 택 1
  5. 그래플링 도구 - XX01
  6. Prop들 - 대부분의 배치가능한 Prop은 XX/XXXXXXXXXXX 하위에 위치
  7. Font
    1. Octin college
    2. Teko
    3. Noto Sans Korean
  8. UI / NPC - 필요에 따라 추출

슬랙 채널 개설

'TIL(Today I Learned)' 카테고리의 다른 글

250214 TIL  (0) 2025.02.14
250213 TIL  (0) 2025.02.13
250210 TIL  (0) 2025.02.10
250207 TIL  (0) 2025.02.07
250206 TIL  (1) 2025.02.06
'TIL(Today I Learned)' 카테고리의 다른 글
  • 250214 TIL
  • 250213 TIL
  • 250210 TIL
  • 250207 TIL
DevJoo1120
DevJoo1120
  • DevJoo1120
    Jin's Programming
    DevJoo1120
  • 전체
    오늘
    어제
    • 분류 전체보기 (142)
      • 포트폴리오 (7)
        • Castlevania: Aria of Sorrow.. (7)
        • [UE5] KILL Everything (0)
      • C++ (0)
      • 라이브러리 (1)
      • 다이렉트X11 (0)
      • Unreal Engine (11)
        • Unreal Document (1)
        • 이것 저것 (8)
        • UI (1)
      • 자료구조 및 알고리즘 (0)
      • 책 정리 (3)
        • 코딩 테스트 합격자 되기 C++ 편 (10)
      • 코딩 테스트 (32)
        • 프로그래머스 (32)
      • 스파르타 코딩 언리얼 1기 (9)
        • 특강 (0)
        • C++와 Unreal Engine으로 3D .. (2)
      • TIL(Today I Learned) (63)
      • 영어 공부 (0)
  • 블로그 메뉴

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

  • 공지사항

  • 인기 글

  • 태그

    WINAPI
    프로그래머스
    Unreal Engine 5
    과제
    코딩테스트
    map
    Study
    정렬
    정리
    반복문
    스파르타 코딩 클럽
    팀 프로젝트
    Til
    책 정리
    배열
    코딩 테스트 합격자 되기 c++ 편
    이중 반복문
    C++
    문자열
    코딩 테스트
  • hELLO· Designed By정상우.v4.10.5
DevJoo1120
250211 TIL
상단으로

티스토리툴바