初音ミク XAML化計画~キーボード入力で口と目を動かす


口を動かすには、モーフィングをプログラムでやればできないことはないと思うけど、そこまでやる元気はない。とりあえず六角のデータで複数の顔の表情をインポートして、そのWPFの切り替える方法でどこまでいくか試してみた。

テスト実行用クリックワンス

http://uchukamen.com/WPF/MikuClickOnce/publish.htm

操作方法

  • 右クリックでドラッグ→回転
  • 左シフトを押しながら右クリックでドラッグ→移動
  • ホィール→拡大縮小
  • 左コントロールを押して右クリック→回転、位置のリセット
  • キー
    A…あ、I…い、U….う、E…え、O…お
    1…スマイル その1(にこっ)
    2…スマイル その2(笑)
    3…スマイル その3 (ウィンク)
  • 方向矢印で目の上下左右

image

実装的には、こんな感じで、いくつかの表情を遠くの空間に置いておく。表情のTransform を切り替えてあげるだけで、一瞬で顔を切り替えてしまう方法。ここで、 off は、遠くの空間、trans は顔の場所の Transform。
private void Grid_KeyDown(object sender, System.Windows.Input.KeyEventArgs e)
{
    if (e.Key == System.Windows.Input.Key.A)
    {
        faceNow.Transform = off;
        faceNow = faceA;
        faceA.Transform = trans;
    }
  ・・・以下、同様
}

やっていることは単純だけれど、とりあえず何らかの事象を受けて、表情などを変えることができる。モーフィングに比べればかなり硬いけれど、使えないことはない。

ということで、WPF をつかった新時代にふさわしいインターフェースの名前は・・・

  • Miku Interface
  • Moe Interface
  • Vocaloid Interface
  • Humanoid Interface

そうそう、これをつくりながら、Nexus 6 を作りたかったんだよな…と・・・

広告

コメント / トラックバック4件 to “初音ミク XAML化計画~キーボード入力で口と目を動かす”

  1. 仮面 Says:

    どうも、ちらちらとごみがはいる。どうしてだろう・・・
    たしかにXAMLが、VS 的にも重すぎるけれど・・・

  2. 仮面 Says:

    WPFでスキニング-http://blogs.msdn.com/hiroyuk/archive/2007/06/29/3595054.aspx
    ミクの関節を見ていると悲しくなってくる。そこまでやりますか・・・なんか、どんどん道を外れていくような・・・だったら、最初からDirectXでなのかなぁ・・・

  3. えムナウ Says:

    >実装的には、こんな感じで、いくつかの表情を遠くの空間に置いておく。表情のTransform を切り替えてあげるだけで、一瞬で顔を切り替えてしまう方法。
    >ここで、 off は、遠くの空間、trans は顔の場所の Transform。
    ちょっと強引w
     
    関節はどうにかしないとですねぇ。
    IKも欲しいですねぇ。
     
    確かに元のデータは重いですねぇ。
    もう何日かしたらノート用の軽いXAML公開します。

  4. 仮面 Says:

    >ちょっと強引w
    ちょっとじゃなくて、かなり強引w
     
    >関節はどうにかしないとですねぇ。
    >IKも欲しいですねぇ。
    そうなんですよね。
    IKもミクの場合には必要ですね。
     
    >確かに元のデータは重いですねぇ。
    >もう何日かしたらノート用の軽いXAML公開します。
    おおお。どうすれば軽くなるのかそのあたりのヒント&チップスもお願いします。
    Visual Studio には、もうすこし頑張ってもらいたいですね。

コメントを残す

以下に詳細を記入するか、アイコンをクリックしてログインしてください。

WordPress.com ロゴ

WordPress.com アカウントを使ってコメントしています。 ログアウト / 変更 )

Twitter 画像

Twitter アカウントを使ってコメントしています。 ログアウト / 変更 )

Facebook の写真

Facebook アカウントを使ってコメントしています。 ログアウト / 変更 )

Google+ フォト

Google+ アカウントを使ってコメントしています。 ログアウト / 変更 )

%s と連携中


%d人のブロガーが「いいね」をつけました。