일단 바닥을 만들어주시고, 큐브를 하나 생성해줍니다.
이제 바닥 만드는법이나, 큐브 생성하는 법은 다들 아시죠? ㅎㅎ
움직임을 구현하기 위해 스크립트를 만들어 주어야 합니다.
Project > Create > C# Script
파일명은 클래스명과 동일하게 해야하므로 유니티에서 제공되는 함수명은
사용할 수 없기때문에 잘 생각하고 만드셔야 합니다.
스크립트를 더블클릭하시면 기존에 설정하셨던 MonoDevelop - Unity 가 켜지게 됩니다.
간혹 MonoDevelop이 편집이 안되는 분들이 계십니다. 그럴때는 유니티의 경로를 모두 영어로 바꾸어주시고
그래도 안된다면 Edit > Preferences > External Tools > External Script Editor 를 사용하시는 에디터로 변경하세요.
하지만 MonoDevelop 을 제외한 다른것을 사용하시면 디버그가 안되므로 유의해주세요...
스크립트를 실행하시면
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 | using UnityEngine; using System.Collections; public class BasicMove : MonoBehaviour { // Use this for initialization void Start () { } // Update is called once per frame void Update () { } } |
C# Script 의 기본구성모습입니다.
보시면 class명이 스크립트의 파일명과 동일시되는것을 보실 수 있으실겁니다.
Start는 클래스의 생성자 함수와 같습니다.
클래스가 호출될 때 한번 실행됩니다.
Update는 클래스가 호출되는 순간부터 계속 순환합니다.
지금부터 박스의 이동을 구현해보도록 하겠습니다.
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 30 31 | using UnityEngine; using System.Collections; public class BasicMove : MonoBehaviour { public float MoveSpeed = 10f; // 이동속도를 제어해주기 위한 변수 // Update is called once per frame void Update() { Vector3 pos = transform.position; // Vector3 struct 변수에 오브젝트의 위치정보를 가져온다. float h = Input.GetAxis("Horizontal"); // 수평이동 관련입력 "Horizontal"에 해당하는 키 값이 입력되면 // Input 클래스의 GetAxis함수를 이용하여 키 입력을 float형으로 반환 float v = Input.GetAxis("Vertical"); // 수직이동 관련입력 "Vertical"에 해당하는 키 값이 입력되면 // Input 클래스의 GetAxis함수를 이용하여 키입력을 flaot형으로 반환 pos.x += h * MoveSpeed * Time.deltaTime; pos.z += v * MoveSpeed * Time.deltaTime; // pos += new Vector3(h, 0, v) * MoveSpeed * Time.deltaTime; // 이와같이 한줄로 정리할 수 있다. transform.position = pos; // 계산되어진 좌표값을 현재 오브젝트에 적용한다. } } |
기본적인 상, 하, 좌, 우 의 이동입니다.
오브젝트에 스크랩트를 적용하시려면 스크랩트 파일을 오브젝트에 드래그 해주시면됩니다.( Texture 입히는것과 동일 )
박스의 움직임은 아래사진의 기즈모 방향대로 되어있을때 제대로 움직입니다.
박스가 움직이는지 확인을 하실때는 Game의 재생버튼을 누르시면 됩니다.
이번에는 카메라가 오브젝트를 따라다니게끔 하는 방법입니다.
Hierarchy 의 Main Camera 를 드래그하여 큐브에 종속시켜주면 됩니다 참 쉽죠? ㅎㅎ
차이점이 느껴지시나요??
edit > project setting > input 을 보시면 소스를 수정하지 않으셔도 오브젝트의 수정을 자유자제로 하실 수 있습니다.
그리고 하나의 팁을 드리겠습니다!!
Tip. 편집하던중 현재 보여지고있는 곳으로 카메라를 이동하고 싶을때는 Ctrl + Shift + F 를 누르시면 됩니다!!
Game Object > Align With View 로도 가능합니다!!
'프로그래밍 > Unity3D' 카테고리의 다른 글
Rigid Body (0) | 2016.06.20 |
---|---|
탱크(오브젝트) 관절별로 움직이기 (0) | 2016.06.20 |
apk 마켓에 등록하기 (0) | 2016.06.15 |
개발자 등록하기 (0) | 2016.06.15 |
안드로이드 포팅하기 (0) | 2016.06.14 |
트랙백 , 댓글 가 달렸습니다.