SlideShare une entreprise Scribd logo
1  sur  44
ngCore Enginefor mobage platform Toru Yamaguchi <zigorou@dena.jp> DeNA,co.,ltd
My Profile  Identity  @zigorou, =zigorou, d:id:ZIGOROu  Community  Perl, Shibuya.pm, Yokohama.pm  Japan Perl Association 理事  Company  Social API Developer
Abstract  What is ngCore?  Architecture of ngCore   ngCore Social APIs  Development and Performance  Conclusion
1. What is ngCore? ngCore Engine for mobage platform
Cross devices  ngCore とは ソーシャルアプリ向けの SDK です  devices  Android, iOS, Flash  Development Language?  Java でもなければ Objective-C でも C++ でもありません 実際のコードはJavaScriptで記述します そして同じコードで全てのデバイスに対してアプリケーション開発が出来ます
Cross platform 日本にも海外にも挑戦出来る モバゲータウン (Japan) mobage (English speaking countries) ngmocoの platform をベースにしたもの  apps Deveiceごとの一般的なダウンロード (App Store, Android Market) 但し会員のベースは上記のプラットフォームがベースとなる
Features (1)  Live updating アプリケーションロジックは JavaScript なので通常の native app とは違い動的な更新が可能 開発時はnode.jsで出来た配信サーバーと ngCore native app が通信して動的に更新可能
Features (2)  For Social Apps  API designs is based on OSAPI (OpenSocial 1.1)  c.f.) social.common.people.get(params);  For Social Games  Push notification  Game recommendation   User to user challenge 対戦申し込み  Geo Location
Features (3)  Game developments (1)  2D Sprite Engine, 2D Geometry Engine 特に2Dのゲームに特化している  Native UI Bindings  Android Widget (Android), WebKit (iOS), Flash  Physics Based on Box2D 物理演算は各デバイスのネイティブコードで行われるため、高速に動作する
Features (4)  Game developments (2)  Audio マルチチャンネル、ミキシング  Multi touch  Motion アクセロメータ、ジャイロスコープ、コンパス、GPS  Text and Fonts rendering
Features (5)  Standards (1)  JavaScript の Module システムはCommonJS Modules 1.0 に準拠  Library exports.add = function() { /* impl */ };  Usage var add = require(‘math’).add;
Features (6)  Standards (2) デバイスごとの JavaScript Engine はECMAScript 3rd準拠  V8 Engine (Android), JavaScriptCore (iOS) 部分的に ES Harmony の機能も使えます!  getter/setter varobj = { get a() { /* getter */ },  set a() { /* setter */ } } Array.prototype forEach, map, reduce … https://github.com/ry/node/wiki/ECMA-5-Mozilla-Features-Implemented-in-V8
Case of success ngmocoによる豊富な成功例 http://www.ngmoco.com/games.php
2. Architecture of ngCore ngCore Engine for mobage platform
Common Architecture (1) デバイスごとに共通なこと コンポーネントは3階層  Game (開発者が書く JavaScript) NgWebEngine (開発者が使う JavaScript Library)  NDK (JavaScript と Native Component との bridge 部分) NgWebEngineは共通のインターフェースを持つが、NDK はデバイスごとに存在する
Common Architecture (2) ngCore Engine Game Implementation (JavaScript) Native UI Component Native App (NDK) Game JavaScript (Library + Engine) Native Browser Component Privileged JavaScript (Library Engine) Native Graphic Component Platform Implementation (Privileged JavaScript) NgWebEngine Native NDK
Android Environment ngCore Engine for Android Game Implementation (JavaScript) Android Widget Native App (NDK) Graphics Physics XHR Game JavaScript (V8) WebKit Privileged JavaScript (V8) OpenGL Platform Implementation (Privileged JavaScript) NgWebEngine Native NDK
iOS Environment ngCore Engine for iOS Game Implementation (JavaScript) UIKit Native App (NDK) Location XHR Game JavaScript (UIWebView) WebKit Privileged JavaScript (UIWebView) OpenGL Platform Implementation (Privileged JavaScript) NgWebEngine Native NDK
Application building  Android 記述した JavaScript コードをサーバーに上げるだけで済む 端末に ngCore がアプリとしてインストールされていれば OK iOS 技術的には Android と同じ事が可能 が、しかし iOS license terms の制約により要パッケージング
Android application Application ( JavaScript )  Application code をサーバーにアップするだけでコードの配信やバージョンの更新が可能 Live updating Platform Web Server Application Application ( JavaScript )  Application ( JavaScript )  ngCore Engine for Android
iOS application iOSの場合はiOS license terms の制約によって、パッケージングしなければならない。 Application ( JavaScript )  Platform Web Server Application Application ( JavaScript )  Application ( JavaScript )  ngCore Engine for Android
3. ngCore Social APIs ngCore Engine for mobage platform
Caution! まず始めに このセクションの話は将来の話です ここで説明した内容がそのままリリースされるかを保障する内容ではございませんので予めご了承下さい
Overview (1)  Based on OpenSocial  OSAPI like な interface social.common.people.get(params) people, appdata, profanities (NG Word) は共通APIとして使える予定です
Overview (2)  Platform dependencies APIs  Activity, Avatar, BlackList (モバゲーのみ) Leaderboards (mobageのみ?) この辺りはまだだいぶ未確定
People 出来る事 ユーザーのプロフィール取得 (nickname など) ユーザーの友達一覧取得 ユーザーの”ゲーム内での”友達一覧取得 ゲームの中だけでの友達と言う概念
Appdata  Key-value persistent storage  application-user ユニークなデータを platform 側に保存出来ます デバイスを変更したとしても同一ユーザーであればデータを引き継げる
Activity (モバゲー)  Friends Activity Timeline 現在はアプリケーションに関連する友達の状況がタイムラインとしてリアルタイムに表示されます  API としてはこれらの Activity を post する事が出来ます
Leaderboards (mobage) リアルタイムランキング ランキングの為のスコア送信 現在のランキングを取得 実はアプリケーションを横断したリアルタイムランキングはとてもコストが高い処理 platform 側で引き受けます! この機能はモバゲーでもいずれ?
Others 今後の Social API  OpenSocial に無い独自のAPIを platform (WAP/PC/Smart Phone)として色々出す予定です 位置情報やゲーム特化系 コミュニティ系 既存の OpenSocial base の API も機能拡張していきます
4. Development and Performance ngCore Engine for mobage platform
Development (1) 基本的な流れ  SDK にnode.jsで出来た配布サーバーが添付されてます 基本は環境ごとの ngCore app が既にあるので、配布サーバーにある JavaScript を編集し保存してから、アプリのリロードをすればすぐに確認出来ます
Development (2) Check Edit and Save Native Build Build Create apk Install apk Run app Android with NDK Check Edit and Save Build Create apk Install apk Run app Android Standard Edit and Save Check Reload Android with WebView Edit and Save Check Reload ngCore for Android
Performance (1) 特に気になる描画まわり 以下の実装で比較  ngCore + JavaScript  JavaScript + Canvas  Java OpenGL ES 1.0 実行環境  HTC Desire / Desire HD  Android OS 2.2  ngCore SDK 1.0
Performance (2)  64x64 の Tank を動かすアプリ  Tank の数に応じた fps を計測 Java OpenGL ngCore JavaScript + Canvas
Performance (3) ,[object Object],fps Java OpenGL 60 ngCore 50 JavaScript + Canvas 40 30 20 10 1 10 100 200 500 1000 Tankの数
Performance (4) ,[object Object],fps Java OpenGL 60 ngCore 50 JavaScript + Canvas 40 30 20 10 1 10 100 200 500 1000
Performance (5) ベンチマーク結果より 概ね Canvas < ngCore < Java  但し Tank の数によってはまだまだ ngCore に改善の余地あり まだ開発中なので今後改善していきます 遅くなってしまっている原因としては JavaScript <-> ngCore のやりとりがオブジェクトごとに発生しているからと思われる この辺りはまとめてハンドリング出来れば速度の向上が見込まれる
5. Conclusion ngCore Engine for mobage platform
Cross devices and platform  Cross devices  ngCore + JavaScript  Cross platform ゲーム好きなユーザーの集まるモバゲータウン 世界へのチャレンジとしてのmobage
ngCore features  Game 特化  We rule など既にヒットしているタイトルで実際に使われている安心感 これを platform として出すメリットは、パートナーからの feedback でよりゲーム開発しやすい SDK に成長する可能性があると言う事
JavaScript  Web 系開発では必須言語 今までの経験をそのまま活かせる  Standard  ES Harmony, Common JS, DOM like な UI, OSAPI like な Social API 極力覚える事が少なくなる様に
ngCore Development  Live update  Android では Web development のような感覚での application 更新が可能 これは開発時に実装し、確認すると言う try and error が素早く繰り返せる 慣れれば2, 3ヶ月に1本開発くらいの事は出来そうです。
Dive into ngCore!  Please visit DeNA developer site http://developer.dena.jp/mbga/ こちらで順次お知らせしていきます まずは法人登録を! 我々とともに世界をビジネスの舞台にしていきましょう。 ご清聴ありがとうございました

