Android版KITT更新2013/12/18 17:26


Androidアプリの 「KITT scanner」 をバージョンアップしました。
http://www.ne.jp/asahi/sk/k2000/c_android/kitt/

想像以上に世界各国でダウンロードしてくださっており、同時に「ライブ壁紙じゃねえぞゴルァ」的な感想も多く頂いているのでw まずはライブ壁紙機能を追加。

KITT scanner for Android

ホームに合わせて、好みの位置(上下)にスキャナーを移動できます。
(※但し、ライブ壁紙は有償版のみ付いています)

更に、ライトの色を見てお判りのとおり、KARRモードを追加しました。
これも要望が多かった機能。

メニューからKITTとKARRを一発で切り替えられます。
フォンフォンの音ももちろん違います。

KITT scanner for Android

なにかしらライブ壁紙のアプリを一度作ってみたいと思っていたので、丁度良い機会でした。 雛形できたし、なんか色々作れそう。
.

Unity4を試してみた2013/06/06 21:42


ここ2年ほど、あれこれ触ってる余裕が無かったぶん、最近は色々と新しいものを体験してみているのですが、今回は「Unity」です。

Android開発で以前からUnityには興味はありましたが、当初調べた時はapk出力が有料で個人開発者にはちょっと敷居が高いかなと感じていたので(汗) ちなみに、今月中は円高最後のセールで13万でUnity Proが買えるようです。(来月から15万)


Unity――。
短時間で3Dゲームが作れると評判なのは知っていましたが、なるほど、実際に使ってみて納得です。 物理エンジンが優秀で、そのあたりの難しい部分はほぼコーディング不要。 3Dゲーム開発では数学的な知識が不可欠ですが、これは無くても作ることができる(あるに越したことは無いけど)。
ゲームオブジェクトを完全に一つの物体として扱える手軽さは素晴らしい。 アニメーション機能も強力で、人物が段差を乗り越えるといった面倒な動作もUnityが全部吸収してくれるので開発者は目的の作業に集中できる。

プログラミングが必要な部分といえば、やや特殊なカメラワークとかプレイヤーの操作とかゲーム進行など基本的なロジック部分だけ。(もちろん拘り出したらいくらでもコードは増えるけど) あとは3D的に重くなりやすい設定を把握してるかどうかでクォリティが変わってくるか――その辺はプラットフォームも含めた経験の数だけ身に付く領域ですな。


