だらだら〜自由自在〜

インディーゲーム制作チーム GAME GABURI でプログラム担当してます

Unityプロジェクトでsandcastle使ってみる

次のプロジェクトからはC#コードのコメントを適当なやつじゃなくてXMLコメントで書こうと思いUnityプロジェクトをサンプルにsandcastleでWebドキュメント形式のものを作ってみようとした記録。

sandcastleセットアップ

XMLコメントからchm形式やHtml形式のヘルプドキュメントを作成できるソフトウェア。
Sandcastleを最低限使うための最初のメモ
こちら様などのページを参考にしてセットアップなど行う。
なんか自分の環境では、sandcastle本体を入れてからSandcastleHelpFileBuilder(SHFB)をインストールしようとしたら、SHFBのインストール途中で【sandcastleのヴァージョンが古い】って言われて、結局本体はUninstallしてからSHFBのインストールを行った(SHFBGuideInstallerというものを使ってInstallしていたので、そのInstaller内で両方がInstallされたのか?)

Unityプロジェクト側での設定など

基本さっきのページを元に行う。自分の環境はVisualStudio2010 Ultimateだけど。UI以外はほぼ同じ。
アセンブリ参照はSHFB側で設定することにした。
デフォルトのXML出力先はTemp/bin/Debugなので注意(obj/Debugだと思ってた…)

SHFBでの設定など

これもさっきのりんく(ry。
DocumentSourceには(UnityEditor/EngineはUnity内のクラスも対象にしたいとき。まぁ要らないか)

  • Assembly-CSharpなんちゃら.dllと.xml
  • UnityEditor.dll
  • UnityEngine.dll

Referenceには(いらないのもあると思うけど)

  • Mono.cecil(C:/Program Files (x86)/Unity/Editor/Data/Mono/lib/mono/unity/Mono.Cecil.dll
  • UnityEngine(C:/Program Files (x86)/Unity/Editor/Data/Managed
  • UnityEditor(C:/Program Files (x86)/Unity/Editor/Data/Managed
  • UnityScript(C:/Program Files (x86)/Unity/Editor/Data/Mono/lib/mono/unity/UnityScript.dll
  • DataUtil(XML出力先と同じ場所)
  • nunit.framework(XML出力先と同じ場所)

で、SHFBのProjectPropertiesタブで以下を設定

  • Build > HelpFileFormatを好きなやつに(自分はWebsiteにした)
  • HelpFile > Language を日本語
  • Summaries > NamespaceSummariesの右のボタンを押して開いたWindowの(global)にチェックを入れる。あと要らないNamespaceはCheckOFFで良いかと思われ

出力

Menu > Documentation > BuildProject

で、プロジェクトフォルダ直下にHelpってのができてると思うので、そのなかのindex.htmlなりを開けばおk