Contenu connexe

Tendances

AndApp開発における全て #denatechcon
AndApp開発における全て #denatechconAndApp開発における全て #denatechcon
AndApp開発における全て #denatechconDeNA
 
Effective web performance tuning for smartphone
Effective web performance tuning for smartphoneEffective web performance tuning for smartphone
Effective web performance tuning for smartphonedena_study
 
アバター着せ替えアプリ開発におけるフロントエンド技術(Vue.js活用事例) #denatechcon
アバター着せ替えアプリ開発におけるフロントエンド技術(Vue.js活用事例) #denatechconアバター着せ替えアプリ開発におけるフロントエンド技術(Vue.js活用事例) #denatechcon
アバター着せ替えアプリ開発におけるフロントエンド技術(Vue.js活用事例) #denatechconDeNA
 
Unityで本格戦国シュミレーションRPG 開発
Unityで本格戦国シュミレーションRPG 開発Unityで本格戦国シュミレーションRPG 開発
Unityで本格戦国シュミレーションRPG 開発dena_study
 
技術選択とアーキテクトの役割 (要約版)
技術選択とアーキテクトの役割 (要約版)技術選択とアーキテクトの役割 (要約版)
技術選択とアーキテクトの役割 (要約版)Toru Yamaguchi
 
Unity ネイティブプラグインの作成について
Unity ネイティブプラグインの作成についてUnity ネイティブプラグインの作成について
Unity ネイティブプラグインの作成についてTatsuhiko Yamamura
 
DeNA内製ゲームエンジンの現状と目指す未来 #denatechcon
DeNA内製ゲームエンジンの現状と目指す未来 #denatechconDeNA内製ゲームエンジンの現状と目指す未来 #denatechcon
DeNA内製ゲームエンジンの現状と目指す未来 #denatechconDeNA
 
Mobage/AndAppのSDK開発事例とSDKを作る際に知っておくべきこと #denatechcon
Mobage/AndAppのSDK開発事例とSDKを作る際に知っておくべきこと #denatechconMobage/AndAppのSDK開発事例とSDKを作る際に知っておくべきこと #denatechcon
Mobage/AndAppのSDK開発事例とSDKを作る際に知っておくべきこと #denatechconDeNA
 
B2B2Cなヘルスケアサービスの作り方
B2B2Cなヘルスケアサービスの作り方B2B2Cなヘルスケアサービスの作り方
B2B2Cなヘルスケアサービスの作り方Tomohiro MITSUMUNE
 
ガールアックス マルチプレイのリアルタイム通信ゲーム開発入門
ガールアックス マルチプレイのリアルタイム通信ゲーム開発入門ガールアックス マルチプレイのリアルタイム通信ゲーム開発入門
ガールアックス マルチプレイのリアルタイム通信ゲーム開発入門dena_study
 
FFRK cocos2d xレイヤーの最適化
FFRK cocos2d xレイヤーの最適化FFRK cocos2d xレイヤーの最適化
FFRK cocos2d xレイヤーの最適化dena_study
 
DeNA の新しいネイティブ開発(パズル戦隊デナレンジャー)
DeNA の新しいネイティブ開発(パズル戦隊デナレンジャー)DeNA の新しいネイティブ開発(パズル戦隊デナレンジャー)
DeNA の新しいネイティブ開発(パズル戦隊デナレンジャー)dena_study
 
