宇宙仮面の C# プログラミング
   

Top

C# 2005

C# 2003

C# Windows Mobile

SQL Server 2005

SQL Server 2000

Virtual PC/Server

C# 研究室ブログ

C# ソフトウェア ダウンロード

C# 開発環境

宇宙仮面の C# プログラミングについて

.NET/C# eGroup JP

INETA Japan



Google
Web
uchukamen.com









WPF

初音ミク XAML 化計画〜その1

開発環境: Visual Studio 2008

1.目的

3Dミクを躍らせるツールを見ていたら、3DミクのAutoCadデータがアップされているのに気がつきました。 ということは、ZAM 3D にインポートできるわけで・・・ ということは、VS 2008 にエクスポートできるわけで・・・ ということは、コンパイルすると動いてしまうわけで、簡単に紹介します。

2.参考書

(1)

3.http://fenyo-ru.hp.infoseek.co.jp/dlc.htm

 

3.1 Miku 3D の元データ→ ZAM 3D

http://fenyo-ru.hp.infoseek.co.jp/dlc.htm のの作者様より、商用以外でのXAML へのデータ変換とアップロードのお許しをいただきました。

ここでアップロードされているデータのうち、AutoCAD のxdf 形式を ZAM 3D にインポートすることができます。

Miku-ZAM3D 

3.2  ZAM 3D →VS 2005

この状態で、ZAM 3Dのメニューより Export を選択し、Visual Studio 2005 のプロジェクト形式で Export します。

Export to Visual Studio 2005

3.3 VS 2005 → VS 2008

エクスポートした Visual Studio 2005 のプロジェクトファイルを Visual Studio 2008 で開くと、自動的に変換を行ってくれます。

Miku-VS2005 

Miku-fenyo-ru.hp.infoseek.co.jp.zip  2.03MB

ただし、このデータだと、まゆと口の周辺のレンダリングがうまく行われずに、次のようになってしまいます。もとのレンダリングソフトから、AutoCAD のdxf フォーマットでエクスポートし、さらにそれを XAML にエクスポートする際に、劣化してしまうのでしょう。残念です。

Miku-miss 

4. キオ式ミク

キオ式ミクで試してみました。結構厄介です。

データのXAML化の方法とその検討結果とその前後を参照してください。

Kio2.lwo の LightWave 用データを Blender にインポートし、そこから dxf フォーマットへエクスポートし、それを ZAM 3D へインポートしました。

4,1 カメラワーク

ターゲットカメラがあるので、それをパンしてみる。
スライダーを3つ追加して、次の3つのカメラの設定にリンクさせる。

  • 望遠・広角
    値の設定先: ターゲットカメラの FieldOfView
    値のレンジ:  だいたい 30〜100ぐらい

  • 水平方向回転
    値の設定先: ターゲットカメラの Transform
    値のレンジ:  -180°〜180°

  • 垂直方向回転
    値の設定先: ターゲットカメラの Transform
    値のレンジ:  -180°〜180°

実装例は次の通り。

        private void SliderH_ValueChanged(object sender, RoutedPropertyChangedEventArgs e)
        {
            Transform3DGroup tg = new Transform3DGroup();
            tg.Children.Add(new RotateTransform3D(new AxisAngleRotation3D(new Vector3D(0, 1, 0), this.SliderH.Value)));
            tg.Children.Add(new RotateTransform3D(new AxisAngleRotation3D(new Vector3D(1, 0, 0), this.SliderV.Value)));

            this.Target_CameraOR20.Transform = tg;
        }

        private void SliderV_ValueChanged(object sender, RoutedPropertyChangedEventArgs e)
        {
            Transform3DGroup tg = new Transform3DGroup();
            tg.Children.Add(new RotateTransform3D(new AxisAngleRotation3D(new Vector3D(0, 1, 0), this.SliderH.Value)));
            tg.Children.Add(new RotateTransform3D(new AxisAngleRotation3D(new Vector3D(1, 0, 0), this.SliderV.Value)));

            this.Target_CameraOR20.Transform = tg;
        }

        private void sliderZoom_ValueChanged(object sender, RoutedPropertyChangedEventArgs e)
        {
            this.Target_CameraOR20.FieldOfView = this.slider.Value;
        }

4,2 カメラワークのデモ

この方法で、初音ミクを回してみます。

Miku-Kio カメラワーク

ソースコード一式   Miku Kio V1.zip   4.3MB

注意:  ここで使用している初音ミク 3D XAML データの利用に関しては、キオ式アニキャラ3D の使用条件に従ってください。

 

このページを評価する

このページを評価する

悪い             良い
1 2 3 4 5
コメント(一言お願いします)