== UVTexIntegra プロジェクト構成 ==

[Packageフォルダ]
	バイナリをパッケージするためのサンドボックス・フォルダ。
	UVTexIntegraはC++/CLIとC#のクロス開発でプロジェクト数が多く、
	また互いに依存関係もあるため、ビルドイベントなどを使ってPackageフォルダにバイナリをコピーしていく。

[OpenTK]
	ビルドされたOpenTKのDLLを配置する場所。
	OpenTKのメジャーアップデートでもない限り基本的に触らなくて良いフォルダ。
	場所：OpenTK.bin

[DotNetEx]
	.Netライブラリを拡張するDLLプロジェクト。準標準ロジック・汎用的かつ基礎的な性質を持つライブラリ。
	UVTexIntegraに限らず使えそうな処理（.Netライブラリに標準で付属していない事が疑問な処理）を作る時は
	このプロジェクトを更新する。
	場所：DotNetEx/DotNetEx.sln

[mqsdxライブラリ]
	メタセコイアで公開されているmqsdkを、C++/CLI向けにラップするための中間ライブラリ。
	[git管理上の注意]
		サブモジュール風の配置（厳密にはサブモジュールではない）なので、
		mqsdx関連の更新は、UVTexIntegraフォルダもUVTexIntegra/mqsdxフォルダも両方とも同期/コミット操作が必要。
		>> UVTexIntegra/mqsdxはUVTexIntegraのgit管理データからは無視されていて、
		>> UVTexIntegra/mqsdx内に独立したgit管理データが存在している。
	場所：mqsdx

[UVTexIntegra.CSLib]
	以下のDLLを記述するためのC#プロジェクト
	- UVTexIntegra.CustomControls.DLL (*)
	- UVTexIntegra.Scripting.DLL
	UVTexIntegra.CustomControlsは、C++/CLIだとGUIイベント処理を記述するには可読性が悪いのと、
	VC++でのフォームデザイナ関連が使い勝手がとくに悪いため分離。
	UVTexIntegra.Scriptingは、処理速度よりメンテ性を重視したのと、
	カスタムベイクプロジェクトのビルド時に必要なところだけリンクするようにしたかったため。
	*) UVTexIntegra.CustomControls名前空間は、mqsdxに関連する機能はUVTexIntegra.CustomControls.DLLに含まれず
	   UVTexIntegra.DLL内でUVTexIntegra.CustomControls名前空間に機能追加される。

[UVTexIntegra]
	プラグイン本体のDLL（UVTexIntegra.DLL）を記述するC++/CLIプロジェクト。
	コンパイル成功すると、ビルドイベントでPackageフォルダに以下のファイルがコピーされる。
	- Package/UVTexIntegra.dll
	- Package/UVTexIntegra/lib/DotNetEx.dll
	- Package/UVTexIntegra/lib/OpenTK.dll
	- Package/UVTexIntegra/lib/OpenTK.GLControl.dll
	- Package/UVTexIntegra/lib/UVTexIntegra.CustomControls.dll
	- Package/UVTexIntegra/lib/UVTexIntegra.Scripting.dll
	メタセコイアプラグインフォルダも最新ビルド版で上書き可能。
	ただしデータフォーマットなんかを更新したあとはたいていフォーマットの差分でエラーして例外を吐くので覚悟。
	（その時は古いデータがたいてい破棄されるので、もう一回起動すれば直るはず）

[EdgeBake]
	UVTexIntegraに、カスタムベイクのサンプルとして付属するDLLおよびソースコードを作成するためのプロジェクト。
	コンパイル成功すると、ビルドイベントでPackageフォルダに以下のファイルがコピーされる。
	- Package/UVTexIntegra/EdgeBake.dll
	- Package/UVTexIntegra/EdgeBake/EdgeBake.sln
	- Package/UVTexIntegra/EdgeBake/EdgeBake/EdgeBake.csproj
	- Package/UVTexIntegra/EdgeBake/EdgeBake/EdgeBake.cs
	- Package/UVTexIntegra/EdgeBake/EdgeBake/Properties/AssemblyInfo.cs
	メタセコイアプラグインフォルダ側のEdgeBake.dllも最新ビルド版で上書き可能。
	ただしデータフォーマットなんかを更新したあとはたいていフォーマットの差分でエラーして例外を吐くので覚悟。
	（その時は古いデータがたいてい破棄されるので、もう一回起動すれば直るはず）

== プロジェクトの依存関係・早見 ==

準備中。