DeNA_Techcon2017_DeNAでのチート・脆弱性診断への取り組み
DeNA_Techcon2017_DeNAでのチート・脆弱性診断への取り組みDeNA_Techcon2017_DeNAでのチート・脆弱性診断への取り組み
DeNA_Techcon2017_DeNAでのチート・脆弱性診断への取り組みToshiharu Sugiyama
 
FINAL FANTASY Record Keeper の作り方
FINAL FANTASY Record Keeper の作り方FINAL FANTASY Record Keeper の作り方
FINAL FANTASY Record Keeper の作り方dena_study
 
FINAL FANTASY Record Keeperのマスターデータを支える技術
FINAL FANTASY Record Keeperのマスターデータを支える技術FINAL FANTASY Record Keeperのマスターデータを支える技術
FINAL FANTASY Record Keeperのマスターデータを支える技術dena_study
 
Unityネイティブプラグインマニアクス #denatechcon
Unityネイティブプラグインマニアクス #denatechconUnityネイティブプラグインマニアクス #denatechcon
Unityネイティブプラグインマニアクス #denatechconDeNA
 
爆速でAndroidアプリを ビルドするための仕組み DeNA TechCon #denatechcon
爆速でAndroidアプリを ビルドするための仕組み DeNA TechCon #denatechcon爆速でAndroidアプリを ビルドするための仕組み DeNA TechCon #denatechcon
爆速でAndroidアプリを ビルドするための仕組み DeNA TechCon #denatechconYosaku Toyama
 
iOSレガシーコード改善ガイド〜マンガボックス開発における事例〜
iOSレガシーコード改善ガイド〜マンガボックス開発における事例〜iOSレガシーコード改善ガイド〜マンガボックス開発における事例〜
iOSレガシーコード改善ガイド〜マンガボックス開発における事例〜Kentaro Matsumae
 
マンガボックスのiOS10プッシュ通知導入事例
マンガボックスのiOS10プッシュ通知導入事例マンガボックスのiOS10プッシュ通知導入事例
マンガボックスのiOS10プッシュ通知導入事例Fukaya Akifumi
 
Iccw2010 sdk4 air
Iccw2010 sdk4 airIccw2010 sdk4 air
Iccw2010 sdk4 airIsao Soma
 

Tendances (20)

AndApp開発における全て #denatechcon
AndApp開発における全て #denatechconAndApp開発における全て #denatechcon
AndApp開発における全て #denatechcon
 
Effective web performance tuning for smartphone
Effective web performance tuning for smartphoneEffective web performance tuning for smartphone
Effective web performance tuning for smartphone
 
アバター着せ替えアプリ開発におけるフロントエンド技術(Vue.js活用事例) #denatechcon
アバター着せ替えアプリ開発におけるフロントエンド技術(Vue.js活用事例) #denatechconアバター着せ替えアプリ開発におけるフロントエンド技術(Vue.js活用事例) #denatechcon
アバター着せ替えアプリ開発におけるフロントエンド技術(Vue.js活用事例) #denatechcon
 
Unityで本格戦国シュミレーションRPG 開発
Unityで本格戦国シュミレーションRPG 開発Unityで本格戦国シュミレーションRPG 開発
Unityで本格戦国シュミレーションRPG 開発
 
技術選択とアーキテクトの役割 (要約版)
技術選択とアーキテクトの役割 (要約版)技術選択とアーキテクトの役割 (要約版)
技術選択とアーキテクトの役割 (要約版)
 
Unity ネイティブプラグインの作成について
Unity ネイティブプラグインの作成についてUnity ネイティブプラグインの作成について
Unity ネイティブプラグインの作成について
 
DeNA内製ゲームエンジンの現状と目指す未来 #denatechcon
DeNA内製ゲームエンジンの現状と目指す未来 #denatechconDeNA内製ゲームエンジンの現状と目指す未来 #denatechcon
DeNA内製ゲームエンジンの現状と目指す未来 #denatechcon
 
Mobage/AndAppのSDK開発事例とSDKを作る際に知っておくべきこと #denatechcon
Mobage/AndAppのSDK開発事例とSDKを作る際に知っておくべきこと #denatechconMobage/AndAppのSDK開発事例とSDKを作る際に知っておくべきこと #denatechcon
Mobage/AndAppのSDK開発事例とSDKを作る際に知っておくべきこと #denatechcon
 
B2B2Cなヘルスケアサービスの作り方
B2B2Cなヘルスケアサービスの作り方B2B2Cなヘルスケアサービスの作り方
B2B2Cなヘルスケアサービスの作り方
 
ガールアックス マルチプレイのリアルタイム通信ゲーム開発入門
ガールアックス マルチプレイのリアルタイム通信ゲーム開発入門ガールアックス マルチプレイのリアルタイム通信ゲーム開発入門
ガールアックス マルチプレイのリアルタイム通信ゲーム開発入門
 
FFRK cocos2d xレイヤーの最適化
FFRK cocos2d xレイヤーの最適化FFRK cocos2d xレイヤーの最適化
FFRK cocos2d xレイヤーの最適化
 
DeNA の新しいネイティブ開発(パズル戦隊デナレンジャー)
DeNA の新しいネイティブ開発(パズル戦隊デナレンジャー)DeNA の新しいネイティブ開発(パズル戦隊デナレンジャー)
DeNA の新しいネイティブ開発(パズル戦隊デナレンジャー)
 
DeNA_Techcon2017_DeNAでのチート・脆弱性診断への取り組み
DeNA_Techcon2017_DeNAでのチート・脆弱性診断への取り組みDeNA_Techcon2017_DeNAでのチート・脆弱性診断への取り組み
DeNA_Techcon2017_DeNAでのチート・脆弱性診断への取り組み
 
FINAL FANTASY Record Keeper の作り方
FINAL FANTASY Record Keeper の作り方FINAL FANTASY Record Keeper の作り方
FINAL FANTASY Record Keeper の作り方
 
FINAL FANTASY Record Keeperのマスターデータを支える技術
FINAL FANTASY Record Keeperのマスターデータを支える技術FINAL FANTASY Record Keeperのマスターデータを支える技術
FINAL FANTASY Record Keeperのマスターデータを支える技術
 
Unityネイティブプラグインマニアクス #denatechcon
Unityネイティブプラグインマニアクス #denatechconUnityネイティブプラグインマニアクス #denatechcon
Unityネイティブプラグインマニアクス #denatechcon
 
