반응형
안녕하세요.
오늘은 유니티에서 마우스 클릭 시 객체가 이동하도록 구현해보겠습니다.
일단 기본적으로 바닥과 객체를 하나 생성하겠습니다.
바닥은 Quad로 생성하겠습니다.
그리고, 생성 후 바닥 같은 모양을 만들기 위해, 크기와 로테이션을 변경하겠습니다.
그리고 움직일 객체를 만들어보겠습니다.
Cube로 만들겠습니다.
Cube Object를 바닥 오브젝트와 적당한 거리로 이동시킵니다.
그리고 Cube Object에 스크립트를 추가합니다.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
|
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
public class Player : MonoBehaviour
{
public float m_fSpeed = 5.0f;
Vector3 m_vecTarget;
void Start()
{
m_vecTarget = transform.position;
}
void Update()
{
if(Input.GetMouseButtonDown(0))
{
Ray ray = Camera.main.ScreenPointToRay(Input.mousePosition);
RaycastHit hit;
if(Physics.Raycast(ray, out hit, 10000f))
{
m_vecTarget = hit.point;
m_vecTarget.y = transform.position.y;
}
}
transform.position = Vector3.MoveTowards(transform.position, m_vecTarget, m_fSpeed * Time.deltaTime);
}
}
|
cs |
이렇게 추가하면 클릭할 때 마다 이동하는 것을 볼 수 있습니다.
Physics.Raycast(ray, out hit, 10000f)에 들어간 매개변수의 의미는
ray는 광선의 시작점과 방향
hit는 충돌체가 발생한 위치에 대한 정보가 함수에서 받아옵니다.
10000f는 광선이 충돌을 확인해야하는 최대 거리를 의미합니다.
반응형
'개발공부 > 유니티' 카테고리의 다른 글
[Unity] 유니티 점프 (0) | 2019.10.11 |
---|---|
[Unity] 오브젝트를 키보드 이동 (0) | 2019.10.08 |
[Unity] 유니티 Toggle UI 초기값 넣을 때 문제 (0) | 2019.10.06 |
[Unity] 유니티 Toogle UI로 ON/OFF UI 만들기 (0) | 2019.10.04 |
[Unity] 유니티 구글 애드몹 광고 넣기(Google AdMob)(전면 광고) (1) | 2019.10.03 |