コガネブログ

平日更新を目標に Unity や C#、Visual Studio、ReSharper などのゲーム開発アレコレを書いていきます

【Unity】【アセット】Unityエディタ内で作業可能なスクリプトエディタ「C# and Shader Intellisense」紹介

Asset Store

概要

  • C#のコードを記述する際にインテリセンスを表示してくれる
  • (インテリセンスの機能自体はMonoDevelopの方が使いやすい印象)
    • MonoDevelopの表示 f:id:baba_s:20150604144739p:plain
    • C# and Shader Intellisenseの表示 f:id:baba_s:20150604144752p:plain
  • Shaderコードを記述する際にインテリセンスを表示してくれる f:id:baba_s:20150604144802p:plain
  • 英語ではあるがその処理の説明も表示される
  • ファイルを選択するとMonoDevelopが開くのではなく、
    スクリプト専用のウィンドウが開く
  • ScriptWindowを右クリックすると、
    以下の画像のようなポップアップメニューが表示される f:id:baba_s:20150604144810p:plain
項目 説明
Save ファイルを保存する
Show in Project Browser 現在開かれているファイルの場所を表示する
Toggle Search Toolbar 文字検索用のツールバー表示する
Options オプションを開く

Options

オプションを開くと以下のWindowが表示される

f:id:baba_s:20150604144823p:plain

項目 説明
Open C# file inside Unity: C#ファイルをダブルクリックした時、ScriptWindowで開くかどうか
Open Shader file inside Unity: Shaderファイルをダブルクリックした時、ScriptWindowで開くかどうか
Font フォントの種類を設定(Fontの種類は増やすことができない)
Font size フォントのサイズを設定

その他の機能

  • C#のスクリプトを選択するとInspetorにメソッドの一覧が表示され、
    項目をクリックするとソースの該当箇所にジャンプする f:id:baba_s:20150604144834p:plain

良かったところ

  • 入力ミスが減り、作業効率が上がる
  • ウィンドウをドッキングして作業できる
  • 表示されたインテリセンスが別画面をクリックしても消えない
  • C#のスクリプトの場合、Inspetorにメソッドの一覧が表示され、
    該当箇所にジャンプできる

気になったところ

  • スクリプトを編集した後にMonoDevelopを開いて
    コードをコンパイルする必要がある?
  • 一部の変数がインテリセンスに表示されない模様

f:id:baba_s:20150604144842p:plain

不具合?

  • ShaderLabで提供されている頂点シェーダーの構造体を引数にした場合、
    vertexだけが値名とコメントが逆になっていた
  • なので、インテリセンスの方ではなくコメントの方を記述する必要がある
  • 該当する構造体の名前
    • appdata_base
    • appdata_full
    • appdata_img
    • appdata_tan f:id:baba_s:20150604144850p:plain
  • 「Open C# file inside Unity」を無効にしても、
    ScriptWindowで開かれる場合がある

類似アセット

関連記事