爆速でAndroidアプリを ビルドするための仕組み DeNA TechCon #denatechcon
爆速でAndroidアプリを ビルドするための仕組み DeNA TechCon #denatechcon爆速でAndroidアプリを ビルドするための仕組み DeNA TechCon #denatechcon
爆速でAndroidアプリを ビルドするための仕組み DeNA TechCon #denatechcon
 
iOSレガシーコード改善ガイド〜マンガボックス開発における事例〜
iOSレガシーコード改善ガイド〜マンガボックス開発における事例〜iOSレガシーコード改善ガイド〜マンガボックス開発における事例〜
iOSレガシーコード改善ガイド〜マンガボックス開発における事例〜
 
マンガボックスのiOS10プッシュ通知導入事例
マンガボックスのiOS10プッシュ通知導入事例マンガボックスのiOS10プッシュ通知導入事例
マンガボックスのiOS10プッシュ通知導入事例
 
Iccw2010 sdk4 air
Iccw2010 sdk4 airIccw2010 sdk4 air
Iccw2010 sdk4 air
 

Similaire à ngCore engine for mobage platform

【17-A-1】Mobile Future Conference開会のご挨拶/世界へ挑むDeNAの「X-border」「X-device」戦略
【17-A-1】Mobile Future Conference開会のご挨拶/世界へ挑むDeNAの「X-border」「X-device」戦略【17-A-1】Mobile Future Conference開会のご挨拶/世界へ挑むDeNAの「X-border」「X-device」戦略
【17-A-1】Mobile Future Conference開会のご挨拶/世界へ挑むDeNAの「X-border」「X-device」戦略Developers Summit
 
Phone gap+javascriptスマホアプリ開発(入門編)
Phone gap+javascriptスマホアプリ開発(入門編)Phone gap+javascriptスマホアプリ開発(入門編)
Phone gap+javascriptスマホアプリ開発(入門編)Monaca
 
Firefox OS - Blaze Your Own Path
Firefox OS - Blaze Your Own PathFirefox OS - Blaze Your Own Path
Firefox OS - Blaze Your Own Pathdynamis
 
スマートフォンアプリケーション開発の最新動向
スマートフォンアプリケーション開発の最新動向スマートフォンアプリケーション開発の最新動向
スマートフォンアプリケーション開発の最新動向Tsutomu Ogasawara
 
UnityとBlenderハンズオン第7章
UnityとBlenderハンズオン第7章UnityとBlenderハンズオン第7章
UnityとBlenderハンズオン第7章yaju88
 
PhoneGapでWebアプリをスマホアプリ化
PhoneGapでWebアプリをスマホアプリ化PhoneGapでWebアプリをスマホアプリ化
PhoneGapでWebアプリをスマホアプリ化Takashi Okamoto
 
Windows 8 Developers カンファレンス
Windows 8 Developers カンファレンスWindows 8 Developers カンファレンス
Windows 8 Developers カンファレンスKaoru NAKAMURA
 
20110212 Silverlight から Bing Maps に触れる
20110212 Silverlight から Bing Maps に触れる20110212 Silverlight から Bing Maps に触れる
20110212 Silverlight から Bing Maps に触れるKenji Wada
 
NAO/Pepper 開発環境 について
NAO/Pepper 開発環境 についてNAO/Pepper 開発環境 について
NAO/Pepper 開発環境 についてTakuji Kawata
 
Dev camp2012jpn day2special
Dev camp2012jpn day2specialDev camp2012jpn day2special
Dev camp2012jpn day2specialKatsuhito Katoh
 
Developr Camp 2012 Japan Fall Day2 Special Session - Visual Studio 2012 で始める ...
Developr Camp 2012 Japan Fall Day2 Special Session - Visual Studio 2012 で始める ...Developr Camp 2012 Japan Fall Day2 Special Session - Visual Studio 2012 で始める ...
Developr Camp 2012 Japan Fall Day2 Special Session - Visual Studio 2012 で始める ...Developer Camp 2012 Japan Fall
 
HTML5 クロスプラットフォームアプリ開発の現実解
HTML5 クロスプラットフォームアプリ開発の現実解HTML5 クロスプラットフォームアプリ開発の現実解
HTML5 クロスプラットフォームアプリ開発の現実解Monaca
 
NPAPIを使ったandroid標準ブラウザの拡張方法
NPAPIを使ったandroid標準ブラウザの拡張方法NPAPIを使ったandroid標準ブラウザの拡張方法
NPAPIを使ったandroid標準ブラウザの拡張方法Naruto TAKAHASHI
 
IoT Edge and Serverless playground with Node.js ~ IoT EdgeとサーバレスをNode.jsで遊ぶ実験ノート
IoT Edge and Serverless playground with Node.js ~ IoT EdgeとサーバレスをNode.jsで遊ぶ実験ノートIoT Edge and Serverless playground with Node.js ~ IoT EdgeとサーバレスをNode.jsで遊ぶ実験ノート
IoT Edge and Serverless playground with Node.js ~ IoT EdgeとサーバレスをNode.jsで遊ぶ実験ノートKazumi IWANAGA
 
フロントエンドの技術で始めるデスクトップアプリ
フロントエンドの技術で始めるデスクトップアプリフロントエンドの技術で始めるデスクトップアプリ
フロントエンドの技術で始めるデスクトップアプリTomotaka Kusaka
 
.NET Coreから概観する.NETのOSSへの取り組み
.NET Coreから概観する.NETのOSSへの取り組み.NET Coreから概観する.NETのOSSへの取り組み
.NET Coreから概観する.NETのOSSへの取り組みKouji Matsui
 
Hardware control by .NET Core 3.1
Hardware control by .NET Core 3.1Hardware control by .NET Core 3.1
Hardware control by .NET Core 3.1Atomu Hidaka
 
Firefox mobile for android internals
Firefox mobile for android internalsFirefox mobile for android internals
Firefox mobile for android internalsMakoto Kato
 
Xamarin 概要 2014年08月版
Xamarin 概要 2014年08月版Xamarin 概要 2014年08月版
Xamarin 概要 2014年08月版Yoshito Tabuchi
 

Similaire à ngCore engine for mobage platform (20)