とりあえず基本を覚えるため、いくつか作ったサンプルのうちの一つがコレ。
こちらを参考にさせて頂きました。
(個人的にはJSよりもC#の方が好きなのでC#で書いてます)

Unity4

空間のど真ん中に微動だにしないCubeをドンと置いて、Directional lightを置いて、カメラに快晴模様のSkyBoxを充てて、Cube内にEmptyなGameObjectを置いてMain Cameraを子にして、Update毎に自分をグルグル回すスクリプト(たった1行)を書いてEmptyに充てる。

たったそれだけで、宙に浮かぶ箱を中心に360度グルグル回るアニメーションが出来上がります。 Androidでも確認。 うまく描画クォリティを落として速度をキープしてくれている。 広大な空間を創造できるなんてスバラシすぎます(>▽< )


ということで少し慣れてきたので、次のステップは当然、自力で無からの構築です。 折角なので物理エンジンを利用した何かを作りたかったので、それほど複雑な動きはいらないエアホッケーを作ってみることにしました。

Unity4

3D空間の編集操作に慣れてくると、この程度ならば空間作成は30分程度、細かい調整に1~2時間・・・手探りでパラメータを覚えながらなのでそのくらいかかってるけど、慣れた人なら迷わずパッパッと設定して終わってしまうのかもしれません。
書いたスクリプトは、マウスカーソルに追従するパドルのみ。

ネット上に先人の情報がたくさんあるとはいえ、Unityを初めてインストールしてから2日目でここまで作れる手軽さは本当に脱帽です。

そんなわけで感心していたのも束の間――
ついに問題が2点発生しました!

1.プレートにパドルを体当たりさせるとプレートが何故か真上にすっ飛んで行く。
2.パドルの移動が速いと当たらない。

たぶんUnity使いには常識的な話なんでしょうけど、初めて体験した身では、なるほどと・・・調整に時間がかかったのはこの部分です。 Rigidbody、Colliderあたりの設定を色々変えて、とりあえず1の真上にすっ飛んでいくのだけは回避できましたが、あとは2の問題。パドルをゆっくり動かすとパコンと弾くのだけど、速いと素通りする。Collision Detectionを連続に変えたりしても変わらず。

そもそもマウスで動かしてるんだから物理エンジン的には瞬間移動してるように見えてるわけで連続も何もない。 だからマウスを文字通りAddForceで追いかけるように組んだら今度は連続体として扱ってくれたのだが、加速・減速の概念がプラスされてフラフラ面倒なことに。Dragで抑え込むことはできるけど、追従が素直じゃないし遅い。 物理エンジンに影響を与える瞬間移動があればそれに越したことはないのだけど、そこまでは調べきれていない。

そもそも、あまりにも物理エンジンが優秀すぎて「使わなきゃ」とか、コード量も「できる限り少なく」みたいな脅迫概念があったのですが、こういうのは適材適所、時と場合ですな。平面アクションのエアホッケー程度なら普通の2次元ロジックで全部やらせた方が良さそう。

というか悟りました。
これ、平面ゲームを作るのに激しく使える!Σ("□";)
ちょっと立体っぽく見せたいゲームなんかはベストかも。
素材が多くてグラフィックにも困らないし。

あと地味に感じたUnityの難点はMonoDevelopでしょうか・・・。
Eclipse以上に素直じゃないカーソル移動します。 もっともVSに関連付けるのも手ですけどVS2010以降はエディタが素直じゃないんだよな・・・VS2008は候補が出ないし、うーむ。
.

KITT Scanner for Android2013/05/29 17:21


先日に引き続き、Androidアプリ公開。

▼ KNIGHT RIDER - KITT Scanner for Android

KITT Scanner

これ、実は2年前に作った試作(というかHelloWorld!!)を、もう少し公開できる状態まで作り込んだバージョンだったりします。 ちなみに2年前の記事はこちらです。

▼[2011/06/21] Androidアプリを開発してみる

試作動画をYouTubeに上げたら、意外と閲覧者がいて(それもほぼ海外)、どこからダウンロードできる? ってコメントが書かれたり。 GooglePlayを見てみると、あんまりリアルっぽいのも無さそうだし、丁度良いかなと。

KITT Scanner

最初はPC-9801のMS-DOS版スクリーンセーバーから始まって、WindowsスクリーンセーバーJavaApplet電子工作でスキャナー実作、そしてAndroidアプリ――もうKITTのスキャナー作りまくりです。 もはや生き甲斐みたいな(^_^;
.

Wave Developerを公開2013/05/24 00:23


Android用アプリ  「Wave Developer」 Ver1.00 を公開。

Wave Developer

簡単に説明すると、複数の波形を合成できる、音波発振器です。
上の画像はアプリのアイコン。 画面は(↓)こんな感じです。

Wave Developer

この2年半、ちょっと無駄なことに時間を潰しすぎて相当予定が遅れましたが、(正直なところ、ちょっとどころの話ではありませんけど)、ようやく最近まとまった時間が作れたので本格的にAndroid開発を開始。

といってもGooglePlayへの公開目的ではない、ちょっとしたプログラムならこれまでも幾つか作ってきたので開発は少しは慣れていましたが、今回は公開を前提とした習作になるので、色々と重めの課題を付けてみた。

ちなみに、今回作ることになった波形生成アプリ(波形ジェネレータ)ですが、実は個人的に用途があってGooglePlayを探したのですが、近いアプリはいくつもありましたが目的に叶うアプリがたまたま見つからなかったので(探しきれなかったと言うべきか)、これは自作にはうってつけの課題かと。

まあ、このアプリに用がある人はあまりいないでしょう。 私みたいにDTMFを鳴らすとナイトライダー気分をゾクゾクするほど味わえる人とかには超お薦めですw

Wave Developer

アプリの開発自体は1週間で終わりすこぶる順調でしたが、完成後に想像を絶するほど厄介な問題にブチ当たって2日ほど消費した。 国内外問わずネットでも完璧にクリアしたって人は見当たらなかった。 誰もが不完全な妥協策ばかり口ずさむ。 でも公開アプリを作る多くの開発者がブチ当たる問題なのだから何か方法はあるだろうと思って試行錯誤した結果、とりあえず自分なりには完璧と言えるレベルでクリアできたので二度とここで手間取ることはないだろう。 そのための経験。

てことで、面白いものを・・・面白いものを!もっともっと作って経験値を増やしていきたい。 Palmのように息も短くないし、Windowsやガラケーで開発が止まってるゲームなんかも着手したいかも。

・・・と書いたら気になったので、ガラケーエミュレータのMEXAを久々に開いたら実機でメモリ不足の難題をクリアできず開発を断念したゲームが無事動いたw Androidも当然メモリバカスカ食うのは落ちるけど、ガラケーほどシビアじゃないのが嬉しいところ。

ガラケーゲーム画面

とりあえず、個人的に大きな一歩。
資格試験が続くので、勉強もそろそろしないと。
.

AndroidでCANモニター2013/03/20 19:24


AndroidとBluetooth機器製作の勉強がてら、以前作成したUSB&Windows版のCANモニターAndroidに移植してみました。

AndroidでCANモニター

AndroidでCANモニター

で、接続はBluetooth。 デュアリスに下の回路(CAN-Bluetoothコンバータ)を接続するだけでAndroidに無線でCANデータがぞくぞくと流れ込んで来ます。

CAN-Bluetoothコンバータ

ぞくぞくと、あまりにも膨大な量のデータが一斉に流れ込みすぎてAndroidの方が悲鳴をあげる・・・Androidアプリ軽量化の独習にはもってこいの素材です(^_^;

▼こちら動画
▼こちら軽量化後

最終的にはコレが目的ではなく、Androidでデジタルタコを表示したいだけなのですが、それはAndroidアプリ製作の領域であって、実現性については上記2枚目の写真の通り既に達成していたり。

Bluetoothを利用した機器が製作できて、Bluetoothを使ったAndroidアプリが作れることが判ったので、OK。