Marumaru's TinyPlaza

(2011.06.01)MMDAgent その2

やっと出来た……。

MMDAgentのウインドウを透過させてデスクトップマスコットのようにしてみた際の覚書です。


MMDAgentのウインドウ背景を透過させる方法。

前提

環境等は、前回のエントリーを参照の事。

ステージを表示しないようにする

MMDAgent.fstのSTAGEでステージのファイルを読み込んでいるので、ファイルの指定を空にしてステージファイルを読み込まないようにする。(最初からあった設定は#でコメント化しています。)

#14 15 <eps> STAGE|Stage\building2\floor.bmp,Stage\building2\background.bmp
14 15 <eps> STAGE|

ステージが消えました。

ウインドウの透過処理

ここで解説されているウインドウ透過のコードを使用しましたが、正式版になりコードを埋め込む部分が変わっています。

やり方は上記サイトで解説されているので、要点だけ箇条書き。

  • コードを埋め込むのはMMDAgent.cppではなく、main.cpp(297行目前後)
  • 当然、include部分もmain.cppに埋め込む。
  • 構成をDebugではなくてReleaseにする。
  • 行番号の表示は、ツール→オプション→テキストエディタ→すべての言語→全般→行番号の表示チェック

透過ウインドウになりました。

キャンバス色の設定

ウインドウ背景は透明になりましたが、デフォルトだとキャンバスが青になっているので、MMDAgentのウインドウ部分だけ少し青くなっています。

MMDAgent.mdfのcampusでキャンパスの色をRGB指定しています。これを全部0.0に変更する事でキャンパスを透明にすることが出来ます。(最初からあった設定は#でコメント化しています。)

# Campus

#campus_color=0.0,0.0,0.2
campus_color=0.0,0.0,0.0

これで透明になりました。

おまけ

MMDのモデルをレアにしてみました。何と言う可愛さっ……。

しかし、自分の打った文書を「自分の声に反応して」読み上げてくれると言うのは本当に楽しい。



ryo ウィンドウ枠は無くなったのですが、どうしても背景が真っ暗になって透けません。なぜでしょうか・・・。 (2011/10/27 06:01:28)

Marumaru
コメントありがとうございます。透過機能がWindows7(またはVista)に搭載されているAeroGlass機能を使って実現していますので、OSがXPだったり、Vista以上であってもAeroGlass機能を切っていたりはしないでしょうか? (2011/10/29 09:16:28)


<(2011.05.28)MMDAgent (2011.06.02)MMDAgent その3>