브래의 슬기로운 코딩 생활
모바일 게임 개발 11주차 정리 본문
CharacterController컴포넌트
CharacterController controller ; //CharacterController 변수 정의
controller = GetComponent<CharacterController> () ;
//스크립트가 부착된 object의 구성요소에 CharacterController 를 controller의 변수에 대입
currentMovement += Vector3.forward * Time.deltaTime * 1.0f ;
// 1초에 1m 앞으로 가는 속도를 currentMovement에 추가한다.
controller.Move (currentMovement * Time.deltaTime);
controller.Move (벡터) // 벡터만큼 controller 이동
controller.isGrounded->true, false // controller가 바닥에 닿았는가를 체크
void Start()
{ reset_pos = transform.position; }
void Update()
{
if (~~)
{
transform.position = reset_pos;//처음 위치로 이동
currentMovement = new Vector3(0, 0, 0); // 속력 0으로 초기화
}
}
void Update () {
if (~~~) {
direction *= -1 ; //만약 ~~~ 하면 direction에 -1을 곱하여 역방향으로 전환
}
transform.Translate (Vector3.right * direction * Time.deltaTime); // 같은 속도로 역방향으로 전환됨
}
카메라가 객체를 따라다니는 소스
transform.Translate (camera_move, Space.World);
// 오브젝트가 움직일 때 기준이 되는 축이 해당 물체가 아니라 World 축(기즈모기준)
transform.Translate (camera_move, Space.Self);
// 오브젝트가 움직일 때 기준이 되는 축이 해당 물체일 경우 Self축(지정하지 않을 경우 Self축)
public Transform target;// 객체
Vector3 camera_move;
void Update()
{
camera_move = new Vector3(타켓의 X축위치, Y축0의 위치, 타켓의 Z축위치); // 카메라의 위치
transform.Translate(camera_move, Space.World);//카메라의 위치 이동
transform.LookAt(target);//카메라가 target을 바라 봄
}
camera_move = new Vector3(target.position.x - transform.position.x, 0, target.position.z - (transform.position.z + 10));
카메라 위치 = [객체가 움직인 x위치-현재 카메라의 x위치, 0 , 객체가 움직인 z축 위치 – (현재 카메라의 z축 위치 +10)]
'2-1 > 모바일 게임 개발' 카테고리의 다른 글
모바일 게임 개발 13주차 정리 (0) | 2023.05.31 |
---|---|
모바일 게임 개발 12주차 정리 (0) | 2023.05.24 |
모바일 게임 개발 10주차 정리 (0) | 2023.05.10 |
모바일 게임 개발 9주차 정리 (0) | 2023.05.03 |
모바일 게임 개발 중간고사 정리 (2) | 2023.04.26 |