팀 프로젝트가 끝나고 다음 조와 새로운 만남을 갖는 시간이다. 물론 처음 주차에는 개인 프로젝트를 특강과 함께 진행이 되기 때문에 팀 프로젝트를 하지 않지만 잘 맞는 팀원과 만났으면 좋겠다.
// 1번
if (spaceAction.bindings[0].path == "<Keyboard>/space")
{
// 바인딩 오버라이드를 적용합니다.
spaceAction.ApplyBindingOverride(0, "<Keyboard>/escape");
}
// 2번
// 기존 바인딩을 비활성화하고 새 키로 재바인딩
spaceAction.ChangeBinding(0)
.WithPath("<Keyboard>/escape");
설명: 1번의 경우에는 해당 action에 있는 bindings에 해당 키 값을 찾아서 변경을 해주는 반면에 2번의 경우에는 새 키로 바로 재바인딩을 해주는데 상황에 따라서 선택해서 사용하는 방법이 다를 것이다.
// 1번
private static T instance;
public static T Instance
{
get
{
// get instance of singleton
if (instance == null)
{
GameObject obj;
// 오브젝트에 해당 제네릭 타입을 가진 오브젝트를 찾음
obj = GameObject.Find(typeof(T).Name);
if (obj == null)
{
// 없으면 새로 만들어서 추가를 함
obj = new GameObject(typeof(T).Name);
instance = obj.AddComponent<T>();
}
else
{
// 있다면 해당 오브젝트의 제네릭 컴포넌트를 추가함
instance = obj.GetComponent<T>();
}
}
return instance;
}
}
// 2번
private static T instance;
public static T Instance
{
get
{
if (instance == null)
{
instance = (T)FindObjectOfType(typeof(T));
if (instance == null)
{
GameObject singletonObject = new GameObject();
instance = singletonObject.AddComponent<T>();
}
}
return _instance;
}
}
**설명: 1번의 경우에는 오브젝트를 찾아서 해당 instance를 초기화 해주지만 2번의 경우에는 해당 제네릭 타입을 검색 하여 초기화를 해주는 방식을 나뉜다.
1번의 경우에는 오브젝트를 찾아서 하지만 2번의 경우에는 상속해서 바로 쓸수 있으므로 2번의 경우를 사용하여 상속으로 싱글톤을 생성할 것 같음
1. InputSystem의 키 변경: InputSystem을 이용하여 키를 변경하는 옵션을 추가하여 후에 게임 개발에 활용을 할 수 있을 것이다.
싱글톤 상속화로 활용: 싱글톤을 여러 생성할 일이 생길 때 미리 생성하여 편하게 상속하여 사용 해야겠음
개발 오류: 4가지의 오류를 적었지만 그 안에 많은 오류들이 있기 때문에 많이 겪으며 오류에 대해 배워야겠다.
1. 없음
1. 없음
조가 바뀌었는데 1분이 병원으로 인하여 참가를 하지 못한게 아쉬웠는데 월요일부터 오신다고 하니 회의하면서 서로 친해졌으면 좋겠다.