[TIL] 23 Unity 개인과제(TopDown)끝 ⭐⭐⭐

업데이트:

카테고리:

태그: , ,




개인공부, 유니티 5일차 개인과제 끝

   [o] 9시 ~ 10시 알고리즘 문제
   [o] 개인과제
   주말에 알고리즘 과제 풀어보기.







1. 싱글톤 패턴

게임의 전범위에서 동작하는 중요한기능들을 싱글톤 패턴으로 만들곤한다.
접근성. 유일성.
씬전환시 모두 파괴 -> 싱글톤 dondestroy로 파괴 x
단점 static으로 메모리를 많이 사용할 수도 있다.

private static GameManager instance = null;

    public static GameManager Instance
    {
        get 
        {
            if (instance == null)
            {
                return null;
            }
            return instance;
        }
    }
    private void Awake()
    {
        if (null == instance)
        {
            instance = this;

            DontDestroyOnLoad(this.gameObject);
        }
        else { 
            Destroy(this.gameObject);
        }
        
    }







2. 스크립트적용 오브젝트 찾기

스크립트 적용된 오브젝트 쉽게찾기 스크립트 우클릭 -> Find References In Scene

image







3. GameManager

1번째 씬에서 GameManager를 생성하고
2번째 씬에서 gamemanager에 필요한 오브젝트를 넣어주는 방식을 사용하였다.
SceneSetting이라는 오브젝트,스크립트를 만들고 awake에서 gamemanager에 접근 image

public class SceneSetting : MonoBehaviour
{
    [SerializeField] private GameObject zep;
    [SerializeField] private GameObject postit;
    // Start is called before the first frame update
    private void Awake()
    {
        GameManager.Instance.zep = zep;
        GameManager.Instance.postit = postit;
    }

}

지금상황의 개선이고 처음부터 더 좋은 방법이 있다고 하였다. 좀 더 생각해보기.







4. Scripts

image

Animator -> 애니메이션
Change -> 아이디, 캐릭터 모습변경
FirstSceneScrips -> nameScene 에 필요한 코드들 ()
MenuController.cs -> 아이디 변경, 캐릭 모습변경 메뉴 컨트롤
TimeView -> 시간 표시
SceneSetting -> 씬 이동시 GameObject에 필요한 값 전달







5. players

image players에 부모를 생성해서 player들을 관리







TopDown1







정리, 잡담

느낀점
유니티 첫 개인과제로 하나의 게임? 을 만들면서 많은 생각이 들었다.
스크립트 관리는 잘 된 건지.
이 메서드가 이 스크립트에 들어있는 게 맞는지.
게임매니저의 주 역할은 무엇인지
싱글톤? 디자인 패턴?
막히는 게 있을 때 내가 선택한 방법이 좋은 방법인지
public private, [SerializeField] 에 대한 정확한 사용하는 이유.
가장 큰 걱정은 내가 잘 하고 있는지에 대한 의심? 인 거 같다.
제출 후 개선시간에 조금씩 확인해 볼 생각이다.

잡담
하나씩 하면서 중간에 다른 방법으로 하면 좋았을 거 같다고 생각이 들때
수정했다면, 깔끔하고 빠르게 해결했을까?, 지금은 없다고 생각해서 바꾸지 못했다.
다음 프로젝트에서 이번에 새로운 방법들을 시도해 볼 생각이다.




[Unity] TIL 23


참고 : 유니티 TOP


📔

댓글남기기