Palmiのデモアプリを作ったので、その全てを公開します。
本日の発表に合わせて、デモアプリを開発しました。
その過程を簡単にご紹介します!
本日発表の通り、10月末からVisual Studio環境が公開されます。
ここでご紹介する開発手順は、”それまでに開発する場合の”手順です。
Visual Studio環境が使えることで、開発環境部分はIDE(Visual Studio)が代替してくれるはずです。
すぐに開発を始めたい場合は、Palmiデベロッパー登録の際にお伝えいただくと、現時点の開発環境を提供して頂けるそうですよ。
さて、Palmiアプリの開発は、Palmi Gardenから始まります。
このページからサンプル・開発手順・開発ツールのダウンロードなどが可能です。
公開されていないので、デベロッパー登録時に開発環境の申請が必要です。
Palmi Garden > デベロッパー > 特技を作ってみよう
なお、Palmiのアプリ開発には、Windows PC(Vista以降)が必要です。
また、C++でのコーディングと、Ubuntu Linuxをコマンドラインから触る必要があります。
このあたりは、IDE(Visual Studio)で代替できるようになると思います。
※念のため、VMware Playerはこちら(15/09/14時点の最新版は7.1.0)
環境ができたら、[アプリケーションの開発手順を詳しく知る]のPDFにならって、開発を進めます。
できること一覧は[SPC APIリファレンス]を見れば把握できます。
以下、今回作ったサンプルアプリを例に、順を追ってご説明します。
Ubuntuのイメージファイルは、Palmiとほぼ同じ環境だそうです。
/usr/local/src/spc内に、サンプルコードが沢山用意されているので、そちらも参考になります。
サンプルコードやAPI一覧などを見ながらコーディング
まず、タイムアウト時間やLEDファイルの指定をしているところ。
全体の流れを無限ループさせています。
この後、可愛い動きの指定や終了処理をしています。
モーション・LED・発声・会話を一通り使っていますが、ソース本体は100行程度です。
例えば会話なら、waitForAnswerという関数だけで、一通りの例外処理なども勝手に行ってくれます。
応答がなければ、「うーん、無視?じゃないですよね?」みたいな事(ランダムで複数あり)を勝手に言ってくれたりします。
Palmiの世界観を”真似て”例外処理を作り込む必要はありません。
ソースは丸ごとこちらからダウンロードできるので、ご興味のある方はダウンロードしてみてください!
Palmi Application Studioでコンフィグファイルを作成する
トリガーワード(この言葉を話しかけられたらアプリを起動する)などを設定します。
必要に応じて、プログラムから呼び出すモーションファイル・LEDファイルを作る
ポーズは以下の流れで作成します。
- 手足首の位置を座標で指定してポーズを作成
- ポーズをタイムライン上に配置してシーケンスを作成
- シーケンスを配置してシナリオを作成
LEDは、画面上で確認しながら作成できます。
ファイルをVMware Player上のUbuntuに転送して、コンパイル
最新のVMwareなら、ドラッグ&ドロップでいけるはず。
srcディレクトリでmakeします。
エラーが出たら、ソースを修正します。(ここが一番時間がかかる)
ファイルをWindowsに転送して、Palmi Application Studioでパッケージ
プログラムのパッケージ内容は、プログラムファイル(cpp)・コンフィグファイル(xml)・トリガーワードファイル(ukb)・LEDファイル(任意)・モーションファイル(任意)です。
これらをPalmi Application Studioの[インストール]画面からZIPファイルにパッケージします。
Palmi Application StudioからPalmiに転送
その下の[Palmiにインストール]ボタン一発でイントールは終了です。
今回は統合環境が無かったですが、環境公開後は、ワンストップで開発ができると思います。
ロビくんのように、アプリがなくても十分会話が成立しますし、スマートロボットとして、自分でアプリを作ったり、ストアからダウンロードすることもできます。つまりこれ、理想形じゃないですか?
なにより、Palmiの動きはかわいい!正義!