Unity/2D RPG

카메라 무빙 by Unity

YunSeong 2021. 7. 8. 23:18
728x90
반응형

player와 카메라의 좌표를 일대일 대응시킨다면 편하겠지만 그렇게 자연스럽지 않을 것이다. 

그렇기에 나는 카메라 중심에서 어느정도 떨어졌고 더 떨어지는 방향으로 이동할 때에만

카메라와 player의 위치를 일대일 대응시켰다.

 

 

 

 

 

 

카메라의 position이 Vector3 변수인 camera.position에 player의 position이 Vector3 변수인 player.position에 저장되있고

각각의 velociry를 각각의 .velocity에 저장되있다고 하면

1
2
3
4
5
if (camera.position.x - player.position.x >= 3 && player.velocity.x < 0) transform.position += new Vector3(player.position.x + 3 - camera.position.x, 00);
if (camera.position.x - player.position.x <= -3 && player.velocity.x > 0) transform.position += new Vector3(player.position.x - 3 - camera.position.x, 00);
 
if (camera.position.y - player.position.y >= 3 && player.velocity.y < 0) transform.position += new Vector3(0, player.position.y + 3 - camera.position.y, 0);
if (camera.position.y - player.position.y <= -3 && player.velocity.y > 0) transform.position += new Vector3(0, player.position.y - 3 - camera.position.y, 0);
cs

위 코드에 의해서 아래와 같은 카메라 움직임을 볼 수 있다. 

 

 

 

 

 

 

 

 

 

728x90
반응형

'Unity > 2D RPG' 카테고리의 다른 글

회복 아이템 by Unity  (0) 2021.07.18
캐릭터(슬라임) by Unity  (0) 2021.07.18
원거리 공격 by Unity  (0) 2021.07.14
근접 공격 by Unity  (0) 2021.07.07
유닛 이동 by Unity  (0) 2021.07.07