Action disabled: source

안드로이드 개발 시작하기

안드로이드 개발

안드로이드 OS가 실행되는 장치에서 게임을 빌드하는 것은 iOS개발과 같은 접근을 필요로 합니다. 그러나 장치의 하드웨어는 완전히 표준화 되지는 않았습니다. 이것은 iOS개발에서 일어나지 않는 문제들을 만듭니다. 안드로이드 버전 유니티에는 iOS버전에 있는 것처럼 조금다른 기능이 있습니다.

안드로이드 개발 환경 설정하기

유니티 안드로이드 게임을 실제 장치에서 실행하기 전에 안드로이드 개발 환경을 설정해야 합니다. 이것은 다른 안드로이드 플랫폼에서 안드로이드 SDK를 다운로드하고 설치하는 것 그리고 실제 장치를 사용자 시스템에 추가하는 것을 포함합니다(사용자가 윈도우즈에서 또는 맥에서 개발하느 냐에 따라 조금씩 다릅니다). 이 설정 프로세스는 안드로이드 개발자 웹사이트에 설명되어 있으며 사용자 장치의 제조사에 의한 추가 정보도 있을 수 있습니다. 이것은 복잡한 과정이므로 안드로이드 장치나 에뮬레이터에서 사용자의 코드를 실행하기 전에 완성해야 하는 일의 기본 개요를 제공합니다 basic outline 그러나 가장 좋은 방법은 Android developer portal의 지시를 따르는 것입니다.

안드로이드 기능 액세스하기

유니티 안드로이드는 다양한 입력 데이터와 설정에 대한 액세스를 위해 하나의 스크립트 API를 제공합니다. 그 새로운 스크립트 클래스에 대해 더 많은 정보를 원하면 Android scripting page를 보세요.

Native C, C++ or Java 코드 스크립트에 노출하기

유니티 안드로이드는 C# 스크립트에서 C/C++로 쓰여진 사용자 정의 함수를 부르는 것을 가능하게 합니다. 어떻게 함수들을 연결하는지 좀 더 알고 싶으면 plugins page를 보세요.

Occlusion Culling

유니티 안드로이드는 “occlusion culling”을 지원하는데 이것은 많은 객체로 이루어진 복잡한 씬에서 최대의 성능을 내게하는데 완변한 것입니다. “occlusion culling”가 어덯게 작동하는 지는 occlusion culling 페이지를 보세요.

스플래쉬 화면 사용자 정의

장치에서 사용자 게임을 시작했을 때 보이는 화면인 스플래쉬 화면을 사용자 정의하고 싶으면 splash screen customization page를 방문하세요.

문제 해결

사용자 프로그램이 크래쉬하고 작동하지 않는데는 많은 이유들이 있습니다. how to troubleshoot on Android 여기를 보세요.

안드로이드 크래쉬 보그 리포트하기

버그를 제출하기 전에 Android troubleshooting page을 처음으로 보세요. 이것이 문제를 해결하지 못하면 reporting an Android bug으로 가세요.

유니티 안드로이드가 데스크탑 유니티와 어떻게 다르나요

Strongly Typed JavaScript

JavaScript의 동적 타입은 유니티 안드로이드에서 항상 꺼져 있습니다. 이것은 스크립트에 #pragma strict를 추가하는 것과 같은데 대신 이것이 기본 입니다. 이것은 성능을(iPhone과 iPad장치에서 매우 중요합니다) 현저히 향상 시킵니다. 기존의 유니티 프로젝트를 시작할 때 사용자가 동적 타입을 이용하면 컴파일러 에러를 보게될 것입니다. 이것은 에러를 일으키는 변수에 정적 타입을 사용하거나 타입 인터페이스를 이용합니다.

지형 엔진

지형 엔진은 안드로이드 장치에서는 아직 지원되지 않습니다. 지형 엔진은 현대 PC GPU에서 작동하도록 만들어 졌으며 현재 안드로이드에 맞게 작게 만들어 질수 없습니다. 사용자 정의된 다각 메쉬나 “occlusion culling”를 사용하는 것이 안드로이드 장치에서 지형을 만드는데 최선의 방법입니다.

추천하는 텍스트 압축ETC

유니티 안드로이드가DXT/PVRTC/ATC 텍스쳐를 지원하는 반면, 유니티는 만약 그 압축 함수가 실제 하드웨어에서 지원이 되지 않으면 그 텍스쳐를 실행 중에 RGB(A) 형식으로 압축을 풉니다. 이것은 GPU렌더링 속도에 영향을주며 대신 ETC형식을 사용하는 것을 권합니다. ETC압축은 안드로이드에서 표준 압축으로 여겨지며 모든 2.0장치에서 지원되어야 합니다. 그러나 ETC는 alpha channel을 지원하지 않고 텍스쳐 사용에 따라 RGBA 16-bit이 크기, 퀄리티 와 렌더링 속도간의 최고의 트레이드 오프일 것입니다.

또한 별개의 안드로이드 분배 아카이브(.apk)를 각DXT/PVRTC/ATC형식을 위해 만들고 안드로이드 마켓 필터가 다른 장치를 위해 정확한 아카이브를 선택하도록 할수 있습니다 (Publishing Builds for Android 를 보세요).

동영상 플레이백

동영상 텍스쳐는 안드로이드에서 지원되지 않습니다. 그러나 전체화면 스티리밍 플레이백은 스크립트 함수를 통해 제공됩니다. 지원되는 파일 형식과 스크립트 API를 위해 movie page 또는 Android supported media formats page 를 보세요.

Further Reading

(:tocportion:)

역링크