Skip to content

Instantly share code, notes, and snippets.

@neguse11
Last active January 13, 2016 11:48

Revisions

  1. neguse11 revised this gist Sep 13, 2015. 1 changed file with 1 addition and 1 deletion.
    2 changes: 1 addition & 1 deletion CM3D2-vs-dbg-howto.md
    Original file line number Diff line number Diff line change
    @@ -4,7 +4,7 @@
    2. https://www.visualstudio.com/features/unitytools-vs の 「無償 VS Tools for Unity」から「vstu2015.msi」をダウンロードしてインストール
    3. http://www.mono-project.com/download/#download-win から「mono-4.0.3-gtksharp-2.12.26-win32-0.msi」をダウンロードしてインストール
    4. http://unity3d.com/jp/get-unity/download/archive の「Unity 4.6.8」内にある「Unity エディター」から「UnitySetup-4.6.8.exe」をダウンロード。*インストールはしない*
    5. 「UnitySetup-4.6.8.exe」を 7z (ここでは 7-Zip 9.20を使って `7z x UnitySetup-4.6.8.exe` で展開) で展開して、「$_OUTDIR/windowsstandalonesupport/Variations/win64_development/player_win.exe」を「C:\CM3D2_KAIZOU\CM3D2x64.exe」として上書きコピー
    5. 「UnitySetup-4.6.8.exe」を 7z で展開 (ここでは 7-Zip 9.20を使って `7z x UnitySetup-4.6.8.exe` で展開) して、「$_OUTDIR/windowsstandalonesupport/Variations/win64_development/player_win.exe」を「C:\CM3D2_KAIZOU\CM3D2x64.exe」として上書きコピー
    6. 「C:\CM3D2_KAIZOU\CM3D2x64_Data\PlayerConnectionConfigFile」を開き、「listen 1719714488 0 0」を「listen 1719714488 1 1」に書き換え
    7. ここで、一旦「C:\CM3D2_KAIZOU\CM3D2x64.exe」を起動して右下に「Deveopment Build」の表示が出るのを確かめる
    8. さらにVisual Studioを起動して「DEBUG -> Attach Unity Debugger」を実行。「Select Unity Instance」ダイアログが出るので、その中に「WindowsPlayer」があることを確認
  2. neguse11 revised this gist Sep 13, 2015. 1 changed file with 1 addition and 1 deletion.
    2 changes: 1 addition & 1 deletion CM3D2-vs-dbg-howto.md
    Original file line number Diff line number Diff line change
    @@ -4,7 +4,7 @@
    2. https://www.visualstudio.com/features/unitytools-vs の 「無償 VS Tools for Unity」から「vstu2015.msi」をダウンロードしてインストール
    3. http://www.mono-project.com/download/#download-win から「mono-4.0.3-gtksharp-2.12.26-win32-0.msi」をダウンロードしてインストール
    4. http://unity3d.com/jp/get-unity/download/archive の「Unity 4.6.8」内にある「Unity エディター」から「UnitySetup-4.6.8.exe」をダウンロード。*インストールはしない*
    5. 「UnitySetup-4.6.8.exe」を 7z (ここでは 7-Zip 9.20) で展開して、「$_OUTDIR/windowsstandalonesupport/Variations/win64_development/player_win.exe」を「C:\CM3D2_KAIZOU\CM3D2x64.exe」として上書きコピー
    5. 「UnitySetup-4.6.8.exe」を 7z (ここでは 7-Zip 9.20を使って `7z x UnitySetup-4.6.8.exe` で展開) で展開して、「$_OUTDIR/windowsstandalonesupport/Variations/win64_development/player_win.exe」を「C:\CM3D2_KAIZOU\CM3D2x64.exe」として上書きコピー
    6. 「C:\CM3D2_KAIZOU\CM3D2x64_Data\PlayerConnectionConfigFile」を開き、「listen 1719714488 0 0」を「listen 1719714488 1 1」に書き換え
    7. ここで、一旦「C:\CM3D2_KAIZOU\CM3D2x64.exe」を起動して右下に「Deveopment Build」の表示が出るのを確かめる
    8. さらにVisual Studioを起動して「DEBUG -> Attach Unity Debugger」を実行。「Select Unity Instance」ダイアログが出るので、その中に「WindowsPlayer」があることを確認
  3. neguse11 revised this gist Sep 13, 2015. 1 changed file with 1 addition and 1 deletion.
    2 changes: 1 addition & 1 deletion CM3D2-vs-dbg-howto.md
    Original file line number Diff line number Diff line change
    @@ -4,7 +4,7 @@
    2. https://www.visualstudio.com/features/unitytools-vs の 「無償 VS Tools for Unity」から「vstu2015.msi」をダウンロードしてインストール
    3. http://www.mono-project.com/download/#download-win から「mono-4.0.3-gtksharp-2.12.26-win32-0.msi」をダウンロードしてインストール
    4. http://unity3d.com/jp/get-unity/download/archive の「Unity 4.6.8」内にある「Unity エディター」から「UnitySetup-4.6.8.exe」をダウンロード。*インストールはしない*
    5. 「UnitySetup-4.6.8.exe」を 7z とかで展開して、「$_OUTDIR/windowsstandalonesupport/Variations/win64_development/player_win.exe」を「C:\CM3D2_KAIZOU\CM3D2x64.exe」として上書きコピー
    5. 「UnitySetup-4.6.8.exe」を 7z (ここでは 7-Zip 9.20) で展開して、「$_OUTDIR/windowsstandalonesupport/Variations/win64_development/player_win.exe」を「C:\CM3D2_KAIZOU\CM3D2x64.exe」として上書きコピー
    6. 「C:\CM3D2_KAIZOU\CM3D2x64_Data\PlayerConnectionConfigFile」を開き、「listen 1719714488 0 0」を「listen 1719714488 1 1」に書き換え
    7. ここで、一旦「C:\CM3D2_KAIZOU\CM3D2x64.exe」を起動して右下に「Deveopment Build」の表示が出るのを確かめる
    8. さらにVisual Studioを起動して「DEBUG -> Attach Unity Debugger」を実行。「Select Unity Instance」ダイアログが出るので、その中に「WindowsPlayer」があることを確認
  4. neguse11 revised this gist Sep 12, 2015. 1 changed file with 10 additions and 0 deletions.
    10 changes: 10 additions & 0 deletions CM3D2-vs-dbg-howto.md
    Original file line number Diff line number Diff line change
    @@ -26,3 +26,13 @@

    古い Mono (4より前) や Unity (4.x) に含まれる`pdb2mdb`は新しいVisual C#が出力するpdbファイルに対応していません。
    新しい Mono (4.x) や Unity (5.x) に含まれる`pdb2mdb`を使ってください

    ## Assembly-CSharpのデバッグ
    - ReiPatcherでパッチをあてる
    - Assembly-CSharp.dllに対して、dotPeek等でソリューションのエクスポートをしてAssembly-CSharp.pdbを作る
    - pdb2mdbでmdbを作る
    - mdbをCM3D2x64_Data\Managed\にコピー
    - CM3D2x64を起動
    - VisualStudioを起動して DEBUG -> Attach Unity Debugger でアタッチ
    - VisualStudio内の FILE -> Open -> File (Ctrl+O) で dotPeek で作った GameMain.cs を開く
    - 「Update()」を検索して、ブレークポイントを置く
  5. neguse11 revised this gist Sep 12, 2015. 1 changed file with 10 additions and 0 deletions.
    10 changes: 10 additions & 0 deletions CM3D2-vs-dbg-howto.md
    Original file line number Diff line number Diff line change
    @@ -16,3 +16,13 @@
    14. CM3D2.hoge.Plugin.dll内のコードでブレークポイントをつけてみて、停止すれば成功

    [KSP民の努力に感謝](http://forum.kerbalspaceprogram.com/threads/114241)

    ## 注意点 : Unityプレイヤーのバージョンを合わせる
    バニラの`CM3D2x64.exe`と差し替える`player_win.exe`のバージョンを合わせないと、うまく動かないときがあります。
    バージョンはエクスプローラーでバニラの`CM3D2x64.exe`のプロパティーを出して「詳細」タブの「製品バージョン」で確認できます。
    この「製品バージョン」と同じバージョンのUnityに含まれる`player_win.exe`を使ってください。

    ## Monoのバージョン

    古い Mono (4より前) や Unity (4.x) に含まれる`pdb2mdb`は新しいVisual C#が出力するpdbファイルに対応していません。
    新しい Mono (4.x) や Unity (5.x) に含まれる`pdb2mdb`を使ってください
  6. neguse11 created this gist Sep 12, 2015.
    18 changes: 18 additions & 0 deletions CM3D2-vs-dbg-howto.md
    Original file line number Diff line number Diff line change
    @@ -0,0 +1,18 @@
    1.07, x64用。バックアップをとってから試してね

    1. Visual Studio Community 2015 をインストール
    2. https://www.visualstudio.com/features/unitytools-vs の 「無償 VS Tools for Unity」から「vstu2015.msi」をダウンロードしてインストール
    3. http://www.mono-project.com/download/#download-win から「mono-4.0.3-gtksharp-2.12.26-win32-0.msi」をダウンロードしてインストール
    4. http://unity3d.com/jp/get-unity/download/archive の「Unity 4.6.8」内にある「Unity エディター」から「UnitySetup-4.6.8.exe」をダウンロード。*インストールはしない*
    5. 「UnitySetup-4.6.8.exe」を 7z とかで展開して、「$_OUTDIR/windowsstandalonesupport/Variations/win64_development/player_win.exe」を「C:\CM3D2_KAIZOU\CM3D2x64.exe」として上書きコピー
    6. 「C:\CM3D2_KAIZOU\CM3D2x64_Data\PlayerConnectionConfigFile」を開き、「listen 1719714488 0 0」を「listen 1719714488 1 1」に書き換え
    7. ここで、一旦「C:\CM3D2_KAIZOU\CM3D2x64.exe」を起動して右下に「Deveopment Build」の表示が出るのを確かめる
    8. さらにVisual Studioを起動して「DEBUG -> Attach Unity Debugger」を実行。「Select Unity Instance」ダイアログが出るので、その中に「WindowsPlayer」があることを確認
    9. まだデバッグはできないので、とりあえず確認したら、Visual StudioとCM3D2x64.exeを閉じる
    10. UnityInjector用プラグインをデバッグビルドする (CM3D2.hoge.Plugin.dll とします。pdbも出ていることを確認してね)
    11. コマンドラインでDLLが生成されたディレクトリ(bin/Debug/など)に移動して、`"C:\Program Files (x86)\Mono\Bin\pdb2mdb.bat" CM3D2.hoge.Plugin.dll`を実行。実行に成功すると「CM3D2.hoge.Plugin.dll.mdb」が出力される
    12. 「CM3D2.hoge.Plugin.dll」と「CM3D2.hoge.Plugin.dll.mdb」をUnityInjectorフォルダーへコピー
    13. 7と8を実行してデバッガをアタッチする
    14. CM3D2.hoge.Plugin.dll内のコードでブレークポイントをつけてみて、停止すれば成功

    [KSP民の努力に感謝](http://forum.kerbalspaceprogram.com/threads/114241)