
임팩트 효과이제 히트한 위치에 임팩트 효과를 생성해보자.이를 위해 파티클 시스템을 위한 변수를 또 생성해주어야 한다. 이번엔 SpawnEmitterAtLocation 함수를 통해 임팩트를 히트한 위치에 소환해보자.UWorld 값과 파티클 시스템, 히트한 위치, 회전 값을 받게 된다.여기서 회전 값에 대해서만 다소 주의할 필요가 있는데, 필요한 것은 총알이 어느 방향에서 오는 가이다.따라서 발사 방향인 Rotation.Vector()에 -을 붙여준 방향을 할당하게 된다. 이후 언리얼에서 파티클을 할당하고 플레이 해보자. 히트한 위치에도 이제 파티클 이펙트가 있는 것을 볼 수 있다.

라인 트레이싱 By Channel이제 얻은 위치와 회전 을 토대로 라인트레이스를 해볼 차례이다.이를 위해 프로젝트 세팅에서 총알에 대한 트레이스 채널을 생성해주자. 트레이스 채널외에도 오브젝트 채널이 존재하는데,오브젝트 채널은 말그대로 오브젝트 자체에 채널을 달 수 있도록 해주는 것이고 트레이스 채널은 트레이스 라인에 따라 반응을 어떻게 할 지 정하게 되는 것이다. 채널을 만들고 아래 Preset을 통해 기본적인 세팅을 설정할 수 있다. 해당 타입을 더블 클릭하면 위와 같이 프로필이 나오고, 각 트레이스 타입과 오브젝트 타입에 대해 어떻게 반응할 건지 체크하는 것이 가능하다.총알 트레이스 채널을 만들 때 기본적으로 모든 것에 대해 Blocked 되도록 하였기에 여기서 몇 가지 간단하게 설정을 바꿔준다.N..
문제링크 : https://www.acmicpc.net/problem/1485 #include using namespace std;typedef long long ll;typedef pair pii;const int MAX = INT_MAX;int T, x, y;int main(){ ios_base::sync_with_stdio(0); cin.tie(0); cin >> T; while(T--) { vectorv; vectorresult; for(int i=0; i> x >> y; v.push_back({x, y}); } for(int i=0; i 모든 변의 길이가 같고(0~3) 대각선의 길이가 같음(..

플레이어 뷰포인트이번 강의에서는 플레이어의 관점에서 사물을 보는 방법을 배우게 된다.주 목적은 뷰포트의 위치와 회전이 우리가 기대하는 것과 일치하는 지 확인하여 만약 레이트레이싱을 할 때 제대로 사물을 가리키게 되는지 체크하는 것이다.이를 위해 디버그 카메라를 그려보고 해당 디버그 카메라가 어떻게 그려지는 지 체크해보자.DrawDebugCamera 함수를 통해 작성하며, 인자로는 UWorld(), 위치, 회전, 각도, 스케일, 색깔, 지속 여부를 넣어준다. 이를 컴파일하고 마우스 좌클릭을 통해 카메라가 어떻게 찍히는 지 체크해보자. 위 사진과 같이 마우스 좌클릭시 카메라의 방향이 우리가 바라보는 방향과 다른 것을 알 수 있다.따라서 우리는 플레이어의 뷰포트 값으로 적용시켜줄 필요가 있다.플레이어 뷰포인트..