スポンサーサイト

上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。

【開発者向け】MMDAgentの開発環境について

【MMDAgentの開発環境について】
 自分が忘れないためと、これからMMDAgentを触ってみたい人の参考になれば。

 現在、本家HPで公開されているソースはVisual C++のソリューション(ソリューションって何?って人は自分で調べてみてください。実際わからなくてもどうにかなります。私自身いまいち理解していませんから。)となっています。なのでMMDAgentの開発を行うには、当然Visual C++の開発環境を構築すればよいのですが、いくつか陥りやすい罠?があります。それについてちょっとだけまとめてみました。

1. Microsoft Visual C++ Express Editionのバージョンについて
 無償で(登録が必要ですが)提供されているVisual C++の開発環境にMicrosoft Visual C++ Express Editionというものがあります。インストールするだけで面倒な開発環境を自動で構築してくれるので非常に便利です。組み込み系は開発環境を構築するだけでも一苦労ですから。
 で問題なのは、このVisual C++ Express Editionのバージョンによってプログラムのビルド時にエラーが出ることです。現在、Microsoft Visual C++ Express EditionのHPに行くとMicrosoft Visual C++ 2010 Express Editionがトップでてきます。この2010のバージョンでMMDAgentをビルドするとエラーがでてうまくビルドが出来ないようです。きちんと、2010用に構成し直せばビルドできるようなのですが・・・。
 面倒なので、MMDAgentをプログラムするときは必ずMicrosoft Visual C++ 2008 Express Editionで行いましょう。Visual C++のHPの片隅にある過去のバージョンから入手することができますので。

2. ビルド時の構成について
 さて、Visual C++ 2008 Express EditionをインストールしMMDAgentのソースを開き、いざビルド!がしかしなにやらエラーが。
 二つ目の問題は、ビルド時の構成設定です。たぶん結構な人が引っかかる罠。Visual C++ 2008 Express EditionをインストールしてMMDAgentを開いたとき、画面中央上部に「デバック」と表示されているところがあります。普通は「デバック」でよいのですが、MMDAgentの場合はこれを「Release」に変更してビルドしなければなりません。変更の仕方は、「デバック」と表示されているところのプルダウンメニューから「Release」を選択するだけ。
 さて、これでビルド!とはならないのがMMDAgent。次はビルド時の注意について。

3. ビルド時の注意
 さて、構成も変更したのでレッツ!ビルド!
 まあ、多分問題が出る人もいれば何事もなくビルドできる人もいるかと思います。とりあえず、私は前者でした。
 初めてMMDAgentをビルドを行うときは必ず「ソリューション全体をビルド」を行ってください。じゃないと、ヘッダーファイルがないとかいわれます。「ソリューション全体をビルド」を行うことでヘッダーファイル等がコピーされきちんとリンクされるようです。ただし、「ソリューション全体をビルド」は非常に時間がかかる(マシンスペックによる)場合があるので気長に待ちましょう。ビルドが終了するとMMDAgentのフォルダ内に「Release」という名のフォルダが生成され、そのなかに「MMDAgent.exe」が作成されているはずです。

 これにて、MMDAgentの開発環境の構築が終了!と、行きたいのですがもうひとつだけ問題があります。それは、「自分でMMDAgentのソースを変更したあとのビルド」です。当然開発環境まで用意したのですからソースを変更すると思います。変更後ビルドするときに「ソリューション全体をビルド」は行わないほうがよいです。基本エラーがでます。どうも音声認識をする「Julius」がビルド時にエラーを起こすようで。ビルドが通らないようです。ソースを変更した場合はビルドメニューから「MMDAgentのビルド」を行うほうがいいと思います。変更したソースに問題がなければビルドが成功するはずです。

 これらのことに注意すれば、いちおうMMDAgentを開発できるようになるはずです。

 もし、ビルドしたMMDAgentが音声認識しないようでしたらReleaseフォルダ内のPluginsフォルダのなかに「Plugin_Julius.dll」があるか確認してみてください。ないようでしたら、MMDAgentのバイナリ配布版から「Plugin_Julius.dll」をコピーしてくると解決されるかも知れません。
 後はマイクの設定も確認しておきましょう。マイクブーストには特に注意。チェックが入っていないと全然マイク入力が入らない。
スポンサーサイト

テーマ : プログラミング
ジャンル : コンピュータ

コメントの投稿

非公開コメント

No title

三日前にMMDAを触ってみようと思いたったはいいものの、ビルドできないorz となっていた者です。
この記事のおかげでともかくも無事ビルドできるようにはなりました、ありがとうございます

Re: No title

ビルドできるようになり、何よりです。これからがんばってください。

No title

すみません。
現在、MMDAgentのコンパイルを行っていますが、
この記事のままビルドを行うと
「warning LNK4099: PDB vc90.pdb」が大量に出てしまいます。
これは、ソース改造時に影響が出てしまうのでしょうか。

また、これに対する簡単な対処法が知っていたら教えて頂けないでしょうか。(なお、ググっても対処法がよく分かりませんでした。)

Re: No title

正直なところ「warning LNK4099: PDB vc90.pdb」のメッセージが出る原因は分かりません。なので対処の方法も分かっていません。明確な回答ができなくてすみません。

私の開発環境でもこのメッセージはでています。ただ、エラーは吐き出しませんし、一応exeは生成されるのでこれについては現状無視を決め込んでます。

No title

参考になりました。ありがとうございます
プロフィール

CUBE370

Author:CUBE370
MMDAgent用の誰得プラグインを作ってます。
MMDAgentに関する情報や自作プラグインについて書いてます。

技術的なことはwikiのほうにまとめてます。
http://cube370.wiki.fc2.com/

つぶやき
最新記事
最新コメント
最新トラックバック
月別アーカイブ
カテゴリ
FC2カウンター
検索フォーム
RSSリンクの表示
リンク
ブロとも申請フォーム

この人とブロともになる

QRコード
QR
上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。