2015年振り返り

なんだかんだで色々あったのでシケモク名義で公開できるものだけ記録しておく。

 

2015年

 独立して2年目。1年目は受諾開発と自社開発が50:50くらいだったけど、今年は80%くらいは自社開発に充てることができた。

作りたいものをつくって生活していくというのは、独立した時の目標だったので今のところ、なんとか生きながらえてる模様。

まぁ、不安定なことには変わりないですけどね 、、 (`・ω・´)

 

1ー3月

年初は元気がある

ティラノスクリプトLive2D対応リリース

f:id:shikemokumk:20151207014944p:plain

 

ティラノスクリプト×Live2Dを使った作品

f:id:shikemokumk:20151207015454p:plain

LKproject 様 

 

Live2Dはノベルゲームにとって新しい風を吹き込みそうなので今後も積極的にサポートしていきたい技術です。

 

ティラノビルダー2のリリース

デザインと機能を全面的に作りなおした。

Before

f:id:shikemokumk:20151207015930p:plain

After

f:id:shikemokumk:20151207020003p:plain

 

デザイナ&コーダーさんに素晴らしいお仕事をしていただけた。

大規模な改修になるのでやろうかどうか迷ったけどコレはやってよかった。

 

ジョーカスクリプト Live2D対応

 

 

結構大変だった記憶が、、、、

Live2Dのプログラマーさんともコミュニケーションをとって、実装などを細かく見ることができたので勉強になった。

 

海外版TyranoBuilderのリリース

3月下旬に海外版のティラノビルダーをリリースすることができた。

 

f:id:shikemokumk:20151207021120p:plain

これ、リリース直後のキャプチャで、その時はあんまり気にしてなかったけど個人開発のソフトウェアがSTEAMのトップページに掲載されるって、今考えると結構すごいことだったんじゃないだろうか。。。

 

海外販売の手続きや海外ユーザへの最適化など、非常に学べたことが多かった。おかげさまで、ポジティブな評価を頂けてるので、海外でもノベルゲームが広まるように活動していきたい。

4ー6月

ガス欠

ティラノビルダーV1.3 メジャーアップデート 

クリックでゲーム開始

クラウドセーブ

・Live2Dをティラノビルダーで使えるようになる。

・キャラクター配置ツール など

 

 

専門学校の先生

をやった。4ヶ月くらい。週1〜2

PHPHTML5といったWeb系の技術を中心に教えてくれということで、中途半端なものでは学生さんに申し訳ないので、かなりの時間を使って準備して、できるかぎり仕事で役に立つことに絞って授業を組み立てた。

学生さんはみんな優秀で良い人ばかりでした。

ただ、先生のお仕事はかなり体力を使う(1日しゃべりっぱなし)準備にも相当時間をとられるので、結構ヘトヘトになった。

今は人を育てるよりも、自身のアウトプットを増やしていく時間を確保すべきと思ったので一旦離れさせてもらった。

 

7ー9月

仕込みの期間

あと、GTMFとかイベントやらに出展させていただく機会も多かった気がする。

PanicROOM 突然の急上昇

忘れかけた頃にやってくる

 

謎の上昇。 最終的に30位くらいまでいった。

臨時の広告収入もあって助かったぁー。

 

10ー12月

収穫の秋

TyranoGameJAM 2015

海外でゲーム制作ジャムを開催した。

海外ではアドベンチャーゲームは、まだまだ発展途上だし、作品あつまるのかなぁと不安もあったけど、最終的に多くの作品を投稿していただくことができた。

 

日本では、恋愛ADV主体だけど海外では全く違う方向で進化していきそうなので、今後の海外製ノベルの拡大を確信しました。

 

3D脱出ゲーム tetora -きつねこどもと遺跡探検- リリース

Unityを使った3Dゲームをリリースした。

3D脱出ゲーム tetora -きつねこどもと遺跡探検-

f:id:shikemokumk:20151207115027j:plainf:id:shikemokumk:20151207115036p:plain

f:id:shikemokumk:20151207115145p:plainf:id:shikemokumk:20151207115242p:plain

 

4月くらいに作り始めて基本的な部分は1ヶ月くらいで作り終えてたんだけど、いろいろあってなかなかリリースできずにいた。

最終的には私の稚拙な説明にも関わらず、すごく可愛いイラストを書いていただけたので想定していたよりもクオリティが高い作品になった。

技術的には3Dゲームの作り方が一通り習得できたのが大きい。

 

ジョーカースクリプト Unity5.2.2対応とOSS

Unityさんバージョンアップの度に動かなくなるの、勘弁して下さい〜。

 

ティラノビルダー V140 リリース

 

2回目のバージョンアップ。

夏のうちにこつこつ仕込んでいたもの。 

 

ティラノスクリプト V400 リリース

ずっとやりたかったけど、後回しにしてたものとか結構つめこんだ。

音量調整とかリリース当初から言われてたけど、作ってみるとそんなにむずかしくなかった。。。

 

ティラノライダー リリース

http://tyrano.jp/adv/next/rider

 ティラノスクリプトデバッグツールをリリースした。

変数ウォッチやらリアルタイムにタグを監視できるなど、開発が効率化できる。

f:id:shikemokumk:20151207120801p:plain

結構、技術的にも面白いことをしてるのでブログとかで書き残しておきたい。

 

VR時代のノベルゲーム開発

VRノベルについては1年以上前から着想はあって、DK2も購入していたんだけど中々モチベーションが上がらず、ほこりを被ったままだった。

年末、アドベントカレンダーの力を借りることで、最後の力を振り絞ってアウトプットを出すことができた。

shikemokumk.hateblo.jp

早速、嬉しいご連絡もあったので、来年は本格的に作りこんで生きたい。

 

技術のお話

今年使ったプログラミング言語の比率

JS:50% 

C#:45%

PHP:5% 

 

会社員の時は、90%くらいサーバーサイドのお仕事だったのに、、、

逆に来年はサーバーサイドの割合が増えそう。 

あと、VR・3Dグラフィックス周りの学習に時間をかけたい。

 

まとめ

堕落した生活を送ってると思ってたんだけど、書き出してみると結構色々あったなと。

落ち込んでいる時でも、ユーザさんから「ゲーム完成しました」みたいな報告を頂く度に元気になってたと思う。本当に背中を押してもらえました。

ティラノスクリプト 製作テクニックwiki

wikiといった技術的なバックアップなども、大変心強く思っています。

本当に感謝です。

 

あとは、大手企業のプロモーションに使っていただいたり、商業的に大きな成功を収めた作品なども生まれ始めた年だったので、すごいのは作者さんなんだけどツールも認めていただけたみたいで嬉しかった。。

 

 

 

来年は

「技術によって創作活動を支援し、クリエイターが輝く未来を作る」

ここから軸足をぶらさずに、楽しく開発していきたい。

VRも本格的に登場するし、ゲーム周りも地殻変動がおこっていておもしろくなってきた。

本腰をいれて目標を前進させる1年にしたい。

あとは個人でやれる規模ではなくなってきたので、色々考えないとというところです。

 

本年も大変お世話になりました!

来年も何卒宜しくお願いします

 

 

VR時代のノベルゲーム開発

この記事は Oculus Rift Advent Calendar 2015 - Qiita の19日目の記事です。

qiita.com

 

ノベルゲームって?

ストーリーを読ませることに特化したゲームジャンルの1つです。

日本では人気のあるジャンルで現在でも沢山のゲームが発表され続けています。

 

ノベルゲーム例 (クリックで進みます)

 

VR時代のノベルゲーム

 VR技術を知った時、一番相性が良いのはノベルゲームじゃないかなと感じてました。

「ディスプレイが邪魔だぁ!」という悲痛な驚嘆に対して、ディスプレイの向こう側へ誘う事ができる。それがVRノベルゲームです。

 

例えば、喫茶店のシーンなどでは、本当に目の前にキャラクターが座ってシナリオが進むような状態を作ることができるということですね!

 

とまぁ、かなり可能性を感じるのですが、現実に実装する際の技術的な問題や実用化してゲームを作っていく際にどのようなスキームで進めていけば良いのかなど、見えてこない部分が多かったので、動くものを作って検証してみました。

 

ストーリーの進行

従来のノベルゲームだと以下のような感じ

f:id:shikemokumk:20151215183925p:plain

画面下に固定のメッセージ枠があって、そこにシナリオが表示されていく。

 

で、VRでもテキストは綺麗に視認できるので普通にテキストを配置すれば良い感じになるんじゃないかと思って作ったのが以下。

 

 

カメラの前にTextMeshを貼り付けて、クリックでテキストを読ませています。

結論からいうと、この方法はダメでした。

テキストだけを読み続けると問題ないのです。

ただVR空間においてはシナリオをよむテキスト枠とゲーム舞台(3Dモデル)の間を交互に見る必要があり、これが手前(文字)→奥(舞台)→手前(文字)→(奥)という感じで、目の奥行きをその度に調整する必要があるのでゲームに没入しにくいという印象でした。

 というわけで、ストーリーはナレーションの声やキャラクターのボイスで進行していくことにします。

 

VRゲームのシナリオファイルの作り方

テキストを使用しないVRノベルといっても、基本はタイムラインがあって、キャラクターの表情変更や声、演出のタイミングなどを指定していく必要があります。

これは旧来のノベルゲームの製作方法と変わらないと気付きました。

演出のタイミングや表情の変更などを全てプログラミングで書いていくというのは現実的ではないでしょう。

非エンジニアがボイスのタイミングや表情、モーションなどを確認しながら簡単につくっていく仕組みが必要じゃないかと思います。

 

ということで、非エンジニアでもVRノベルゲームを作れる。なおかつ

既存のノベルゲーム作者さんが、VR対応のノベルゲームを作る

という方針で設計と実装しました。

 

吉里吉里/KAG タグを使ってVRゲームを作る

現在ノベルゲームを作っている人は吉里吉里/KAGに代表されるような記述方式でゲームを作成しています。

これは、シナリオ部分とゲームに動きを与えるタグを組み合わせることで、動きのあるゲームが作れるというものです。

例えば

[キャラクター登場]

こんにちは

[BGM変更 ]

[背景変更]

 のように、タグに到達すると、音楽を変えたり場面を変えるような言語で、エンジニア以外の人でも簡単につかえます。

 

 

VRノベルゲーム用のタグ設計

タグ解析や進行などの仕組みは、自分が公開しているジョーカースクリプトというUnityのノベルゲーム開発ツールがあるので、そこからゴソッと移植してきました。

マクロや変数管理、シナリオ制御などは既存のノウハウをそのまま流用できる。

従来のノベルゲーム製作手法を拡張してVR用のタグを追加していきます。

 

キャラクター登場

キャラクターをゲームに登場させるためには以下のようなタグを打ちます。

3D空間なので、x y z の3座標をしていしているところが今までのノベルゲームと異なります。名前にunitychan という一意の値を付与しています

;キャラクターを定義

[chara_new name=unitychan storage=unitychan x=0 y=0 z=-2.5]

;キャラクターを表示
[chara_show name=unitychan]
[wait time=3 ]
[p]

 

さらに、キャラクターをクリック毎に立ち位置を変えるタグは

[chara_pos name="unitychan" x=2.5 y=0 z=-2 time=5 ]
[p]
 

 のように記述するようにしました。

これでゲーム開始してみます。
 
 

 

 

簡単なタグ表記だけでVR空間にキャラクターが登場して歩きました。

 

ボイス再生

ボイスの再生も、従来のノベルゲームと異なる概念が必要になります。それは誰が喋ったかという指定が必要 ということです。

VR空間ではキャラクターの立ち位置によって、音の聞こえてくる方向が変わってきます。自分自身の首の方向によっても聞こえ方が異なります。

以下のように、タグを書くことで自動的にどのオブジェクトから音が出ているのかを再生できるようにしました。

[chara_voice name="unitychan" storage="voice1" ]

 

こんな感じで、簡単にVR空間でも適切な音を再生できます。

 

視線待ち命令タグ

VRノベルゲームで起こり得ることが、プレイヤーの視線がドコに向いているかわからないという事があります。

重要なシーンが展開されているのに、プレイヤーが逆方向を向いていて見逃してしまう。なんてことが起こりかねません。

そこで、プレイヤーの視線がある方向に向くまでストーリーを進めないタグを用意しました。以下の様に記述することで、視線がキャラクターに向いた時だけ、シナリオが進みます。

*waiteye
[wait_eye name="unitychan"]
[chara_voice name="unitychan" storage="voice1" ]
[chara_anim name="unitychan" state="anim1"]
 
[wait time=3]
[chara_anim name="unitychan" state="anim1" condition="false"]
 
@jump target="waiteye"

 

この wait_eye タグに到達すると、unitychan に視線が向くまでストーリーを進めません。

これにより、プレイヤーの視線誘導が簡単になり重要な部分の見逃しなどを防ぐことができます。

このシナリオタグを実行すると以下の様な動きになります。

 

 

 

wait_eye タグの部分で視線を待ち、Unityちゃんに視線が向いた時にシナリオが進みます。その先のchara_animタグ(好きなタイミングでモーションを指定できる)が発火してモーションが再生されます。

つまり、視線が向いた時だけ、アニメーションを行なうという動きになります。

jumpタグでラベルloopに戻るので、なんども繰り返されます。

 

この仕組をつかうと、ノベルゲームなどでは重要な物語分岐でも新しい表現ができそうです。例えば、敵に拳銃で恋人が撃たれそうになっている時

「恋人をかばう」

「敵を撃つ」

のような選択肢が表示されるとします。

従来のノベルゲームだとマウスでクリックで選択しますが、

VRノベルだと、その瞬間

「恋人に視線を向けている」

「敵に視線を向けている」

のような状況を判定して、物語が分岐していくようなゲームも作れそうです。

 

プレイヤーの周りを歩かせる

最後にまとめとして、プレイヤーの周りを歩かせる動きを書きます。

以下の短いタグで実現できます。

*loop
[chara_pos name="unitychan" x=1.5 y=0 z=-1.5 time=5 ]
[wait time=6]
[wait_eye name="unitychan"]
 
[chara_pos name="unitychan" x=1.5 y=0 z=1.5 time=5 ]
[wait time=6]
[wait_eye name="unitychan"]
 
[chara_pos name="unitychan" x=-1.5 y=0 z=1.5 time=5 ]
[wait time=6]
[wait_eye name="unitychan"]
 
[chara_pos name="unitychan" x=-1.5 y=0 z=-1.5 time=5 ]
[wait time=6]
[wait_eye name="unitychan"]
 
@jump target="loop"

 

再生すると以下のような動きをします。

目線が向くと自分の周りを歩いてくれます。

 

VR空間上の複雑なシナリオも、簡単なタグを組み合わせて定義できるので修正や調整なども容易にできるかと思います。

 

まとめ

今回は、従来のノベルゲームの開発手法をVRのノベルゲームで使用できないか。というところから実装してみました。

結果として、今回紹介したタグだけでも組み合わせれば、かなり多彩なゲームが作れそうだという感触を得ることができました。

もちろん、今の状態ではVRゲーム向けに必要なタグは全然足りませんが、

吉里吉里やティラノスクリプトを使っている、2Dノベルゲーム開発者の方でも、違和感なく作れそうですよね?)

 

簡単なスクリプトでVR空間を定義できるというのはメリット多いと感じました。

 

というわけで

自分自身もVRアプリを作りたいと思っていたのですが、このタグによるVRアプリは実用に耐えれると感じました。

なので、着々と拡張を進めていく予定です。

今回はUnityで作りましたが、UE4でも試してみてうまく行けそうな方で実装してみたいと思います。

 

目標はVRコンテンツ製作の敷居をぐっと下げるツール です。

ただ、一番の壁はやはり、3Dモデリングだと思っているのですが、以下の様なプロダクトも準備されているようなので、VRノベルの敷居が下がる日は確実に到来しそうです。

 

gigazine.net

 

製品版のRift 発売日あたりに公開したいな〜。

来年の目標の1つとしてみます。

 

せっかくなのでちょっと募集も。。。

このプロダクトを作るにあったって3Dモデリング、アニメーションなどをお手伝いしてくれる方を募集します。

完全に個人的なプロジェクトなので、報酬的には厳しい(学生さんのアルバイトくらい)しかお支払い出来ないのですが、3Dを勉強中の方など、興味がある方がいらっしゃいましたら、お気軽にお声がけください。

 

 

明日は udasan_koubou さんの 女の子にケーキを作ってもらう方法 です

 

 

 

 

名前欄に変数を表示する方法

ティラノスクリプトでは

 

#ゆうこ

今日はいい天気だね

 

 のように記述数すると、名前欄に「ゆうこ」と表示してくれます。

 

ただ、この部分にプレイヤーの入力した値のような変数を使いたい場合があるかもしれません。

そのような場合は以下の方法で実現できます。

 

[iscript]
f.name = "ゆうこ";
[endscript]

#&f.name

 

 のように記述できます。

もしくは

[chara_ptext name=&f.name ]

 のようにしても実現できます。

 

[chara_ptext]タグの省略形が

#ということです。

 

 

 

ティラノスクリプトV4.00 をリリースしました。

久しぶりのメジャーアップデートとなるVersion 4.00 RC をリリースしました。

最終的なテストを経て、正式版とさせていただく予定です。

 

f:id:shikemokumk:20151203130308p:plain

 

この記事では、新機能についてザックリとご紹介させていただきます。

 

音量調整機能

本バージョンから、音量周りの機能が強化されました。

[playbgm] [playse] [fadeinbgm] に

volume というパラメータが追加されました。

ここに 0〜100 の間の数字を指定することで再生時の音量を調整することができます。

(デフォルトは100。0を指定するとミュートになります)

■例

[playbgm storage="music.ogg" volume=50 ]

 

さらに、ゲーム全体のデフォルト音量を指定する場合は [bgmopt] [seopt] タグが追加されました。こちらでボリュームを指定するとゲーム全体の音量に反映されます。

コンフィグ画面などではこのタグを使ってゲーム全体の効果音やボリューム等を調整できます。

ちょっと、改造すればキャラクター別の音量を調整したり、ONとOFFの切り替えも簡単に実装できるかと思います。

 

さらに、本バージョンより [fadeinbgm] [fadeoutbgm] [fadeinse] [fadeoutse]タグを正式にサポートします

ただし、スマホブラウザから閲覧した場合やスマホアプリの場合、有効にならないケースがあるのでご注意下さい。 

 

CGモード 回想モード 

これまでも、自作することで用意できましたが、本バージョンより標準機能としてバンドルしてメンテナンスしていくことにしました。

さらにゲームにあわせて改造しやすいように、ティラノスクリプトを変更するだけでカスタマイズできるようになっています。

 

簡単な使い方

シナリオフォルダの中に cg.ks と replay.ks があります。

これが、CGモードと回想モードの画面になっています。

f:id:shikemokumk:20151203114137p:plain

 

タイトル画面からボタン で cg.ks と replay.ks に飛ばすだけで良いですね。

詳しい使い方は、ティラノスクリプト公式サイトの解説を確認してください。

 

コンフィグ画面

ゲーム全体の設定を調整する機能も標準で用意します。

f:id:shikemokumk:20151203114723p:plain

 

今後も機能追加を行いますが、現在標準で用意されている機能としては

・BGM音量調整

・SE音量調整

・文字速度調整

・オート速度調整

・未読スキップのONとOFF

となります。

こちらは、config.ks ファイルとして用意されていますので

簡単に設定項目を追加したりカスタマイズできます。

 

既読管理

本バージョンより、既読管理が標準機能として使えるようになりました。

前提として system/Config.tjs の

autoRecordPageShowing を trueにしておく必要があります。

 

既読スキップ

未読の部分はスキップできないようにする機能です。

また、スキップ中に未読の所にくると、スキップを停止させることができます。

[config_record_label skip=false]

これで、未読の所はスキップできなくなります。

コンフィグ画面ではON、OFFを切り替えるボタンが標準で搭載されています。

 

■未読部分の文字

既読、未読をわかりやすくするために

既読文章の色を変更することができます。

[config_record_label color="0x4444FF" ]

このようにしておくと

未読

f:id:shikemokumk:20151203121044p:plain

既読

f:id:shikemokumk:20151203121048p:plain

いかがでしょう。

タグをちょっと追加しておくだけで、未読管理が簡単にゲームに実装できます

記憶領域は吉里吉里と同様にラベルを1つの固まりとして記憶します。

現状、1行毎に記憶しているわけではありませんのでご注意ください。

*既読管理用のラベルは他の制御ラベルとは別に用意するのが良い。ジャンプ先のラベルなどは既読として扱われない→修正検討中

 

オート機能

本バージョンよりオート機能をサポートします。

オート機能とはクリックして進めなくても一定間隔で自動的にゲームを読み進めてくれる機能です。

 

使い方

 タグから制御することもできます

[autostart] オートモード開始

[autostop] オートモード停止

さらに

[autoconfig]  を使うとオートモードの細かい調整ができます。

[autoconfig speed=200

speed で次に進むまでの時間をミリ秒で指定することができます。

読むのが早い人はこの数字を小さくしておくと良いですね。

 

[autoconfig clickstop=true ]

画面クリックでオートが停止するかどうかを指定します。

false を指定すると画面クリックでもオートが止まりません。

 

あと button タグのrole に auto を指定できるようになりました。

メッセージボックスなどに常にオート切り替えを表示したい場合に利用できます。

 

セーブ方法の多様化

今までは、ローカルストレージへの保存のみでしたが、3種類の方法を選択できるようになりました。

Config.tjs の  configSave  を指定します。

webstorage:従来のとおり、webstorage領域に保存します。

webstorage_compress : 圧縮、暗号化したうえでwebstorage領域に保存します。

file :PC限定。ゲームフォルダに外部ファイルとしてセーブファイルを出力します。

 

状況にあわせて使ってくださいね。

 

ティラノライダー

f:id:shikemokumk:20151203123023p:plain

 

本バージョンよりデバッグツールの「ティラノライダー」が利用できるようになりました。

ゲーム開発をより効率的に行なうことができるツールです。

主な機能を紹介させていただきます。

 

タグ進行のリアルタイム監視

 

f:id:shikemokumk:20151203123245p:plain

 

ゲーム進行をリアルタイムに確認しながら、実行されていくタグを眺める事ができます。 タグを見ながらデバッグができるので、問題点の修正などが効率的に行えるようになるでしょう。

ジャンプ機能

デバッグ中に自由にシナリオやラベルへジャンプすることができます。

 

リアルタイムタグ実行機能

プレイ中のゲーム画面に、自分の好きなタグを割り込ませて実行することが出来る機能です。例えば、ある場面で、このタグを実行するとどうなるか?といったことがシナリオを書き換えなくても簡単に確認できます。

 

変数ウォッチ機能

f:id:shikemokumk:20151203123701p:plain

 

ゲームをプレイしながら変数の状態を確認することができます。

さらに、ティラノライダーから編集してリアルタイムにゲームに反映することもできます。

 

素材プレビュー機能

プロジェクトに配置した素材を用途ごとにグラフィカルに確認できます。

 

f:id:shikemokumk:20151203124653p:plain

 

実行途中のゲーム画面に好きな素材を割り込ませて表示することができます。

 

f:id:shikemokumk:20151203124757p:plain

 

実行中のゲーム画面に素材を配置して、ドラッグ&ドロップで位置を調整することができます。素材の配置位置やタイミングなどを効率的に決定することができます。

 

キャラクターの表情確認機能

ゲームで登録されているキャラクターの表情名や画像をグラフィカルに確認できます。

f:id:shikemokumk:20151203125206p:plain

 

パッケージング機能

ティラノスクリプトのプロジェクトを

・ブラウザ形式

Macアプリ

Windowsアプリ

スマホアプリ

へワンボタンで出力することができます。

 

その他

・全体的な実行速度や安定度の向上。

・[clearstack ]タグの追加。スタック領域を開放します。タイトル画面などに入れておくとセーブデータを節約できます。

 

以上がバージョン4.0 の主な新機能になります。

現在 2015/12/4 現在はRC版となります。

しばらくは、機能変更や修正などがあるかもしれませんが、ぜひ、使っていただいてフィードバック頂けると嬉しく思います。

 

それでは、よろしくお願い致します。

 

 

 

 

 

 

 

 

 

【2015年冬版】phonegapでアプリ化する(Android版) 

☆専用のアプリ化用ツール「ティラノプレイヤー」が公開されています。

この記事の方法は古いですので、ご注意ください。

最新のアプリ化手順は以下となります。

 

shikemokumk.hateblo.jp

 

===================

 

ティラノスクリプトで作成したゲームをアンドロイドアプリ化する手順を説明します。

iphoneアプリ化についてはこちら

 

解説で確認した環境は windows10 です。

Macでも各自で対応するものをインストールして実施いただければ支障はないかと思います。

なにかありましたら、ご連絡いただけると幸いです。

 JDKのインストール

 最初にJDKをインストールします。

以下のURLにアクセスしてください。

Java SE Development Kit 8 - Downloads

Accept License Agreement にチェックを入れて

ご利用の環境に応じて、ファイル名のリンクを選択してください。

f:id:shikemokumk:20151102161652p:plain

 

ダウンロードが完了したら、インストールを実施してください。

 続いて、JDKにパスを通します。

 コントロールパネル → システム → システムの詳細設定

から環境変数を開きます

 

f:id:shikemokumk:20151102162213p:plain

 

 システムの環境変数に新規追加します。

f:id:shikemokumk:20151102162703p:plain

変数名:JAVA_HOME

変数値: C:\Program Files\Java\jdk1.8.0_65

 

この変数値は、ダウンロードしたバージョンや環境によって異なる場合がありますのでそれぞれの値に置き換えてください。上のまま書いてもうまく動きません。

 

 AndroidStudioのインストール

つづいて、以下のURLにアクセスします。

Download Android Studio and SDK Tools | Android Developers

 

f:id:shikemokumk:20151102163114p:plain

 

DOWNLOAD ANDROID STUDIO をクリックして

ダウンロードを開始します。

 

ダウンロードが終わったらインストールを開始してください。

インストール中の設定は特に変更せずデフォルトのまま進めてください。

 

設定が完了したら、AndroidStudioを起動してください。

注:ここでエラーがでて起動できない場合はJDK環境変数の設定が間違っている可能性がありますので、再度確認してください。

 

起動したら、エミュレーターでの動作を確認してみます。

まず、[File]-[New]-[NewProject] から適当なAndroidプロジェクトを作成してください。

その後、

[Tools]-[Android]-[SDK Manager] を選択します。

SDK Tools のタブを選択して

Intel x86 Emulator Accelerator(HAXM installer) 」にチェックを入れて Applyを押してください。

 

f:id:shikemokumk:20151102170219p:plain

 

これだけでは、インストールは終わりません。

AndroidSDKがインストールされているフォルダを開いて intelxaxm-android.exe を実行してインストールしてください。

それぞれの環境により場所は変わりますが

<各自のパス>\AndroidSdk\extras\intel\Hardware_Accelerated_Execution_Manager

フォルダの中にダウンロードされているかと思います。

この後、AndroidStudioを一回閉じてください。

 

 NodeJSのインストール

つづいて、NodeJSをインストールします。

https://nodejs.org/en/

にアクセスして v5.0.0 Stable をダウンロードしてインストールしてください。

 

 

f:id:shikemokumk:20151102170825p:plain

 

PhoneGapのインストール

コマンドプロンプトを起動してください。

黒い画面が表示されるかと思いますのでそこで

 

npm install -g phonegap

 

と打ち込んで最後にエンターを押してください。

成功したら、そのままコマンド画面で

phonegap create mygame 

 

と打ちます。次に

cd mygame 
phonegap plugin add cordova-plugin-media
phonegap build android

 

と続けて実行します。

これで、アンドロイドプロジェクトが作成され、アプリ化する準備が整いました。

 

ティラノスクリプトをアプリ化する

さて、いよいよティラノスクリプトのゲームをアンドロイドアプリ化します。

 先ほどのコマンド画面で 

explorer . 

 

 と打ってください。するとWindowsエクスプローラーが開くかと思います。

以下のような mygame フォルダの中身が表示されるのを確認してください。

f:id:shikemokumk:20151102172502p:plain

 

つづいて、アプリ化したいティラノスクリプトのプロジェクトフォルダを用意します。

ティラノスクリプトのプロジェクトは以下のような構成になっているかと思います。

 

f:id:shikemokumk:20151102172632p:plain

この index.htmlをエディタで開いて、</ body> の直前に以下のコードを追加してください。

<script type="text/javascript" src="cordova.js"></script>
<script type="text/javascript" src="js/index.js"></script>

 

保存します。

その後、プロジェクトフォルダの中身のファイルをすべて選択してmygameのフォルダの中の

\mygame\platforms\android\assets\www

フォルダの中へすべて上書き保存してください。

 

f:id:shikemokumk:20151102180317p:plain

 

これで、アプリ化の準備は完了です。

 

エミュレーターで動作確認

それでは、アプリ化をテストしてみましょう。

再度、AndroidStudioを起動してください。

[File]-[New]-[Import Project]を選択して

先ほど作成しておいた、「mygame」フォルダを選択します。

その後の確認事項については、デフォルトのまま進めてください。

 

プロジェクトが開けたら、

[Run]-[EditConfigurations]を選択します。

その後開いた画面において

①左上の+ボタンを押してください。(AndroidApplicationを選択)

②NameはTest 

③Moduleはandroidを選択

④Emulator は 適当に表示されるものを選択。

(なにも表示されない場合はAVDManagerでインストールしてください)

OKを押します。

 

f:id:shikemokumk:20151102173716p:plain

 

 最後に今回作成したものを選択されていることを確認して再生を押してください

 

f:id:shikemokumk:20151102173916p:plain

 

起動には時間がかかります。

しばらく待ってください。

 

f:id:shikemokumk:20151102174012p:plain

 

こんな感じでエミュレーターが起動して、ティラノスクリプトのゲームが始まりましたね。

上部の電池バーや横向き、縦向きの設定なども簡単にできますので作成したゲームに合わせて設定してください。

 

実機で確認する

実機で確認する方法も簡単です。

まず、お手持ちのAndroid端末で開発者モードを有効にしてください。

以下の、ブログが詳しく書かれています。

 

Android Studioでアプリを実機で動作確認する - Android Studioでアプリ開発!

 

USBデバックを有効にします。

つづいて、先ほどと同様に

[Run]-[EditConfigurations]を選択します。

その後開いた画面において

①左上の+ボタンを押してください。(AndroidApplicationを選択)

②NameはJikkiTest 

③Moduleはandroidを選択

TargetDevice のところを USB deviceに指定

f:id:shikemokumk:20151102174849p:plain

OKを押したあと、実行してください。

f:id:shikemokumk:20151102175308j:plain

実機で表示されましたね。

 

注:実機がPCで認識されない場合はWindowsマシンにドライバが入っていないことが多いです。テストで使用した実機のドライバをWindowsにインストールして認識させてください。デバイスドライバで!みたいなものが出ている場合、ドライバが必要です。

 

以上でティラノスクリプトAndroidアプリ化は完了です。

GooglePlayなどで販売したい場合は apk を生成してアップロードするだけです。他のブログで解説などが山程ありますので、割愛します。

 

(要望があれば、apkとGooglePlay への提出も書くかも)

 

お疲れ様でした。