ずんぐりむっくり追加2016/07/29

顔検出で遊ぶ Androidアプリ「おかしな(ヵ_ォ)カメラ」をバージョンアップしました。
エフェクトをひとつ追加しています。

新エフェクト「ずんぐり

ずんぐりエフェクト

体を背景ごと縦に縮小することによって、「顔拡大」とは違ったずんぐりむっくりした感じになります。
なるべく足のあたりまでフレームに収めた方が、それらしく見えるでしょう。


表に見える部分の変更はこのエフェクト追加くらいですが、中身は大きく変わっています。
↓ここからプログラム的な話

今まで顔検出APIには Camera.FaceDetectionListenerを使用してきましたが、このバージョンでは Google Play Serivcesの FaceDetectorを使っています。
注:
元々SDKにある android.media.FaceDetector ではなく、

com.google.android.gms.vision.face.FaceDetector の方です。


FaceDetectorでは検出した顔の傾き等を取得できるので、前のバージョンよりはもう少し正確に顔の範囲を得ることができるようになっています。(FaceDetectionListenerの方でも目や鼻の位置を取得できるはずなのですが、少なくとも自分の持っている端末ではサポートされていません)

顔検出APIとして高機能である FaceDetector ですが、アプリ開発時は使えませんでした。
使い物にならない、という意味ではなく本当に使用不可ということです(isOperational()で引っかかる)。
ライブラリを後からダウンロードするようになっているのですが、そのライブラリにバグがあって配信されていなかったようです(元は英語での説明なのでちょっとニュアンスは怪しいです)。

Google Play Servicesが 9.2になって使えるようになって良かったのですが、おかげで顔検出部分だけではなく、エフェクト描画部分もかなり作り直しになってしまいました。



顔で遊ぶ2016/07/11

変形させるとか交換するとか、顔の画像を加工するアプリが流行っていますが、
そんな流行りにちょっと乗ってみようかと、顔検出を使ったカメラアプリを作ってみました。


おかしな(ヵ_ォ)カメラ

「おかしな顔」のカメラ、ではなく
おかしな「顔カメラ」です。

いろいろ顔加工アプリがある中、
・エフェクト自体に動きがある
・入力映像の動きを活かす
といったように、動きを意識しているのが特徴です。
そうでもないエフェクトもありますが。


エフェクト例

顔拡大
顔拡大

顔を大きくします。着ぐるみのようです。


放射状
放射状

ジャジャーン!
ってな感じのエフェクトです。


顔ストレッチ
顔ストレッチ

↑この絵だとちょっとわかりにくいかもしれませんが、
顔の中身を上下左右に変形させます。


他にも顔を順番に並べていく「顔並べ」や、顔部分の色の階調を落とす「減色マスク」などふざけたエフェクトがありますが、
ネーミングセンスの無さもあって言葉では伝わりづらいので、ぜひアプリをダウンロードしていろいろ試してみてください。

「おかしなカメラ」更新2016/04/26

カメラからの入力映像をリアルタイムに加工して表示するAndroidアプリ「おかしなカメラ」を更新しました。



おかしなカメラ


例によって広告の差し替えですが、
例によってそれだけというわけにもいかないのでエフェクトを追加しました。

エフェクト「減色」

エフェクト「減色」

エフェクト「減色」

画像をデジタル16色に減色する、ありがちなエフェクトです。


あとはキャプチャする静止画や動画の向きを、端末の向きに合わせるようにしました。
地味な変更ですが、案外手間取りました。

VideoViewを setRotationしてもちゃんと回転しないと思ったら、中身は SurfaceViewでした。そりゃ回らんわ。
おかげで、MediaPlayerと TextureViewで書き直すはめに…

「初音演歌」更新2016/04/22

Androidアプリ「初音演歌」を更新しました。



初音演歌


ゲームではないので GooglePlayゲームには対応していませんが、いろいろと機能が追加されています。
広告の差し替えだけでバージョンアップするのもなんなので。

◇縦画面対応
「画面回転」を押すと、画面の縦横が切り替わります。
画面が小さくなりますが、端末を横に向けるのが面倒な方は縦画面でどうぞ。

◇履歴機能
過去20個分のタイトルを記憶しています。

◇ブラウザからの起動


Androidで「初音演歌」をインストールしている方は↑のリンクをクリックしてみてください。タイトル「やがて 想い出坂」でアプリが起動します。
それ以外の方は Playストアに飛びます。

リンクはこんな感じ…

 intent://enka/#Intent;scheme=raseene;package=jp.so_raseene.hatsune_enka;S.title=[タイトル(URLエンコード)];end

例:「やがて 想い出坂」
 intent://enka/#Intent;scheme=raseene;package=jp.so_raseene.hatsune_enka;S.title=%E3%82%84%E3%81%8C%E3%81%A6%20%E6%83%B3%E3%81%84%E5%87%BA%E5%9D%82;end

アプリで演奏を開始したときにリンクを含んだHTMLタグの例をクリップボードにコピーするので、それを使うこともできます。


「おすすめアプリ」絡みで明示的インテントとかいうのを調べたら(「おすすめアプリ」は暗黙的の方ですが)何か使えそうだったので、試しに導入してみました。

パズル「ISHIKARI」更新2016/04/18

パズルゲーム「ISHIKARI」の更新です。
これで、今あるゲームは全て GooglePlayゲームに対応しました。



ISHIKARI


このゲームは GooglePlayゲームへの対応以外にも追加・変更した機能があります。

◆一時停止
石を回転を光線の発射後もできるようにしました。
そして今まで画面をタッチしている間停止していたのを、タップで一時停止、もう一回タップで再開という操作に変更しました。

これによって、途中まで石を消して一旦停止、残った石の状態で再考して石を回転・再開という解き方ができるようになります。

こうしてしまうと、新ギミックとして壊れない反射板や2回以上当てなければいけない反射板みたいなのが作りづらくなってしまうのですが、今のところそんな予定はないので解き易さ優先です。

◆ヒント機能
ヒントを解除すると、解答パターンに従って
 当たっても光線の進行方向を変えない反射板
を石から取り除きます。
これで、操作する石が減るので解き易くなります。

ステージによっては、ほとんど反射板が消えないこともありますが、逆に
 残っている反射板は、必ず光線の進行方向を変える
というのもヒントになります。

最後に消える石は反射板が無いものになる(元々ない場合もあります)ので、そこから逆に見ていくという解き方もできます。

それでも後半のステージなんかはヒントを使っても難しいですし、パズルは考えることを楽しむものなので、あまりヒントには頼らずに挑戦してみてください。