반응형

unity를 설치하기 전에  android studio를 설치합니다. 자세한 내용은 아래 포스팅을 참고하세요. 


[Android/개발환경] - 안드로이드 윈도우 개발환경 구축하기( android studio + genymotion)



android studio 설치가 완료되었다면 오른쪽 아래에 보이는 Configure를 선택하면 보이는 메뉴에서 SDK Manager를 선택해줍니다. 




사용할 안드로이드 SDK 버전을 선택하고 Apply를 클릭하여 설치합니다.  테스트할 때 사용할 안드로이드폰의 OS 버전에 따라 알맞은 버전을 선택하면 될 듯합니다.  





SDK Tools에서 다음 항목들을 선택후 Apply를 눌러 설치했습니다.





추가.. 빌드시 Android SDK Build-Tools 24를 사용하면 제대로 빌드가 되지 않기 때문에 .. 오른쪽 아래에 보이는 Show Package Details를 체크하고 반드시  Android SDK Build-Tools 24를 체크해제하고 바로 위에 있는 23.0.3을 선택해야합니다.






https://store.unity.com/ 에서 개인 개발자를 위해 제공하는 무료 버전을 다운로드하여 실행시키면





설치가 진행됩니다. 





설치를 진행하다가 컴포넌트를 선택하는 단계에서 꼭 Android Build Support를 선택해주어야 합니다.  





설치완료 후, unity를 실행시킵니다. 그러면 unity 계정을 요구합니다. 

https://accounts.unity3d.com/sign-up으로 가서 계정을 생성한 후. 이메일 인증까지 완료합니다.

다시 돌아와  로그인하면 됩니다. 이 후 물어보는 질문에 답변하며 진행하면 라이센스가 활성화됩니다. 





New project를 선택하여 새로운 프로젝트를 생성합니다.




Project name을 적어주고 Create Project를 선택합니다.




오른쪽 위에 있는 Layout을 4 Split로 변경합니다.



메뉴에서 GameObject - 3D Object - Sphere를 선택합니다. Hierarchy 패널에 Sphere가 추가되고 왼쪽에 있는 4개의 화면에 구가 하나 보이게 됩니다.




화면 중앙 위에 있는 플레이 버튼을 클릭하면 



왼쪽 아래 화면에서 흰색 구를 볼 수 있습니다. 플레이 버튼을 다시 클릭하면 원래대로 돌아옵니다.




메뉴에서 File - Save Scene을 선택하여 RedSphere 이름으로 저장합니다.  그리고 메뉴에서 File - Save Project를 선택하여 프로젝트를 저장합니다. 



이제 구의 색깔을 바꾸어봅니다. 중앙 아래쪽에 있는 프로젝트 패널에서 Assets를 선택하고 마우스 오른쪽 버튼을 눌러 나오는 메뉴에서 Create - Materrial을 선택하고 이름을 Red로 변경합니다.  red를 선택한 상태에서 




Albedo 항목의 흰색 사각형을 클릭하면 나온 창에서 빨간색을 선택해줍니다.




프로젝트 패널에 있는 Red를 드래그하여 Hierarchy 패널에 있는 Sphere에 끌어다 놓으면 왼쪽에 있는 4개의 창에 있는 구가 빨간색으로 변하게 됩니다. 




프로젝트 패널에서 Assets를 선택하고 마우스 오른쪽 버튼을 눌러 나오는 메뉴에서 Create - C# Script를 선택하고 생성된 스크립트의 이름을 Spin으로 고칩니다. 이제 스크립트를 더블클릭하면 연결된 편집기로 열리기 되는데 제 경우에는 Visual Studio가 열렸습니다. 




코드를 아래와 같이 수정하고 저장한 후.. Visual Studio를 종료하고 Unity로 돌아옵니다.

