목록unity (20)
Prosto
여러 프로젝트를 운영하다 보면 여러 버전의 유니티를 사용하고 싶을 때가 있습니다. 예를 들면 최근 프로젝트는 최근 버전으로, 예전부터 진행 중이던 프로젝트는 해당 버전으로 말이죠.(버전 업을 해서 사용하면 좋겠지만, 불필요한 일들이 너무 늘게 되죠.. 플러그인들에 문제가 생기기도 하고, 버전이 안정적이지 않은 경우도 있고요.) 그래서 이번에는 한 컴퓨터에서 여러 버전의 유니티를 운영하려면 어떻게 해야하는지,그 방법을 포스팅 하겠습니다. (간단합니다!) 먼저 설치된 기본 위치인C:\Program Files에 가보면Unity 폴더가 보이실 겁니다. 이 폴더의 이름을 변경합니다. 저는 기존에 설치했던 버전이 5.2.2p1이라 위처럼 변경했습니다.(이름은 본인이 구분 가능한 이름이면 됩니다.) 관리자 권한이 필..
유니티에서 스크립트를 작성하고, 컴포넌트로 등록하여 사용할 때,가장 기본이 되는 자동으로 일정 시점에서 호출되는 함수들이 있죠. Awake(), Start(), Update(), FixedUpdate(), OnEnable(), OnDisable() 등이 있습니다. 일단 간단하게 살펴보자면, Awake() 해당 스크립트가 등록된 오브젝트(&스크립트)가 최초로 활성화될 때 불리는 함수입니다. (한번만 호출됨) Start() Awake()와 마찬가지로 최초로 활성화될 때 한번만 불리는 함수입니다. (Awake보다는 늦게 호출됨) Update() 활성화 상태일 때 한 프레임에 한번씩 호출되는 함수입니다. (게임 프레임 1초에 60프레임이 나온다면 1초에 60번, 80fps라면 80번 호출) FixedUpdate..
따라하는 유니티 2D 프로젝트ⓑ 강좌 아홉 번째(마지막) 시간입니다. 이번에 함께 할 작업은 지금까지 만들었던 게임을 안드로이드 어플(apk 파일)로 전환하는데 어떤 추가 작업이 필요한지 확인하고, 추가 작업을 해 안드로이드 기기(태블릿, 스마트폰 등)에서 동작이 잘 되는지 실행시켜 확인해보겠습니다. 그럼 시작하겠습니다. 가장 먼저 저번에 작업했던 프로젝트를 실행합니다. 그리고 순서대로 직접 따라하시면 됩니다. 먼저 이제부터 빌드할 안드로이드(Android)로 플랫폼을 전환하고 씬(Scene)도 등록해주고, 플레이어 셋팅(Player Setting)도 해주도록 합시다. 좌측 상단의 메뉴 중 File - Build Settings...를 선택해주세요. 이렇게 Build Settings 창이 뜨는 것을 확인..
유니티로 만든 게임을 특정 해상도로 지정해주고 싶을 때가 있습니다. 다양한 해상도가 있는 스마트 폰에 게임을 만들 때도 만들 때 특정 해상도가 있겠죠? (자동 해상도면 휴대폰에 따라 보이는 화면이 달라지고 그에 따라 설정도 모두 해줘야 할 테니까요...) 일단 해상도 지정에는 Screen.SetResolution(가로 픽셀, 세로 픽셀, full screen 유무); 가 사용됩니다. 예를 들어 720x1280으로 해상도를 고정시키고 싶다면 Screen.SetResolution(720, 1280, true); 이렇게 지정해주면 되겠죠? 또, 1280x720으로 해상도를 고정시키고 싶다면 Screen.SetResolution(1280, 720, true); 이렇게 되겠고요. (최초 실행 시 실행되는 스크립트..
유니티로 게임을 만들고, 어플(App)으로 전환하기 위해서는 별도로 설치가 필요한 게 있습니다.안드로이드(apk) 변환 시 필요한 게 바로 SDK, JDK, NDK죠. 그럼 어플을 만들기 전, 먼저 간단하게 준비를 해주도록 합시다. 좌측 상단에 메뉴가 있죠?Edit - Preferences...를 선택합니다. 그리고 External Tools에 들어가보면하단에 Android라고 있는 게 보일 겁니다.SDK, JDK, NDK가 비어있죠?우리는 이제부터 이 부분을 모두 채워줄 겁니다.(그래야 안드로이드 APK 파일로 빌드할 때 문제없이 잘 됩니다.) 가장먼저 SDK 옆의 Download 버튼을 눌러줍니다. 그러면 이렇게 Android Studio를 받을 수 있는 링크로 연결됩니다.버전이 달라 없다면https..
따라하는 유니티 2D 프로젝트ⓑ 강좌 여덟 번째 시간입니다. 이번에 함께 할 작업은 블록 위에선 볼이 생성되지 않도록 예외 처리 작업을 해주고,게임 클리어 조건을 만들고 클리어 시 게임 클리어 화면으로 전환하는 작업을 하겠습니다.추가로 시간을 측정하여 게임 클리어까지 걸리는 시간도 확인할 수 있도록 하겠습니다. 그럼 시작하겠습니다. 가장 먼저 저번에 작업했던 프로젝트를 실행합니다.그리고 순서대로 직접 따라하시면 됩니다. 블록 위에서도 볼이 생성되는 모습입니다. 이렇게 블록 위에서 볼이 생성되고블록 위에서 볼이 왔다갔다하면 안 되겠죠? 이 부분에 대한 예외 처리를 해보도록 하겠습니다. 볼 생성할 때와 관계가 있으니Scripts - Ball - BallManager 순으로 선택하여스크립트를 실행합니다. 새롭..
따라하는 유니티 2D 프로젝트ⓑ 강좌 일곱 번째 시간입니다. 이번에 함께 할 작업은 저번 시간에 만들어 두었던 체력바를 필요한 때만 보여줄 수 있도록 하겠습니다. (데미지를 받은 경우 3초 동안 보여주도록) 볼이 모두 없어지는 경우 게임오버, 즉 게임종료 화면으로 전환하도록 하겠습니다. 그때 Retry 버튼을 두고, 처음부터 다시 시작할 수 있도록 하겠습니다. 그럼 시작하겠습니다. 가장 먼저 저번에 작업했던 프로젝트를 실행합니다. 그리고 순서대로 직접 따라하시면 됩니다. 실행해보면 저번에 마지막 작업했던 부분이 정상적으로 나옵니다. 모든 블록에 대해서 체력 게이지를 보여주는 체력바를 생성해줬었죠? 먼저 체력바를 피해를 받은 경우에만 보여주도록 바꿔볼까요? Scripts - Block 폴더로 들어가서 Bl..
따라하는 유니티 2D 프로젝트ⓑ 강좌 여섯 번째 시간입니다. 이번에 함께 할 작업은 볼이 떨어지기 전에 키퍼와 충돌하는 경우 떨어지던 볼을 다시 위쪽으로 보내는 처리를 할 것이고 (볼이 죽지 않도록) 다음으로 간단한 체력바를 만들어서 블록의 체력을 표시할 것입니다. (RPG 몬스터들 체력바와 비슷한 체력 게이지를 나타내는 바 입니다.) 그럼 시작하겠습니다. 가장 먼저 저번에 작업했던 프로젝트를 실행합니다. 그리고 순서대로 직접 해보며 따라오시면 됩니다. 먼저 지금은 볼키퍼를 만들어 볼이 죽지 않도록 도와주는 객체를 만들 것입니다. (기존의 객체(생성 전에 보이는 투명한 구)를 이용합니다.) 먼저 새로운 스크립트 작성을 하기 위하여 Scripts - Ball 폴더에 Create - C# Script로 스크..
따라하는 유니티 2D 프로젝트ⓑ 강좌 다섯 번째 시간입니다. 이번에 함께 할 작업은 볼과 블록에 정보(수치)를 주고, 해당 값으로 피해(데미지)를 주거고 체력이 없을 때 블록이 제거되도록 하겠습니다. 그리고 볼이 일정 조건에 제거되도록 하겠습니다. (지금은 일단 벽돌깨기 처럼 하단으로 가는 경우) 그럼 시작하겠습니다. 가장 먼저 저번에 작업했던 프로젝트를 실행합니다. 그리고 순서대로 직접 해보며 따라오시면 됩니다. 실행하면 이렇게 화면이 나오겠죠? 먼저 각 객체(게임오브젝트)에 특정 값을 주고 해당 값으로 작용할 수 있도록 해줍시다. 그럼 볼에 정보를 두기 위한 스크립트를 만듭시다. Scripts - Ball 폴더에서 우측클릭 후 Create - C# Script 순으로 선택해주세요. 이름은 BallIn..
GameObjcet.Find / GameObject.FindWithTag (GameObject.FindGameObjectWithTag) 를 이용한 일반적인 방법 (아래의 1번 글) 유니티, 원하는 게임오브젝트 얻기? -1(GameObject.Find..) 1번 글인 GameObject.Find에 이어서 진행하겠습니다. 이번에 우리가 다룰 내용은 바로 transform.FindChild / transform.GetChild 입니다. 이 함수는 1. 자신의 자식에 있는 오브젝트를 얻고싶을 때 2. 비활성화(Active값-false) 상태의 오브젝트를 얻고싶을 때 사용됩니다. (게임오브젝트(GameObject)나 트랜스폼(Transform)을 얻을 때 말이죠. [하위 Component도 포함되겠죠?]) 기본적..