기존 맵을 확장해 다른 영역을 만든다
Hierarchy - Create Empty: AreaTransitionsEW (좌/우 위치이동)
Create Empty: MoveRight - Add Component(+) Box Collider 2D
IsTrigger: 체크 (충돌 무시, 미체크 시 플레이어와의 충돌 유효, 부딪힘)
영역 컴포넌트 생성 (AreaTransirionsEW)
AreaTransitions 스크립트
플레이어가 다른 영역으로 이동하려 할 때 minPosition, maxPosition이 새로운 영역으로 바뀜
public class AreaTransitions : MonoBehaviour
{
private CameraController cam;
public Vector2 newMinPos;
public Vector2 newMaxPos;
void Start()
{
cam = Camera.main.GetComponent<CameraController>();
}
void Update()
{
}
private void OnTriggerEnter2D(Collider2D other)
{
// "Player" 태그인 오브젝트(Player)와 충돌 시
// 새로운 minPosition, maxPosition을 설정함
if(other.tag == "Player")
{
cam.minPosition = newMinPos;
cam.maxPosition = newMaxPos;
}
}
}
다른 영역으로 캠이 전환되는 위치로 이동
Position(22, 0.4)
MoveRight - Edit Collider: 충돌 지점 사각형 박스로 조정
왼쪽 영역(기존 맵)에 치우치도록 Offset값 조정 (숫자는 되도록 깔끔하게 맞춤)