
폰(Pawn)에 빙의하기 언리얼의 기본 설정으로 아무것도 지정되지 않은 상태에서 플레이를 누르면 빈 공간을 자유롭게 돌아다닐 수 있다. 이는 우리가 원하는 것이 아니며, 우리가 만든 탱크에 빙의해야 한다. 이를 위해 해당 탱크를 누르고, 플레이어 자동 빙의 기능을 사용하게 된다. 플레이어가 0~7까지 존재하는데, 플레이어 여러명이 같은 컴퓨터를 사용할 때 의미있는 것이다. 우리는 1명이서 하기 때문에 무조건 Player 0을 사용하게 된다. 이제 실행을 해보면 이제 우리가 세팅했던 카메라 각도로 탱크를 바라보게 된다.

하위 C++ 클래스 생성하기 탱크와 터렛은 베이스폰을 기준으로 기본적인 기능을 상속받지만, 둘의 구체적인 기능은 조금씩 다르다. 대표적인 것이 터렛은 움직일 필요가 없고, 탱크는 움직여야 한다. 따라서 기본 베이스폰 클래스를 기준으로 하위 C++ 클래스를 생성하여 구체적인 기능을 기술해줄 필요가 있다. 탱크는 추가적으로 탱크를 포커스하기 위해 카메라 컴포넌트와 스프링 암 컴포넌트가 필요하다. 스프링 암 컴포넌트는 카메라와 탱크를 이어주는 역할을 한다. 두 컴포넌트를 추가해주면 카메라의 시선으로 탱크를 보는 것이 가능하다. 이제 Tank 클래스에서 두 컴포넌트들을 선언해주자. 처음에는 생성자가 없는데, CreateDefaultSubobject 함수 사용을 위해 생성자를 만들어주어야 한다. 이제 컴파일을 하..

컴포넌트 노출 본격적인 컴포넌트 노출에 앞서서, 추가로 알아야할 내용이 있다. 바로 UPROPERTY() 지정자중에서 이벤트 그래프와 관련된 것들은 private로 선언이 불가능하다. 우리가 기존해 선언했던 컴포넌트들은 private이므로, 사용이 불가능하게 되는 것이다. 이를 위해서 추가로 작성해야 하는 내용이 있다. 위 문구를 적으면 C++에서는 여전히 private지만, 언리얼 이벤트 그래프에서는 접근이 가능하게 된다. 이를 토대로 컴포넌트들을 노출시켜주자. 어디에서나 보일 수 있고, 블루프린트에서 읽는 것이 가능하며, 카테고리는 컴포넌트로, private지만 블루프린트에서 사용가능하도록 해주었다. 이제 블루프린트에서 해당 컴포넌트들에 대한 디테일 패널이 활성화된다. 우선 스태틱 메시 컴포넌트에 메..
문제링크 : https://www.acmicpc.net/problem/5635 5635번: 생일 어떤 반에 있는 학생들의 생일이 주어졌을 때, 가장 나이가 적은 사람과 가장 많은 사람을 구하는 프로그램을 작성하시오. www.acmicpc.net #include using namespace std; typedef long long ll; typedef pair pii; const int MAX = INT_MAX; int N; struct info { string name; int day, month, year; }; bool cmp(struct info a, struct info b) { if (a.year < b.year) return 1; //생일이 빠른 순 else if (a.year == b.yea..