1月から時たまいじっているVisual Studio Express
前回は基本的なプロジェクトの立ち上げをやってみた
本題はここから
主には3dsMaxのプラグイン作成に使おうかと
ちょと勉強を始めたのだが、これが意外にクセがおおく、
VC++コーディングがどうこうって話以前に
基本的な設定でツマヅき、
ようやくこの間サンプルの
ビルドを通すことが出来た
で、肝心な環境設定の方法はというと
環境は以下の通り
Windows8.1
Visual Studio Express 2012
3dsMax 2014
3dsMaxとVCのコンパイラーの互換性は
ここに記載されているぞ
次にVisual Studio Express最初は適当に入れていたが、
これ入れる順番間違えると、環境にエラーが起きるので注意
Visual Studio Express は
必ず古いバージョンがから
インストールすること
インストール順番は
1. Visual Studio Express 2010
2. Visual Studio Express 2012
3. Visual Studio Express 2012 SP4
4. Windows SDK 8
5. Windows SDK 8.1
絶対に順番を間違えない事
順番間違えたら、すぐエラー起きるんだよw
次に3dsMaxのSDKのインストール
通常はインストーラーディスクに付属しているので
そちらからインストールしてもいいしダウンロードインストーラーにもあるのでどちらでも
肝心なことは、SDKのディレクトリから
読み取り専用を外しておくこと!
次にウィザードファイルを編集してコピーする
場所はここ
C:\Program Files\Autodesk\3ds Max 2014 SDK\maxsdk\howto\3dsmaxPluginWizard
編集する個所は3dsmaxPluginWizard.vszの
このハイライトしている
Wizard=VsWizard.VsWizardEngine.11.0
Visual Studio 2010の場合は10.0
Visual Studio 2012の場合は11.0
Param=”ABSOLUTE_PATH = <YourAbsoluteMaxSDKPath>\maxsdk\howto\3dsmaxPluginWizard”
このYourAbsoluteMaxSDKPathを
自身のSDKインストールパスに書き換える
自分の場合は下のような感じ
Param=”ABSOLUTE_PATH = C:\Program Files\Autodesk\3ds Max 2014 SDK\maxsdk\howto\3dsmaxPluginWizard”
この3つのファイルのコピー先はここ
C:\Program Files (x86)\Microsoft Visual Studio 11.0\VC\vcprojects_WDExpress
ここまでは、まぁ通常の設定と変わりない
Visual Studio Express 2012の起動について
起動の際は管理者として起動すること
新規プロジェクト立ち上げる場合の
ウィザードの設定は
上から順に
MAXSDK pathは
インストールしたmaxsdkのパス
C:\Program Files\Autodesk\3ds Max 2014 SDK\maxsdk
output pathはお好みで
今回はひとまずここ
C:\Program Files\Autodesk\3ds Max 2014\plugins
x64 3dsmax.exe pathは
インストールした3dsMax2014の場所
C:\Program Files\Autodesk\3ds Max 2014
これで完了
この時点でVisual Studioが落ちたり
エラーでプロジェクトが読み込めないなどがあれば
Visual Studioのインストールなどでツマヅいた可能性が高い
今回は、サンプルプロジェクトをビルドする
まずはサンプルプロジェクトの読み込み
サンプル波形実数のプラグイン、wavectrl
場所はここ
C:\Program Files\Autodesk\3ds Max 2014 SDK\maxsdk\samples\controllers\wavectrl
読み込み時に、ライブラリを変更するかどうか効いてくるので迷わず更新!
このままビルドしてもエラーがでる
エラーの原因は
C:\Program Files (x86)\MSBuild\Microsoft.Cpp\v4.0\V110の中にあるMicrosoft.Cpp.Platform.targets
このファイルの中で、
<VCMessage Code=”MSB8020″ Type=”Error” Arguments=”$(_PlatformToolsetShortNameFor_v100);$(PlatformToolset)” Condition=”‘$(DesignTimeBuild)’!=’true’ and ‘$(ToolsetTargetsFound)’ != ‘true’ and ‘$(PlatformToolset)’ == ‘v100′” />
この中のV100をV110に書き換える
これでもまだエラーが起きる
このafxres.hは
Visual Studio ExpressにMFC(Microsoft Foundation Class)本体が含まれていないことが原因だそうだ
なのでここをwinres.h書き換える

もう一つ
ビルドする際は、Hyblid の x64
に設定しておくこと

はい、これでビルドすると~~

おういえ~~~(=゚ω゚)ノ
ビルド成功!
実際にプラグインも出来上がっていて
3dsMaxで使っても全く問題なし
ようやくサンプルのビルドまで成功したけど
お次は新規のプロジェクトが
ちゃんとビルドできるか挑戦だな・・・
なんか、VC++の勉強は当分先になりそう