2014年1月18日土曜日

戦車のモデルを公開しました


戦車のモデルを公開しました。Fumotrimから、Tools -> Fumotrim Storageを開いて、戦車のページを開くと、ロードボタンが表れるので、それを押すと、Fumotrimにロードされます。

http://storage.fumotrim.net/model/114

次期バージョン(1.7.2)の有料版では、アイソメトリック図の、解像度指定と、アンチエイリアスに対応予定です。上のような、高解像度のアイソメトリック図を出力可能です。

解像度は、幅10,000ピクセルまで対応していますが、スペックが低い端末で描画しようとすると、大変なことになる可能性があるので注意w まあ、一応検証してみようと思うけど...

アンチエイリアスの精度は、SDKまかせなので、上図のようにブロックのエッジが露出してしまいます。用途に合わせて、ご利用ください。

SuefaceViewの起動タイミング

SuefaceViewを使用する際に、SurfaceHolderのCallbackが、どのタイミングで呼ばれるのか気になったので、ちょっと実験してみた。

2014年1月17日金曜日

Androidの色選択ダイアログのデモ


Android SDKには、色を選択するダイアログが無いので、使えそうなものをネットで探していたけど、なかなか用途に合ったものが見つからなかった。というわけで去年、自分で作ってみた。一年かけて少しずつ改良したので、現在のバージョンを公開します。使用はご自由に。

RGBの値をスライダーで細かく制御可能で、モノクロにも対応しています。

http://fumobox.com/file/demo/ColorEditorDemo.zip

ソースをgithubにも置きました。こっちが最新版です。

https://github.com/fumobox/simple_color_chooser_demo

Eclipseのプロジェクトファイルになっています。Android 4.2以上推奨。

使い方は簡単。MainActivityにイベントリスナーを追加して、下のようなコードを呼び出すだけ。
ColorEditDialogFragment.show("Color", _colbox.getColor(), MainActivity.this, MainActivity.this);

2014年1月14日火曜日

戦車を作ってみよう

アプリの宣伝用に、何かインパクトがあるものを作ってみようと思い、戦車を作ってみた。

モデルにした戦車は、Tigerという有名なWW2の戦車。車体が角張っていて曲面が少ないので作りやすい。ただし、転輪の部分は2重になっているので、作りにくい。

戦車の画像だけでは形状がよくわからないので、World of tanksの3Dモデルを見ながらコツコツ作成して、5時間ほどで完成。(途中、ゲームで遊んでしまうので、もっと時間かかってるけど...)




アイソメトリック図はこんなかんじ。


このモデルをSTLでエクスポートして、Google Deiveを経由して、AndroidからWindowsへデータを渡し、Blenderでレンダリングしてみた。下の画像ではマテリアルを消して描画しているが、STLでエクスポートした場合は、マテリアル情報も保持される。レンダリング設定は、ほぼデフォルトのままで、Ambient Occulusionを加えた。ブロックが結合されていないモデルは、そのままの状態では、描画負荷が高いので、モデルを全て選択した状態で、Ctrl+Jを押して、オブジェクトを結合させると良い。



それから、2種類のモデルを作って、Photoshopに貼り付けて、明るさを微調整。右側のモデルは、ブロック間のギャップを残したままレンダリングした画像で、左側はブロックを結合してレンダリングした画像。アプリ内のエクスポート設定で、ギャップの有無を選択できる。


総ブロック数は14,514個。旧型Nexus7でもサクサク描画できる。8分木ブロックは、複雑なモデルでも少ないブロック数で表現できるという利点がある。