( 코드 출처는 http://answers.unity3d.com/questions/639673/move-object-by-touch-input.html 입니다. )


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
32
33
34
35
36
37
using UnityEngine;
using System.Collections;
 
public class Spin : MonoBehaviour
{
 
    public GameObject Sphere;
 
    // Use this for initialization
    void Start()
    {
 
    }
 
    // Update is called once per frame
    void Update()
    {
 
        if (Input.touchCount > 0 && Input.GetTouch(0).phase == TouchPhase.Stationary)
        {
            Vector3 touchPosition = Input.GetTouch(0).position;
            double halfScreen = Screen.width / 2.0;
 
            //Check if it is left or right?
            if (touchPosition.x < halfScreen)
            {
                Sphere.transform.Translate(Vector3.left * 5 * Time.deltaTime);
            }
            else if (touchPosition.x > halfScreen)
            {
                Sphere.transform.Translate(Vector3.right * 5 * Time.deltaTime);
            }
 
        }
    }
}
 
cs



프로젝트 패널에 있는 Spin 스크립트를 드래그하여 Hierarchy 패널에 있는 Sphere에 끌어다 놓습니다. Hierarchy 패널을 선택하면 Inspector 패널에 Spin 스크립트가 추가된 것을 볼 수 있습니다.





Project 패널에서 Sphere를 드래그하여  Spin (Script ) 항목의 Sphere옆에다가 놓았습니다. 







이제 안드로이드를 위해 빌드하기 위한 준비를 할 차례입니다. 메뉴에서 Edit - Preferences를 선택합니다. 왼쪽 항목중 External Tools를 선택하고 아래 항목들을 각각 설정해줍니다.


SDK는 아래 위치를 찾으면 됩니다. AppData가 보이지 않는 경우 윈도우 탐색기의 폴더 옵션에서  숨겨진 파일을 보이게 하면 됩니다. 

C:\Users\사용자이름\AppData\Local\Android\sdk


만약 자동으로 인식이 안된경우 JDK는 아래 위치를 찾으면 됩니다.

C:\Program Files\Java\jdk1.8.0_92


NDK의 경우에는 아래 위치에 설치가 되는데 

C:\Users\사용자 이름\AppData\Local\Android\sdk\ndk-bundle


선택했더니 "Unable to detect NDK version, please pick a different folder"라는  에러가 나서 NDK 항목 옆에 있는 Download 버튼을 클릭하여 다시 수동으로 설치했습니다. 설치하면 바탕화면에 압축풀린 android-ndk-r10e이름의 폴더가 보이게 된는데 c:\으로 옮겨주었습니다.


"no supported asset server diff tools were found"  에러가 나서  tkdiff를 https://sourceforge.net/projects/tkdiff/에서 다운받아서 설치해주었습니다.


그리고 Android ndk r10e를 설치한 경우에는 IL2CPP가 필요하다는 메시지는 확인해봐야 할듯합니다..


q





메뉴에서 File - Build Setting를 선택하여 나온 창에서 platform으로 Android를 선택하고 왼쪽 아래에 있는 Switch Platform 버튼을 클릭합니다. 




그리고 나서 Player Settings를 선택해줍니다. Inspector 패널에서 설정을 바꿀 수 있는데.. 항목들 중 Other Settings를 선택하고 Build Identifier를 적당한 문자열로 수정합니다. 수정하지 않으면 빌드가 안됩니다.. 그리고 위에서 보였던 NDK를 사용할 경우 필요한 IL2CPP로 바꾸는 옵션이 여기에 있군요... 이 옵션은 지금 안바꾸어도 될듯합니다. 





이제 태스트할 안드로이드 폰을 피시에 연결합니다.  안드로이드 폰 제조사에서 제공하는 usb 드라이버를 설치하는게 필요합니다.


이제  Add Open Scenes버튼을 클릭하고 Build and Run 버튼을 클릭합니다.  apk의 파일 이름을 물어보는 창이 뜨면 sphere라고 적어주고 저장 버튼을 클릭합니다.






좀 기다리면 폰에서 실행된 화면을 볼 수 있습니다. 폰의 중앙을 중심으로 왼쪽을 터치하고 있으면 구가 왼쪽으로 이동하고 




반대로 오른쪽을 터치하고 있으면 오른쪽으로 움직입니다..




뒤로가기 버튼을 눌러서는 화면 종료가 안되고 홈버튼을 눌러야 빠져나올 수 있었습니다.



반응형

문제 발생시 지나치지 마시고 댓글 남겨주시면 가능한 빨리 답장드립니다.

도움이 되셨다면 토스아이디로 후원해주세요.
https://toss.me/momo2024


제가 쓴 책도 한번 검토해보세요 ^^

+ Recent posts