
벡터의 역방향 트랜스폼이번엔 애니메이션의 회전을 적용시킬 차례이다.이를 위해서 트랜스폼에 대한 이해도를 높힐 필요가 있다. 먼저 월드 좌표계와 로컬 좌표계가 존재하며, 월드 좌표계는 베이스가 월드의 중앙이고 로컬은 해당 액터가 중심이 된다.따라서 위치는 상대적이게 되며 월드 좌표계를 기준으로 두면 월드의 중심에서 액터가 움직인 것이고, 로컬 좌표계를 기준으로 두면 액터가 중심으로 월드의 베이스 위치가 달라지게 되는 것이다.이러한 것이 글로벌 공간과 로컬 공간 간의 트랜스폼이 된다. 우리가 필요로 하는 것은 현재 플레이어의 각도이므로 로컬 좌표계의 각도가 필요한 것이다.이는 기존의 Get Velocity 함수를 통해 얻은 속도를 이용하여 방향을 얻는 것이 가능하다.해당 속도를 통해 어떤 방향으로 가는지, ..

애니메이션을 게임플레이에 연결하기이제 블렌드 스페이스를 이용하여 만든 애니메이션을 직접 연결해볼 차례이다.이를 위해 애니메이션 블루프린트의 AnimGraph 화면으로 돌아가보자.기존의 내용은 쓸모가 없으니 전부 지우고, Asset Brower에서 블렌드 스페이스를 통해 만든 애니메이션인 BS_Locomotion을 가져올 수 있다. 이제 각도와 스피드에 대한 변수가 필요하다 이를 각각 생성하여 할당해주고, 출력 값도 연결해주자. 캐릭터의 각도와 스피드를 얻어야 하는데, 이는 해당 애니메이션 블루프린트의 Event Graph에서 가능하다.기본으로 있는 Try Get Pawn Owner 함수를 통해 캐릭터를 얻을 수 있고, Event Blueprint Update Animation 함수를 통해 Tick 함수와..
문제링크 : https://www.acmicpc.net/problem/14729 #include using namespace std;typedef long long ll;typedef pair pii;const int MAX = INT_MAX;int N;vectorv;int main(){ ios_base::sync_with_stdio(0); cin.tie(0); cin >> N; for(int i=0; i> n; v.push_back(n); } sort(v.begin(), v.end()); cout 언뜻보면 간단한 정렬문제이지만, 출력 형식을 고려해야하는 문제이다.입력받는 수가 소수점 단위이므로 double 형으로 입력을 받도록 하였다. 이후 출력하기에 앞..