# Unity ## Tutorials - Roll-a-Ball ''http://unity3d.com/learn/tutorials/modules/'' 사이트에 접속합니다. PROJECTS 들이 여러개 보이는데요. 그중에서 Beginner 난이도인 Roll-a-Ball을 보도록 하겠습니다. # 기본 마우스 기능 오브젝트를 선택할 경우에는 ''Shift'' + 좌클릭 화면을 회전할 경우에는 ''Alt'' + 좌클릭 평행이동을 하고 싶을 경우에는 ''마우스 중클릭'' 을 해야 합니다. # Hierarchy ## Scene ^ Hierachy ^ 설명 ^ | Ground | 바닥, 배경| | Player | 움직이는 공| | Fill light | 아래에서 비추는 빛 | | Main light | 위에서 비추는 빛 | | Walls | 동서남북 벽 | | PickUps | 회전하는 정육면체| | Win Text | 승리 메시지 | | Count Text | 점수| ## GUI Text 튜토리얼과 같이 GUI Text를 생성할 수 없습니다. ''Create Empty Object'' 후에 ''Component → Rendering → GUIText'' 를 추가해야 합니다 # Assets ## Prefabs PickUp : pickup들에 공통적으로 스크립트를 적용합니다. ## Scenes MiniGame : 메인 화면 ## Scripts ### CameraController ```csharp using UnityEngine; using System.Collections; public class CameraController : MonoBehaviour { public GameObject player; private Vector3 offset; // Use this for initialization void Start () { offset = transform.position; } // Update is called once per frame void LateUpdate () { transform.position = player.transform.position + offset; } } ``` ### PlayerController using UnityEngine; using System.Collections; public class PlayerController : MonoBehaviour { public float speed; public GUIText countText; public GUIText winText; private int count; void Start(){ count = 0; SetCountText(); winText.text = ""; } void FixedUpdate(){ float moveHorizontal = Input.GetAxis ("Horizontal"); float moveVertical = Input.GetAxis ("Vertical"); Vector3 movement = new Vector3 (moveHorizontal, 0.0f, moveVertical); rigidbody.AddForce (movement * speed * Time.deltaTime); } void OnTriggerEnter(Collider other) { if (other.gameObject.tag == "PickUp") { other.gameObject.SetActive(false); count++; SetCountText(); } } void SetCountText(){ countText.text = "Count : " + count; if (count >= 12) { winText.text = "You WIN!"; } } } ### Rotate using UnityEngine; using System.Collections; public class Rotate : MonoBehaviour { // Use this for initialization void Start () { } // Update is called once per frame void Update () { transform.Rotate (new Vector3 (15, 30, 45) * Time.deltaTime); } } # Build ## Android ''File → Build Settings → Player Settings'' 에서 ''Bundle Indentifier''를 변경해야 합니다. ''SDK'' 경로 변경은 ''Edit → Preferences → External Tools'' 에서 할 수 있습니다.