【17-A-1】Mobile Future Conference開会のご挨拶/世界へ挑むDeNAの「X-border」「X-device」戦略
【17-A-1】Mobile Future Conference開会のご挨拶/世界へ挑むDeNAの「X-border」「X-device」戦略【17-A-1】Mobile Future Conference開会のご挨拶/世界へ挑むDeNAの「X-border」「X-device」戦略
【17-A-1】Mobile Future Conference開会のご挨拶/世界へ挑むDeNAの「X-border」「X-device」戦略
 
Phone gap+javascriptスマホアプリ開発(入門編)
Phone gap+javascriptスマホアプリ開発(入門編)Phone gap+javascriptスマホアプリ開発(入門編)
Phone gap+javascriptスマホアプリ開発(入門編)
 
Firefox OS - Blaze Your Own Path
Firefox OS - Blaze Your Own PathFirefox OS - Blaze Your Own Path
Firefox OS - Blaze Your Own Path
 
スマートフォンアプリケーション開発の最新動向
スマートフォンアプリケーション開発の最新動向スマートフォンアプリケーション開発の最新動向
スマートフォンアプリケーション開発の最新動向
 
UnityとBlenderハンズオン第7章
UnityとBlenderハンズオン第7章UnityとBlenderハンズオン第7章
UnityとBlenderハンズオン第7章
 
PhoneGapでWebアプリをスマホアプリ化
PhoneGapでWebアプリをスマホアプリ化PhoneGapでWebアプリをスマホアプリ化
PhoneGapでWebアプリをスマホアプリ化
 
CordovaでAngularJSアプリ開発
CordovaでAngularJSアプリ開発CordovaでAngularJSアプリ開発
CordovaでAngularJSアプリ開発
 
Windows 8 Developers カンファレンス
Windows 8 Developers カンファレンスWindows 8 Developers カンファレンス
Windows 8 Developers カンファレンス
 
20110212 Silverlight から Bing Maps に触れる
20110212 Silverlight から Bing Maps に触れる20110212 Silverlight から Bing Maps に触れる
20110212 Silverlight から Bing Maps に触れる
 
NAO/Pepper 開発環境 について
NAO/Pepper 開発環境 についてNAO/Pepper 開発環境 について
NAO/Pepper 開発環境 について
 
Dev camp2012jpn day2special
Dev camp2012jpn day2specialDev camp2012jpn day2special
Dev camp2012jpn day2special
 
Developr Camp 2012 Japan Fall Day2 Special Session - Visual Studio 2012 で始める ...
Developr Camp 2012 Japan Fall Day2 Special Session - Visual Studio 2012 で始める ...Developr Camp 2012 Japan Fall Day2 Special Session - Visual Studio 2012 で始める ...
Developr Camp 2012 Japan Fall Day2 Special Session - Visual Studio 2012 で始める ...
 
HTML5 クロスプラットフォームアプリ開発の現実解
HTML5 クロスプラットフォームアプリ開発の現実解HTML5 クロスプラットフォームアプリ開発の現実解
HTML5 クロスプラットフォームアプリ開発の現実解
 
NPAPIを使ったandroid標準ブラウザの拡張方法
NPAPIを使ったandroid標準ブラウザの拡張方法NPAPIを使ったandroid標準ブラウザの拡張方法
NPAPIを使ったandroid標準ブラウザの拡張方法
 
IoT Edge and Serverless playground with Node.js ~ IoT EdgeとサーバレスをNode.jsで遊ぶ実験ノート
IoT Edge and Serverless playground with Node.js ~ IoT EdgeとサーバレスをNode.jsで遊ぶ実験ノートIoT Edge and Serverless playground with Node.js ~ IoT EdgeとサーバレスをNode.jsで遊ぶ実験ノート
IoT Edge and Serverless playground with Node.js ~ IoT EdgeとサーバレスをNode.jsで遊ぶ実験ノート
 
フロントエンドの技術で始めるデスクトップアプリ
フロントエンドの技術で始めるデスクトップアプリフロントエンドの技術で始めるデスクトップアプリ
フロントエンドの技術で始めるデスクトップアプリ
 
.NET Coreから概観する.NETのOSSへの取り組み
.NET Coreから概観する.NETのOSSへの取り組み.NET Coreから概観する.NETのOSSへの取り組み
.NET Coreから概観する.NETのOSSへの取り組み
 
Hardware control by .NET Core 3.1
Hardware control by .NET Core 3.1Hardware control by .NET Core 3.1
Hardware control by .NET Core 3.1
 
Firefox mobile for android internals
Firefox mobile for android internalsFirefox mobile for android internals
Firefox mobile for android internals
 
Xamarin 概要 2014年08月版
Xamarin 概要 2014年08月版Xamarin 概要 2014年08月版
Xamarin 概要 2014年08月版
 

Plus de Toru Yamaguchi

OAuth 2.0 Web Messaging Response Mode - OpenID Summit Tokyo 2015
OAuth 2.0 Web Messaging Response Mode - OpenID Summit Tokyo 2015OAuth 2.0 Web Messaging Response Mode - OpenID Summit Tokyo 2015
OAuth 2.0 Web Messaging Response Mode - OpenID Summit Tokyo 2015Toru Yamaguchi
 
技術選択とアーキテクトの役割
技術選択とアーキテクトの役割技術選択とアーキテクトの役割
技術選択とアーキテクトの役割Toru Yamaguchi
 
