2024. 9. 11. 15:41ㆍ카테고리 없음
1. color 맨밑에 있는 A 칸은 투명도이다.
2. Hierarchy에 있는 것들 중에 부모에 SetActive(true)를 하면 밑에 있는 자식들도 다같이 true가 된다.
3. DontDestroyOnLoad
private void Awake()
{
if (instance == null)
{
instance = this;
DontDestroyOnLoad(gameObject);
}
}
DontDestroyOnLoad는 씬이 바뀌어도 이 객체가 삭제되지 않도록 하는 함수입니다. 따라서 스테이지나 난이도와 관련된 정보가 여러 씬에서 유지됩니다.
4. GameObject와 script의 차이
Hierarchy창에 stagemanger 가 있일때
GameObject stagemanger; //Hierarchy창에 stagemanger가 있을때 사용가능
함수
stagemanger = GameObject.Find("StageManger");
이렇게도 정보를 가져올 수 있다.
의문 (public GameObject stagemanger를 안하는 이유)
GameObject stagemanger 앞에 public을 붙여서 사용하면 드래그인 드롭이 가능해서 저렇게 안해도 되지 않나요?
할 수도 있는데 협업할때에는 드래그엔 드롭을 할 수 있는 환경이 아닐 수도 있어서 그렇다.
script에 stagemanger가 있을때
stagemanger에 싱글톤이 되어있어서 바로 사용가능하다.
if (StageManger.instance.stage != 3)
이렇게도 정보를 가져올 수 있다.
5. script -> this를 사용해서 script에 붙어있는 GameObject에 접근
script에서 this.gameObject를 사용하면 script에 부착된 GameObject를 사용할 수 있다.
여기서 중요한 점!!! this.GameObject가 아닌 this.gameObject로 사용해야된다는 점이다.
왜그러냐?
this.gameObject는 Unity에서 자동으로 제공되는 속성이라서 별도의 선언 없이도 사용이 가능하다.
보충설명
스크립트가 게임 오브젝트에 붙어 있으면, 해당 스크립트는 그 오브젝트에 대한 정보에 자동으로 접근할 수 있도록 **gameObject**라는 속성을 기본적으로 제공합니다. 이 속성은 스크립트가 부착된 게임 오브젝트를 참조합니다.
6. 실수 = 실수 / 정수(O), 실수 = 정수 / 정수(X)
int a = 5;
itn b = 3;
float c = a / b;
아무리 c가 실수형이여도 a, b 둘다 정수형이면 c도 정수형으로 계산이 된다.
그래서 둘중에 하나는 실수형으로 만들어 줘야 한다.