* Player
1) 무한 점프 제한
- 계산기의 IsNewNum 응용.
- Isjump라는 bool형 변수를 생성하여 활용.
- Public Float jumpPower를 유니티상에서 조절할 수 있게 하였지만, 그냥 코드에 숫자를 집어넣어도 됨.
2) 상하좌우 이동
Vector3 vec = new Vector3(Input.GetAxis("Horizontal"), 0, Input.GetAxis("Vertical"));
rigid.AddForce(vec * 30 * Time.deltaTime, ForceMode.Impulse);
vec라는 Vector3 변수를 생성.
AddForce()에서 vec를 적용해줌. (vec만큼의 힘을 가하는 함수.)
3) item 먹을 때, 효과음 발생.
- 컴포넌트의 Audio Source 추가.
- Unity Asset Store에서 무료 Audio Import.
- 컴포넌트 Audio Source로 드래그.
- Awake 등 비활성화 구간에서는 함수가 잘 실행되지 않을 수 있음.
- audio라는 변수명은 내부적으로 어딘가에서 사용중인듯함.(밑줄표시되어있음.)
audio1 등 다른 변수명 써주면 됨.
* 아이템
1) 오브젝트 회전
- TransFrom.Rotate() 활용.
- Space.World : 오브젝트의 축이 아닌, 기본 배경 축.
2) SetActive()
- true, false의 bool형 함수이며 컴포넌트를 해제하여줌. (눈에 안보이게 됨.)
* 좌표 기준 변경(카메라)
- Vector3의 변수 생성. (Vector3 offset;)
- 카메라와 플레이어 사이의 거리를 offset으로 만들고, 다시 플레이어로부터 offset을 더해서 카메라 거리를 항상 offset으로 유지하게 만들어 줌.
- GameObjet 클래스의 FindGameObjectWIthTag 함수 사용.
(Find계열의 함수는 cpu메모리를 이용한 연산을 반복해야 하기 때문에, 많이 사용하는 것은 좋지 않음.)
* 장면 이동
- using UnityEngine.SceneManagement; 를 등록하고 사용해야함.
- SceneManager.LoadScene() 함수 사용.
(유니티 이름, build setting의 index 번호 사용 가능.)
- 파일 - build setting에서 각 unity를 추가해주어야 함. (필수)
- 게임매니저의 Stage 번호, itemcount 등 여러 변수를 직접 조정해주면서 화면 전환이 잘 일어나는지 확인 필요.
* UI
- Cansvas 추가.
- 2D모드에서 작업하는게 편함.
- Imgage 추가 후, Shift / Alt 를 이용해서 꼭지점을 맞춰주는 작업을 해야함.
댓글