한 걸음 두 걸음

Day2 UCI 특강 ]rigidbody컴포넌트 / 자료유형 종류 / update fixed update / Translate & Rotate / 하늘 background 변경 / 카메라 클리핑마스크(Culling mask)와 태그(레이어) / 컴포넌트 contraint / constant Force컴포넌트 / .. 본문

Unity

Day2 UCI 특강 ]rigidbody컴포넌트 / 자료유형 종류 / update fixed update / Translate & Rotate / 하늘 background 변경 / 카메라 클리핑마스크(Culling mask)와 태그(레이어) / 컴포넌트 contraint / constant Force컴포넌트 / ..

언제나 변함없이 2019. 1. 22. 10:19
반응형

리지드바디컴포넌트

: 강체로 질량, 공기저항, 중력, 구속조건 등을 객체에 유여하여 운동을 제어함.

자료유형 종류
Rigidbody Transform GameObject AudioSource ...등이 있다.


Update와 fixedUpdate의 차이

동작은 정상적으로 둘 다 하지만 차이는 있다. 정확히 물리 계산을 한 후 실행을 시킬 때 fixedUpdate이고
(정확한 동작을 반영해야하는 때에. 예시, 주인공이 어디 부딪혀서 벽이 깨졌는데 얼마나 많이 깨질지 계산하고 반영해주는 등이 필요하다면 fixed해주는게 좋다.)
Update는 내가 뭘 하든 계속 움직임을 반영함. 딱히 외부와의 상호작용이 필요없으면 update가 적절하다.

Translate함수

상대좌표 기준으로 보여주는 함수이다.

  //transform.Rotate(v, h, 0);
   transform.Translate(v, h, 0); //이렇게 해주면 카메라가 상대좌표값에 따라 움직인다.

이 때 상대좌표는 프레임에 따라 너무 큰 값이 들어가서 움직임이 너무 빠를 수 있으므로,
Time.deltaTime * 를 해줘서 프레임과 프레임 사이의 퍼포먼스를 일정하게 유지시켜준다.

  float h = Time.deltaTime * horizontalSpeed * Input.GetAxis("Mouse X");
        float v = Time.deltaTime * verticalSpeed * Input.GetAxis("Mouse Y");
        //이렇게 Time.deltaTime 을 *곱해줘서 게임의 속도가 적절하도록 맞춰준다.

카메라시점으로


main camera선택 후 control shift F 단축키로 카메라의 시점을 현재 위의 시점으로 설정해준다.


하늘ㅅ 백그라운드 색상 바꿔주기.

===
카메라의 Culling mask와
레이어와 태그 사용하기

레이어 추가


여기서 레이어입력이 안된다면

Edit- Project Setting 에서 입력해주면 된다.
입력 후

각 컴포넌트 가서 레이어 연결해주면 사용가능함.

레이어설정을 해서 원하는 객체만 보이게하고싶거나, 원하는 객체만 움직이게 함으로써
성능의 최적화를 시킨다.


카메라의 culling mask에서 원하는 레이어를 선택해줌으로 원하는 레이어만 볼 수 있음

이렇게 cube만 선택해주었더니 큐브만 보인다.

인덱싱(찾는 것)을 하기위해 불필요한 부분을 없애버림 - 물리계산할 때 compare with Tag하여 태그라면 계산하고 아니면 안하는 등의 과정을 통해 성능의 최적화가 이루어진다~!


컴포넌트에 contraint 설정하기

떠있는 큐브에 rigidbody 추가해주면 해주면 중력이 작용하는데 rigidbody의 constraint로 구속조건을 주면
(freeze position 으로 y축을 줘버리면) y축으로 움직이지를 않는다.


constant Force


에서 constant Force

를 해줌으로써 힘을 줄 수 있다. (토크 만나니까 반갑네.. 회전, 구부러짐 등이다.)

y축으로 힘을 주면 로켓 발사하듯이 서서히 올라간다.


회전시키기

위에 3번째 버튼 누른 후 회전시킬 수 있다.(여기서 회전시키면 x,y,z값 다 같이 움직인다.)

이렇게 collider칸에서 선택함으로 방향을 설정해서 x,y,z축으로 회전시킬 수 있다.


위의 사진은 collider로 회전시키면 x축으로만 움직이게 할 수 있다.

캡슐 및 실린더에서만 회전 가능~!
(네모나 구는 회전하나마나 똑같아서..)


도구사용해보기

이러케 x,y,z 면을 기준으로 이동, 회전, scale 제어 등등을 할 수 있다.

5번째에 있는 것은 rect tool 사각형 2D or UI를 만들 때 객체를 편집해줄 수 있다.

위의 사진처럼 아래 2D버튼을 눌러주면 2D로 보면서 편집할 수 있다.


카메라랑 잘 안맞는 것 같으니까 보내줘봅시다.

Text위의 canvas를 눌러준 후,

world space 일반 객체처럼 위치나 스케일 등을 변형시킬 수 있게 만들어줌

하지만 텍스트 크기가 너무 크기까 좀 줄여서 원점이나 실린더 위치를 paste해서 보고 크기조정해주면 좋다..

그 외 버튼 등도 있음!



반응형