한국의 개발자들을 위한 Google for Developers 국문 블로그입니다.
Unity용 Firebase가 발표되었습니다.
2016년 12월 27일 화요일
Firebase에 개발자가 멋진 앱을 더 쉽게 빌드할 수 있게 해주는 기능 일체가 포함되어 있다는 사실을 알고 계셨나요?
우리가 한동안 "게임" 대신 "앱"에 대한 얘기를 해왔다는 사실을 눈치채셨을지 모르겠군요. 그건 여러분이 Swift, 자바 또는 Objective-C로 앱을 작성하는 한 Google의 모바일 라이브러리가 훌륭하게 작동하기 때문이에요.
문제는 대부분의 게임 개발자들이 C++에서 자체 게임 엔진을 빌드하거나 인기가 많은 타사 게임 플랫폼(예: Cocos2D 또는 Unity)을 사용해 모바일 게임을 구동하고 있다는 사실입니다. 현재로서는 베타 버전으로 사용할 수 있는 C++ 버전의 Firebase 라이브러리를 구축한 상태인 데 반해, Unity 개발자들은 구식의 Firebase 데이터베이스 플러그인을 사용하는 상태로 남아 있습니다.
지금까지도 말입니다! Google의 많은 엔지니어들이 수고를 아끼지 않고 여러분이 계속해서 피드백을 주신 덕분에 Firebase 플랫폼의 훨씬 더 많은 기능을 포함하는 Unity SDK를 새로 출시하고 공식적으로 지원하게 되었습니다.
이것이 Unity 개발자에게는 어떤 의미일까요? 저희가 5월에 발표했던 새로운 Firebase 기능 중 많은 기능을 이제 활용할 수 있게 되었다는 의미랍니다. 즉, 다음과 같은 기능들이죠.
Firebase Analytics:
게임 내에서 발생하는 이벤트를 기록하는 분석 패키지로, 무료로 무제한으로 사용할 수 있습니다. 이 기능으로 게임 플레이어가 더 이상 나아가지 못하는 곳이 어딘지, 잠재고객이 시간이 지남에 따라 어떤 식으로 증가하는지, 또는 각국의 플레이어가 프리미엄 통화를 주로 어디에 쓰는지 알 수 있죠. 이 모든 것은 Firebase Analytics를 사용해 쉽게 기록할 수 있고, BigQuery와의 통합을 통해 작업하는 도중에 훨씬 더 정교한 데이터 마이닝을 실행할 수 있습니다.
Firebase 실시간 데이터베이스:
앱 데이터가 모든 기기에 걸쳐 보통 수백 밀리초 내에 마법처럼 동기화되는 데이터베이스입니다. 이는 사용자의 저장된 게임을 기기 간에 동기화하거나 턴 방식의 보드, 카드 또는 전략 게임을 구동하는 데 도움이 될 수 있으므로, 게임 내 채팅 기능과 같이 거의 실시간에 가까운 기능에 유용합니다. 즉, 멀티플레이어 슈팅 게임이나 MOBA를 구동하는 데 이 기능을 사용하고 싶진 않을 겁니다. 저는 게임 개발자들을 잘 알고 있어요. 그래서 '실시간'이 실제로 의미하는 바에 대해 좀 더 분명하게 짚어봐야 할 필요가 있답니다. ;)
동적 링크:
플레이어를 게임의 어떤 요소로 안내하거나(플레이어가 게임을 설치한 경우) Play Store/App Store로 이끌기 위해(플레이어가 게임을 설치하지 않은 경우) 사용할 수 있는 모바일 딥 링크입니다. 저는 게임 개발자가 동적 링크를 활용할 수 있는 최고의 사용 사례는 동적 링크를 사용해 인앱 공유를 가능하게 하는 것이라고 생각해요. 동적 링크를 사용하면 게임의 어떤 레벨을 재생하여 공유하거나 플레이어의 멋진 새 캐릭터/요새/사용자가 생성한 콘텐츠로 연결해 주는 링크를 공유할 수 있습니다. 이 모든 작업을 수행하는 자체 인터페이스를 빌드하고 싶은 생각이 없다면
Firebase 초대
를 통해 멋진 형식의 이메일이나 SMS 메시지 안에 동적 링크가 패키징되어 자동으로 생성되도록 할 수도 있습니다.
인증:
"휴우~ 전 정말이지 게임을 만드는 데만 집중하고 싶은데 인증 시스템을 빌드하느라 시간을 다 써버리는 것 같아요"라고 말하는 게임 개발자는 지금까지 없었습니다. Firebase 인증을 사용하여 앱을 개발하면 Facebook, Google, Github 등 제3의 공급자 서비스를 이용하던 사용자가 더욱 쉽게 여러분의 앱에 로그인할 수 있도록 하거나 맞춤 사용자 이름 및 비밀번호 시스템을 더욱 쉽게 만들 수 있습니다.
클라우드 메시징:
Firebase 클라우드 메시징을 사용하면 단일 엔드포인트를 통해 iOS 기기와 Android 기기로 모두 알림을 보낼 수 있습니다. 또한, Firebase 알림 패널을 통해 알림을 보낼 수도 있습니다. 즉, 개발팀에서 기술 담당자가 아닌 팀원이라도 맞춤 서버 코드나 curl 호출 작성에 대한 염려 없이 알림을 보낼 수 있습니다.
원격 구성:
이 기능을 사용하면 클라우드에서 게임의 값을 업데이트할 수 있습니다. 솔직히 말해, 이는 게임과 관련해 제가 가장 흥미를 느끼는 기능입니다. 타워 방어 게임을 설계한 사람이면 누구나 하나의 유닛에서 압도적인 하나의 기록이 전체 게임의 균형을 무너뜨릴 수 있다는 점을 알고 있을 겁니다. 원격 구성에서는 클라우드에서 이러한 값을 변경한 후 Firebase Analytics를 사용해 이러한 변경이 기대하는 결과를 가져다 줄지 확인할 수 있습니다. 원격 구성을 사용하면 전문가 플레이어와 같은 특정 사용자 그룹에 사용자 설정 값을 제공할 수도 있습니다.
Android 기기와 iOS 기기에 이 라이브러리를 직접 사용할 수 있지만, 관련 팀에서 친절하게도 Windows, macOS 및 Linux용 스텁 메서드에 추가해 두었으므로 데스크톱도 대상으로 하는 게임인 경우 많은 조건 코드를 추가하는 문제를 걱정할 필요가 없습니다. 여담으로, SDK의 실시간 데이터베이스 부분은 Unity 편집기 내에서 직접 작동하여 테스트와 디버그 작업이 좀 더 훌륭하게 이루어집니다.
Unity용 Firebase SDK를 직접 시험해 보세요! 바로
여기
서 사용할 수 있으며, 개발자가 꽤 멋진 게임을 더 쉽게 빌드할 수 있게 해주는 기능이 전부 포함되어 있습니다.
Todd Kerpelman 디벨로퍼 어드보케
▶
원문 링크
Contents
ML/Tensorflow
Android
Flutter
Web/Chrome
Cloud
Google Play
Community
Game
Firebase
검색
Tag
인디게임페스티벌
정책 세미나
창구프로그램
AdMob
AI
Android
Android 12
Android 12L
Android 13
Android 14
Android Assistant
Android Auto
Android Games
Android Jetpack
Android Machine Learning
Android Privacy
Android Studio
Android TV
Android Wear
App Bundle
bootcamp
Business
Chrome
Cloud
Community
compose
Firebase
Flutter
Foldables
Game
gdg
GDSC
google
Google Developer Student Clubs
Google Play
Google Play Games
Interview
Jetpack
Jetpack Compose
kotlin
Large Screens
Library
ma
Material Design
Material You
ML/Tensorflow
mobile games
Now in Android
PC
Play Console
Policy
priva
wa
wear
Wearables
Web
Web/Chrome
Weeklyupdates
WorkManager
Archive
2024
11월
10월
9월
8월
7월
6월
5월
4월
3월
2월
1월
2023
12월
11월
10월
9월
8월
7월
6월
5월
4월
3월
2월
1월
2022
12월
11월
10월
9월
8월
7월
6월
5월
4월
3월
2월
1월
2021
12월
11월
10월
9월
8월
7월
6월
5월
4월
3월
2월
1월
2020
12월
11월
10월
9월
8월
7월
6월
5월
4월
3월
2월
1월
2019
12월
11월
10월
9월
8월
7월
6월
5월
4월
3월
2월
1월
2018
12월
11월
10월
9월
8월
7월
6월
5월
4월
3월
2월
1월
2017
12월
11월
10월
9월
8월
7월
6월
5월
4월
3월
2월
1월
2016
12월
11월
10월
9월
8월
7월
6월
5월
4월
3월
2월
1월
2015
12월
11월
10월
9월
8월
7월
6월
5월
4월
3월
2월
1월
2014
12월
11월
10월
9월
8월
7월
6월
5월
4월
3월
2월
1월
2013
12월
11월
10월
9월
8월
7월
6월
5월
4월
3월
2월
1월
2012
12월
11월
10월
9월
8월
7월
6월
5월
3월
2월
1월
2011
12월
11월
Feed