How to bake delicious cookie (RESTful Meetup #03)
How to bake delicious cookie (RESTful Meetup #03)How to bake delicious cookie (RESTful Meetup #03)
How to bake delicious cookie (RESTful Meetup #03)Toru Yamaguchi
 
JSON Based Web Services
JSON Based Web ServicesJSON Based Web Services
JSON Based Web ServicesToru Yamaguchi
 
Yapc asia 2011_zigorou
Yapc asia 2011_zigorouYapc asia 2011_zigorou
Yapc asia 2011_zigorouToru Yamaguchi
 
mbga Open Platform and Perl
mbga Open Platform and Perlmbga Open Platform and Perl
mbga Open Platform and PerlToru Yamaguchi
 
Inside mbga Open Platform API architecture
Inside mbga Open Platform API architectureInside mbga Open Platform API architecture
Inside mbga Open Platform API architectureToru Yamaguchi
 
Introduction OpenID Authentication 2.0 Revival
Introduction OpenID Authentication 2.0 RevivalIntroduction OpenID Authentication 2.0 Revival
Introduction OpenID Authentication 2.0 RevivalToru Yamaguchi
 
Introduction OpenID Authentication 2.0
Introduction OpenID Authentication 2.0Introduction OpenID Authentication 2.0
Introduction OpenID Authentication 2.0Toru Yamaguchi
 
The Security of OpenID Authentication 2.0
The Security of OpenID Authentication 2.0The Security of OpenID Authentication 2.0
The Security of OpenID Authentication 2.0Toru Yamaguchi
 
Customization of DBIC::Schema::Loader
Customization of DBIC::Schema::LoaderCustomization of DBIC::Schema::Loader
Customization of DBIC::Schema::LoaderToru Yamaguchi
 

Plus de Toru Yamaguchi (17)

OAuth 2.0 Web Messaging Response Mode - OpenID Summit Tokyo 2015
OAuth 2.0 Web Messaging Response Mode - OpenID Summit Tokyo 2015OAuth 2.0 Web Messaging Response Mode - OpenID Summit Tokyo 2015
OAuth 2.0 Web Messaging Response Mode - OpenID Summit Tokyo 2015
 
技術選択とアーキテクトの役割
技術選択とアーキテクトの役割技術選択とアーキテクトの役割
技術選択とアーキテクトの役割
 
How to bake delicious cookie (RESTful Meetup #03)
How to bake delicious cookie (RESTful Meetup #03)How to bake delicious cookie (RESTful Meetup #03)
How to bake delicious cookie (RESTful Meetup #03)
 
JSON Based Web Services
JSON Based Web ServicesJSON Based Web Services
JSON Based Web Services
 
Yapc asia 2011_zigorou
Yapc asia 2011_zigorouYapc asia 2011_zigorou
Yapc asia 2011_zigorou
 
mbga Open Platform and Perl
mbga Open Platform and Perlmbga Open Platform and Perl
mbga Open Platform and Perl
 
Inside mbga Open Platform API architecture
Inside mbga Open Platform API architectureInside mbga Open Platform API architecture
Inside mbga Open Platform API architecture
 
Introduction OpenID Authentication 2.0 Revival
Introduction OpenID Authentication 2.0 RevivalIntroduction OpenID Authentication 2.0 Revival
Introduction OpenID Authentication 2.0 Revival
 
OpenID Mobile Profile
OpenID Mobile ProfileOpenID Mobile Profile
OpenID Mobile Profile
 
Introduction OpenID Authentication 2.0
Introduction OpenID Authentication 2.0Introduction OpenID Authentication 2.0
Introduction OpenID Authentication 2.0
 
OpenID 2009
OpenID 2009OpenID 2009
OpenID 2009
 
Mobile Openid
Mobile OpenidMobile Openid
Mobile Openid
 
Client Side Cache
Client Side CacheClient Side Cache
Client Side Cache
 
The Security of OpenID Authentication 2.0
The Security of OpenID Authentication 2.0The Security of OpenID Authentication 2.0
The Security of OpenID Authentication 2.0
 
Customization of DBIC::Schema::Loader
Customization of DBIC::Schema::LoaderCustomization of DBIC::Schema::Loader
Customization of DBIC::Schema::Loader
 
Yadis/XRI and OpenID
Yadis/XRI and OpenIDYadis/XRI and OpenID
Yadis/XRI and OpenID
 
OpenID 2.0 Quick Note
OpenID 2.0 Quick NoteOpenID 2.0 Quick Note
OpenID 2.0 Quick Note
 

Dernier

デジタル・フォレンジックの最新動向(2024年4月27日情洛会総会特別講演スライド)
デジタル・フォレンジックの最新動向(2024年4月27日情洛会総会特別講演スライド)デジタル・フォレンジックの最新動向(2024年4月27日情洛会総会特別講演スライド)
デジタル・フォレンジックの最新動向(2024年4月27日情洛会総会特別講演スライド)UEHARA, Tetsutaro
 
クラウドネイティブなサーバー仮想化基盤 - OpenShift Virtualization.pdf
クラウドネイティブなサーバー仮想化基盤 - OpenShift Virtualization.pdfクラウドネイティブなサーバー仮想化基盤 - OpenShift Virtualization.pdf
クラウドネイティブなサーバー仮想化基盤 - OpenShift Virtualization.pdfFumieNakayama
 
自分史上一番早い2024振り返り〜コロナ後、仕事は通常ペースに戻ったか〜 by IoT fullstack engineer
自分史上一番早い2024振り返り〜コロナ後、仕事は通常ペースに戻ったか〜 by IoT fullstack engineer自分史上一番早い2024振り返り〜コロナ後、仕事は通常ペースに戻ったか〜 by IoT fullstack engineer
自分史上一番早い2024振り返り〜コロナ後、仕事は通常ペースに戻ったか〜 by IoT fullstack engineerYuki Kikuchi
 
モーダル間の変換後の一致性とジャンル表を用いた解釈可能性の考察 ~Text-to-MusicとText-To-ImageかつImage-to-Music...
モーダル間の変換後の一致性とジャンル表を用いた解釈可能性の考察  ~Text-to-MusicとText-To-ImageかつImage-to-Music...モーダル間の変換後の一致性とジャンル表を用いた解釈可能性の考察  ~Text-to-MusicとText-To-ImageかつImage-to-Music...
モーダル間の変換後の一致性とジャンル表を用いた解釈可能性の考察 ~Text-to-MusicとText-To-ImageかつImage-to-Music...博三 太田
 
CTO, VPoE, テックリードなどリーダーポジションに登用したくなるのはどんな人材か?
CTO, VPoE, テックリードなどリーダーポジションに登用したくなるのはどんな人材か?CTO, VPoE, テックリードなどリーダーポジションに登用したくなるのはどんな人材か?
CTO, VPoE, テックリードなどリーダーポジションに登用したくなるのはどんな人材か?akihisamiyanaga1
 
TataPixel: 畳の異方性を利用した切り替え可能なディスプレイの提案
TataPixel: 畳の異方性を利用した切り替え可能なディスプレイの提案TataPixel: 畳の異方性を利用した切り替え可能なディスプレイの提案
TataPixel: 畳の異方性を利用した切り替え可能なディスプレイの提案sugiuralab
 
NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)
NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)
NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)NTT DATA Technology & Innovation
 
AWS の OpenShift サービス (ROSA) を使った OpenShift Virtualizationの始め方.pdf
AWS の OpenShift サービス (ROSA) を使った OpenShift Virtualizationの始め方.pdfAWS の OpenShift サービス (ROSA) を使った OpenShift Virtualizationの始め方.pdf
AWS の OpenShift サービス (ROSA) を使った OpenShift Virtualizationの始め方.pdfFumieNakayama
 
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)Hiroshi Tomioka
 

Dernier (9)

デジタル・フォレンジックの最新動向(2024年4月27日情洛会総会特別講演スライド)
デジタル・フォレンジックの最新動向(2024年4月27日情洛会総会特別講演スライド)デジタル・フォレンジックの最新動向(2024年4月27日情洛会総会特別講演スライド)
デジタル・フォレンジックの最新動向(2024年4月27日情洛会総会特別講演スライド)
 
クラウドネイティブなサーバー仮想化基盤 - OpenShift Virtualization.pdf
クラウドネイティブなサーバー仮想化基盤 - OpenShift Virtualization.pdfクラウドネイティブなサーバー仮想化基盤 - OpenShift Virtualization.pdf
クラウドネイティブなサーバー仮想化基盤 - OpenShift Virtualization.pdf
 
自分史上一番早い2024振り返り〜コロナ後、仕事は通常ペースに戻ったか〜 by IoT fullstack engineer
自分史上一番早い2024振り返り〜コロナ後、仕事は通常ペースに戻ったか〜 by IoT fullstack engineer自分史上一番早い2024振り返り〜コロナ後、仕事は通常ペースに戻ったか〜 by IoT fullstack engineer
自分史上一番早い2024振り返り〜コロナ後、仕事は通常ペースに戻ったか〜 by IoT fullstack engineer
 
モーダル間の変換後の一致性とジャンル表を用いた解釈可能性の考察 ~Text-to-MusicとText-To-ImageかつImage-to-Music...
モーダル間の変換後の一致性とジャンル表を用いた解釈可能性の考察  ~Text-to-MusicとText-To-ImageかつImage-to-Music...モーダル間の変換後の一致性とジャンル表を用いた解釈可能性の考察  ~Text-to-MusicとText-To-ImageかつImage-to-Music...
モーダル間の変換後の一致性とジャンル表を用いた解釈可能性の考察 ~Text-to-MusicとText-To-ImageかつImage-to-Music...
 
CTO, VPoE, テックリードなどリーダーポジションに登用したくなるのはどんな人材か?
CTO, VPoE, テックリードなどリーダーポジションに登用したくなるのはどんな人材か?CTO, VPoE, テックリードなどリーダーポジションに登用したくなるのはどんな人材か?
CTO, VPoE, テックリードなどリーダーポジションに登用したくなるのはどんな人材か?
 
TataPixel: 畳の異方性を利用した切り替え可能なディスプレイの提案
TataPixel: 畳の異方性を利用した切り替え可能なディスプレイの提案TataPixel: 畳の異方性を利用した切り替え可能なディスプレイの提案
TataPixel: 畳の異方性を利用した切り替え可能なディスプレイの提案
 
NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)
NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)
NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)
 
