title: “[클래스] 5. 게임오브젝트(이론, 실습- 거울 껏다 키기)” categories:

  • UDONGRAPHcourse

    #[클래스] 5. 게임오브젝트(이론, 실습: 거울 껏다 키기) : 네이버 블로그

디스코드 : rage147#2898

언제나 질문은 환영입니다!!

https://discord.gg/E8rF9uTggA

서버 놀러오셔요~~

우동 관련 이야기 해요~~

오늘은 클래스를 배워보겠습니다

조작법은 저번 강의때 다들 어느정도 익숙해졌다고 생각하니

특별 사항이 없으면 빠르게 넘어가겠습니다

이론과 실습이 있는데

이론은 그냥 눈으로만 읽어주세요

1. 먼저 게임오브젝트가 뭔지 알아봅시다(이론)

오늘은 게임 오브젝트에 대해 알아보겠습니다

게임 오브젝트란 하이라키에 있는 모든 것들이 다 게임오브젝트입니다

크리에이트 엠ㅍ티를 누르면

인스펙터에 이렇게 뜨죠?

이것이 게임 오브젝트의 요소입니다

게임 오브젝트는

활성화유무

이름

스태틱

태그

레이어

활성화유무

트랜스폼컴포넌트

를 가지고 있습니다

게임오브젝트에 생각보다 많은 기능들이 있죠?

아래 이미지는 우동에서 사용 가능한 기능들입니다, 게임오브젝트 안에 있습니다.

아까 말했던 게임오브젝트를 구성하는 기능을 겟(가져옴)하거나 셋(설정)하는 얘들이 있습니다

가장 자주 쓰는 것만 뽑자면

겟 액티브인하이라키 (오브젝트 활성화 유무)

겟 네임 (오브젝트이름가져오기)

겟 트랜스폼 (트랜스폼(위치,회전,크기)가져오기)

셋 액티브입니다 (오브젝트 활성화 비활성화 설정)

가 있습니다

예제로 직접 해보시죠

2. 토글을 만들어보자

준비물은 거울, 버튼이 될 오브젝트(큐브), 우동파일입니다

먼저 버튼이 될 오브젝트에

우동비헤이버 컴포넌트를 추가하고

우동파일을 연결해주세요

+플러스 버튼을 누르고 GameObject를 누른 뒤

이름을 바꾸고 퍼블릭을 체크해주세요

그후 오른쪽 위 컴파일을 누르고

우동 비헤이버에 거울을 넣어주세요

진도가 너무 빠른가요? 이정도는 다들 할 거라고 생각합니다

퍼블릭을 체크하는 이유는 외부에서 게임오브젝트를 연결하기 위해서입니다

예를 하나 보겠습니다. 보기만하세요!!

변수에

mirror는 퍼블릭을 체크하고

mi는 퍼블릭을 체크하지 않았습니다

별표한곳을 보면 mirror만있죠?

퍼블릭을 체크한 변수만 연결을 할 수 있습니다

우리는 외부의 거울을 제어하기 위해 mirror를 퍼블릭해서 연결한겁니다

다시 코드로 돌아오겠습니다

자 일단 인터렉트 먼저 꺼내고 생각합시다

만들것은

거울이 꺼지면 켜지고 켜지면 꺼지는 버튼

즉 토글을 만들것입니다.

자 먼저 거울이 꺼져있나 켜져있나 알기 위해

mirror 와 겟액티브인하이라키 만든 후 연결해주세요!

겟액티브인하이라키는 게임오브젝트 안에 있습니다!!

겟액티브인하이라키는 bool이죠?

bool은 뭐죠? 기억나시나요?

참 거짓이요?

갯액티브인하이라키는 거울이 켜져있나 꺼져있나를 get합니다

이번엔 셋 액티브을 꺼내보겠습니다

여기까지는 이해가 가시나요?

인터렉트를 하면 셋 액티브가 실행되고 그 대상은 mirror입니다

크리에이트 노드를 누르고

boolean에 들어가

UnaryNegation을 가져옵니다

UnaryNegation은 현재 bool의 반대

참이면 거짓

거짓이면 참으로 바꿉니다.

정리하면

인터렉트를 하면 mirror의 상태를 설정하는데

그 값이

거울의 상태의 반대입니다

이해가 가시나요?

거울이 꺼져있으면 키고

켜져있으면 꺼짐을 생각해주세요!!

천천히 코드를 보시면 이해가 될거에요!

bool은 참 거짓의 값을 가진다.

참의 반대는 거짓

거짓의 반대는 참임을 알면 좋습니다!!

게임오브젝트의 Tmi

게임오브젝트에는 태그라는 요소가 있지만 우동에서는 지원하지 않습니다

게임오브젝트에는 getActive와 getactiveInHierarchy 두개의 기능이 있습니다

둘 다 오브젝트가 켜져있냐 꺼져있냐를 겟하는 얘인데

오브젝트의 상위 오브젝트가 하이라키에서 비활성화 되었을때(자신이 스스로 setActive로 끈게 아니라 상위에서 꺼졌을때)

겟액티브는 안꺼졌음으로 나오고

겟액티브인하이라키는 꺼짐으로 나옵니다

즉 갯액티브는 하이라키에서 꺼져있어도 setActive에서 끈게 아니면 true로 나옵니다

게임오브젝트는 VRChat에서 오너의 개념이 있습니다

모든 오브젝트는 오너가 있습니다.

디스코드 : rage147#2898

언제나 질문은 환영입니다!!

https://discord.gg/E8rF9uTggA

서버 놀러오셔요~~

우동 관련 이야기 해요~~

업데이트: