2023.11.27 오늘의 기록 Simgather 개인과제

2023. 11. 27. 19:27카테고리 없음

1. public class PlayerInputController : TopDownCharacterController 클래스 상속을 받아온다.

2. normalized 대각선 방향으로 이동시 동일한 길이만큼 이동을 하기 위해 사용

3. private void FixedUpdate() 물리적인 처리를 위해 만든다. Update 호출보다 느리게 적용된다.

4. MonoBehaviour를 상속받은 클래스를 작성합니다. 이 클래스는 유니티의 게임 오브젝트와 연결된 스크립트로 동작합니다.

 

  1. Awake: 게임 오브젝트가 생성될 때 호출되는 메서드입니다. 주로 초기화 작업이 수행됩니다.
  2. Start: 게임 오브젝트가 활성화되어 게임 루프가 시작될 때 호출되는 메서드입니다. 초기 설정 및 시작 작업을 수행합니다.
  3. Update: 매 프레임마다 호출되는 메서드로, 게임 로직의 주요 업데이트가 이루어집니다.
  4. FixedUpdate: 물리 엔진 업데이트 시 호출되는 메서드입니다. 물리적인 시뮬레이션에 관련된 작업을 처리할 때 사용됩니다.
  5. LateUpdate: Update 메서드 호출 이후에 호출되는 메서드입니다. 다른 오브젝트의 업데이트가 완료된 후에 작업을 수행하는 데 유용합니다.
  6. OnEnable: 게임 오브젝트가 활성화될 때 호출되는 메서드입니다.
  7. OnDisable: 게임 오브젝트가 비활성화될 때 호출되는 메서드입니다.
  8. OnDestroy: 게임 오브젝트가 파괴될 때 호출되는 메서드입니다. 자원 정리 및 해제 작업이 수행됩니다.
  • 기본 컴포넌트 예시
    1. Transform: 게임 오브젝트의 위치, 회전, 크기 등을 조정하는 데 사용됩니다.
    2. Rigidbody: 물리적인 효과를 게임 오브젝트에 적용할 수 있게 해줍니다.
    3. Collider: 충돌 감지를 처리하기 위해 사용되는 컴포넌트입니다.
    4. SpriteRenderer: 2D 그래픽을 표시하는 데 사용됩니다.
    5. AudioSource: 사운드를 재생하기 위해 사용되는 컴포넌트입니다.
    6. 사용자가 필요에 따라 컴포넌트를 직접 작성하고 추가할 수도 있습니다. 이를 통해 게임의 특정한 동작이나 기능을 개발자가 원하는 대로 커스터마이즈

메인카메라가 지정 좌표를 따라다니게 하는 방법

public class MainCamera_Action : MonoBehaviour
{
    public GameObject Target;               // 카메라가 따라다닐 타겟

    public float offsetX = 0.0f;            // 카메라의 x좌표
    public float offsetY = 10.0f;           // 카메라의 y좌표
    public float offsetZ = -10.0f;          // 카메라의 z좌표

    public float CameraSpeed = 10.0f;       // 카메라의 속도
    Vector3 TargetPos;                      // 타겟의 위치

    // Update is called once per frame
    void FixedUpdate()
    {
        // 타겟의 x, y, z 좌표에 카메라의 좌표를 더하여 카메라의 위치를 결정
        TargetPos = new Vector3(
            Target.transform.position.x + offsetX,
            Target.transform.position.y + offsetY,
            Target.transform.position.z + offsetZ
            );

        // 카메라의 움직임을 부드럽게 하는 함수(Lerp)
        transform.position = Vector3.Lerp(transform.position, TargetPos, Time.deltaTime * CameraSpeed);
    }
}

출처: https://mayquartet.tistory.com/48 [MayQing Study:티스토리]

 

offset 좌표를 적절히 조절한다.