AWS の OpenShift サービス (ROSA) を使った OpenShift Virtualizationの始め方.pdf
AWS の OpenShift サービス (ROSA) を使った OpenShift Virtualizationの始め方.pdfAWS の OpenShift サービス (ROSA) を使った OpenShift Virtualizationの始め方.pdf
AWS の OpenShift サービス (ROSA) を使った OpenShift Virtualizationの始め方.pdf
 
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)
 

ngCore engine for mobage platform

  • 1. ngCore Enginefor mobage platform Toru Yamaguchi <zigorou@dena.jp> DeNA,co.,ltd
  • 2. My Profile Identity @zigorou, =zigorou, d:id:ZIGOROu Community Perl, Shibuya.pm, Yokohama.pm Japan Perl Association 理事 Company Social API Developer
  • 3. Abstract What is ngCore? Architecture of ngCore ngCore Social APIs Development and Performance Conclusion
  • 4. 1. What is ngCore? ngCore Engine for mobage platform
  • 5. Cross devices ngCore とは ソーシャルアプリ向けの SDK です devices Android, iOS, Flash Development Language? Java でもなければ Objective-C でも C++ でもありません 実際のコードはJavaScriptで記述します そして同じコードで全てのデバイスに対してアプリケーション開発が出来ます
  • 6. Cross platform 日本にも海外にも挑戦出来る モバゲータウン (Japan) mobage (English speaking countries) ngmocoの platform をベースにしたもの apps Deveiceごとの一般的なダウンロード (App Store, Android Market) 但し会員のベースは上記のプラットフォームがベースとなる
  • 7. Features (1) Live updating アプリケーションロジックは JavaScript なので通常の native app とは違い動的な更新が可能 開発時はnode.jsで出来た配信サーバーと ngCore native app が通信して動的に更新可能
  • 8. Features (2) For Social Apps API designs is based on OSAPI (OpenSocial 1.1) c.f.) social.common.people.get(params); For Social Games Push notification Game recommendation User to user challenge 対戦申し込み Geo Location
  • 9. Features (3) Game developments (1) 2D Sprite Engine, 2D Geometry Engine 特に2Dのゲームに特化している Native UI Bindings Android Widget (Android), WebKit (iOS), Flash Physics Based on Box2D 物理演算は各デバイスのネイティブコードで行われるため、高速に動作する
  • 10. Features (4) Game developments (2) Audio マルチチャンネル、ミキシング Multi touch Motion アクセロメータ、ジャイロスコープ、コンパス、GPS Text and Fonts rendering
  • 11. Features (5) Standards (1) JavaScript の Module システムはCommonJS Modules 1.0 に準拠 Library exports.add = function() { /* impl */ }; Usage var add = require(‘math’).add;
  • 12. Features (6) Standards (2) デバイスごとの JavaScript Engine はECMAScript 3rd準拠 V8 Engine (Android), JavaScriptCore (iOS) 部分的に ES Harmony の機能も使えます! getter/setter varobj = { get a() { /* getter */ }, set a() { /* setter */ } } Array.prototype forEach, map, reduce … https://github.com/ry/node/wiki/ECMA-5-Mozilla-Features-Implemented-in-V8
  • 13. Case of success ngmocoによる豊富な成功例 http://www.ngmoco.com/games.php
  • 14. 2. Architecture of ngCore ngCore Engine for mobage platform
  • 15. Common Architecture (1) デバイスごとに共通なこと コンポーネントは3階層 Game (開発者が書く JavaScript) NgWebEngine (開発者が使う JavaScript Library) NDK (JavaScript と Native Component との bridge 部分) NgWebEngineは共通のインターフェースを持つが、NDK はデバイスごとに存在する
  • 16. Common Architecture (2) ngCore Engine Game Implementation (JavaScript) Native UI Component Native App (NDK) Game JavaScript (Library + Engine) Native Browser Component Privileged JavaScript (Library Engine) Native Graphic Component Platform Implementation (Privileged JavaScript) NgWebEngine Native NDK
  • 17. Android Environment ngCore Engine for Android Game Implementation (JavaScript) Android Widget Native App (NDK) Graphics Physics XHR Game JavaScript (V8) WebKit Privileged JavaScript (V8) OpenGL Platform Implementation (Privileged JavaScript) NgWebEngine Native NDK
  • 18. iOS Environment ngCore Engine for iOS Game Implementation (JavaScript) UIKit Native App (NDK) Location XHR Game JavaScript (UIWebView) WebKit Privileged JavaScript (UIWebView) OpenGL Platform Implementation (Privileged JavaScript) NgWebEngine Native NDK
  • 19. Application building Android 記述した JavaScript コードをサーバーに上げるだけで済む 端末に ngCore がアプリとしてインストールされていれば OK iOS 技術的には Android と同じ事が可能 が、しかし iOS license terms の制約により要パッケージング
  • 20. Android application Application ( JavaScript ) Application code をサーバーにアップするだけでコードの配信やバージョンの更新が可能 Live updating Platform Web Server Application Application ( JavaScript ) Application ( JavaScript ) ngCore Engine for Android
  • 21. iOS application iOSの場合はiOS license terms の制約によって、パッケージングしなければならない。 Application ( JavaScript ) Platform Web Server Application Application ( JavaScript ) Application ( JavaScript ) ngCore Engine for Android
  • 22. 3. ngCore Social APIs ngCore Engine for mobage platform
  • 23. Caution! まず始めに このセクションの話は将来の話です ここで説明した内容がそのままリリースされるかを保障する内容ではございませんので予めご了承下さい
  • 24. Overview (1) Based on OpenSocial OSAPI like な interface social.common.people.get(params) people, appdata, profanities (NG Word) は共通APIとして使える予定です
  • 25. Overview (2) Platform dependencies APIs Activity, Avatar, BlackList (モバゲーのみ) Leaderboards (mobageのみ?) この辺りはまだだいぶ未確定
  • 26. People 出来る事 ユーザーのプロフィール取得 (nickname など) ユーザーの友達一覧取得 ユーザーの”ゲーム内での”友達一覧取得 ゲームの中だけでの友達と言う概念
  • 27. Appdata Key-value persistent storage application-user ユニークなデータを platform 側に保存出来ます デバイスを変更したとしても同一ユーザーであればデータを引き継げる
  • 28. Activity (モバゲー) Friends Activity Timeline 現在はアプリケーションに関連する友達の状況がタイムラインとしてリアルタイムに表示されます API としてはこれらの Activity を post する事が出来ます
  • 29. Leaderboards (mobage) リアルタイムランキング ランキングの為のスコア送信 現在のランキングを取得 実はアプリケーションを横断したリアルタイムランキングはとてもコストが高い処理 platform 側で引き受けます! この機能はモバゲーでもいずれ?
  • 30. Others 今後の Social API OpenSocial に無い独自のAPIを platform (WAP/PC/Smart Phone)として色々出す予定です 位置情報やゲーム特化系 コミュニティ系 既存の OpenSocial base の API も機能拡張していきます
  • 31. 4. Development and Performance ngCore Engine for mobage platform
  • 32. Development (1) 基本的な流れ SDK にnode.jsで出来た配布サーバーが添付されてます 基本は環境ごとの ngCore app が既にあるので、配布サーバーにある JavaScript を編集し保存してから、アプリのリロードをすればすぐに確認出来ます
  • 33. Development (2) Check Edit and Save Native Build Build Create apk Install apk Run app Android with NDK Check Edit and Save Build Create apk Install apk Run app Android Standard Edit and Save Check Reload Android with WebView Edit and Save Check Reload ngCore for Android
  • 34. Performance (1) 特に気になる描画まわり 以下の実装で比較 ngCore + JavaScript JavaScript + Canvas Java OpenGL ES 1.0 実行環境 HTC Desire / Desire HD Android OS 2.2 ngCore SDK 1.0
  • 35. Performance (2) 64x64 の Tank を動かすアプリ Tank の数に応じた fps を計測 Java OpenGL ngCore JavaScript + Canvas
  • 36.
  • 37.
  • 38. Performance (5) ベンチマーク結果より 概ね Canvas < ngCore < Java 但し Tank の数によってはまだまだ ngCore に改善の余地あり まだ開発中なので今後改善していきます 遅くなってしまっている原因としては JavaScript <-> ngCore のやりとりがオブジェクトごとに発生しているからと思われる この辺りはまとめてハンドリング出来れば速度の向上が見込まれる
  • 39. 5. Conclusion ngCore Engine for mobage platform
  • 40. Cross devices and platform Cross devices ngCore + JavaScript Cross platform ゲーム好きなユーザーの集まるモバゲータウン 世界へのチャレンジとしてのmobage
  • 41. ngCore features Game 特化 We rule など既にヒットしているタイトルで実際に使われている安心感 これを platform として出すメリットは、パートナーからの feedback でよりゲーム開発しやすい SDK に成長する可能性があると言う事
  • 42. JavaScript Web 系開発では必須言語 今までの経験をそのまま活かせる Standard ES Harmony, Common JS, DOM like な UI, OSAPI like な Social API 極力覚える事が少なくなる様に
  • 43. ngCore Development Live update Android では Web development のような感覚での application 更新が可能 これは開発時に実装し、確認すると言う try and error が素早く繰り返せる 慣れれば2, 3ヶ月に1本開発くらいの事は出来そうです。
  • 44. Dive into ngCore! Please visit DeNA developer site http://developer.dena.jp/mbga/ こちらで順次お知らせしていきます まずは法人登録を! 我々とともに世界をビジネスの舞台にしていきましょう。 ご清聴ありがとうございました