언리얼엔진 3

[UE5] 게임 인스턴스와 게임 모드

언리얼은 유니티랑은 정말 다르고 지원하는 기능도 많아서 개념을 잘 이해하고 활용하는 게 정말 중요하다. 처음에 헤매던 나에게 대충 감을 잡을 수 있게 해준 별거 아니지만 꽤 도움되는 구조에 대해 정리해보려고 한다. 게임 모드 (Game Mode) 게임 모드(Game Mode)는 게임 속에서 다양한 설정을 바꿔 낄 수 있는 기본적인 세팅이라고 보면 된다. ex) - 이지 모드에서는 input을 1가지만 받아오지만, 하드 모드에서는 input을 2가지 받아온다. - 레벨 1은 캐릭터A로 플레이하지만, 레벨 2는 캐릭터B로 플레이한다. - (주로 콘솔게임에서) 메뉴 화면에서의 클릭과 플레이화면에서의 발사 input이 A키로 중복된다. 등등... 이런 부분을 일일히 if문으로 구분하는 건 말도 안되고, 따라서 ..

언리얼엔진 UE5 2023.05.30

[UE5/매크로] 딜레이 있는 for loop 만들어보기

언리얼 블루프린트에서 제공하는 for loop에서는 delay를 주면 적용이 되지 않는다. 하지만 for loop with delay라는 새로운 매크로를 직접 만들어서 라이브러리화를 할 수 있다! 매크로(Macro)란? Blueprint Macro (블루프린트 매크로) 또는 Macro (매크로)는 본질적으로 노드 그래프를 접은 것과 같습니다. 터널 노드로 지정되는 입구와 출구가 있습니다. 각 터널에는 다른 블루프린트와 그래프에서 사용될 때 매크로 노드에 보이는 실행 또는 데이터 핀이 몇 개든 있을 수 있습니다. 거의 함수와 유사하다고 보면 될 것 같다. 실행 핀을 만들어줄 수 있다는 점이 큰 차이점이다. 원하는 블루프린트에 매크로를 하나 추가해서 제목을 ForLoopWithDelay로 지어준다. 디테일 ..

언리얼엔진 UE5 2023.05.03

[UE5/CSV] 블루프린트에서 게임 데이터 관리하기 (다차원 배열 문제 해결)

언리얼 엔진은 다차원 배열을 지원하지 않는다. 여기저기 찾아봤는데... 정말로 없다. (충격) 하지만 게임 데이터를 복합적으로 저장해 주려면 이 형태가 편한 경우가 굉장히 많고, 지금 작업하고 있는 게임의 경우 다차원 배열 형태가 정말 꼭 필요해서 다른 방법을 찾다가 csv라는 걸 알게 되었다!! CSV란? CSV(comma-separated values)는 몇 가지 필드를 쉼표(,)로 구분한 텍스트 데이터 및 텍스트 파일이다. 쉽게 말해, 엑셀로 정리해두는 데이터 테이블을 프로그램이 읽을 수 있는 형태로 바꿔주는 것이다. CSV 파일 만들기 우선 엑셀 파일을 만든다. 테이블에 필요한 데이터를 저장하여 채운다. 각 카테고리의 이름은 블루프린트에서도 그대로 쓰게 될 거니까 신중히 결정해서 써야 한다. 첫 ..

언리얼엔진 UE5 2023.04.01