Unity 社 CTO 兼創設者
パワフルなクロスプラットフォーム C# エディター
JetBrains Rider は、Windows、Mac、および Linux で実行する Unity 向けの高速で強力な C# エディターです。Rider にはほかに類の無い 2500 個以上のスマートコードインスペクションとリファクタリングが備わっているため、C# エクスペリエンスが高まり、エラープルーフのコードを非常に素早く書くことができます。
Unityで簡単にスタート
Rider には Unity のサポートが組み込まれています。Unity のソリューションを開くと、Rider は、C# スクリプトとシェーダーファイル用のデフォルトエディターとして Rider を使用するように Unity を自動的に設定します。設定が完了し、C# スクリプトまたはシェーダーアセットをダブルクリックすると、Rider でソリューションが開くようになります。
Unityエディタをコントロール
Rider には双方向通信が組み込まれているため、Play モードに切り替えると、Rider を閉じることなく 1 つのフレームを一時停止したり、ステップ実行したりすることができます!新しいツールバーには Play、Pause、および Step のゲームビューボタンが含まれており、これは Unity ディターと同じボタンに対応して同じ動作を制御します。ステータスバーの小さな Unity アイコンには、Unity エディターが接続されているか、リフレッシュしてるか、または Play モードになっているかが示されます。Edit モードで Rider に適用される変更は Unity エディターにすぐに反映されます。
コードヒント
Riderは、C#用に一流のコード解析を提供します。これには、Unity固有のコード検査とそのためのクイックフィックスが含まれています。
たとえば、Rider は tag
プロパティによる非効率な文字列リテラル比較を使用している箇所を警告し、該当部分を CompareTag
の呼び出しに書き直すためのクイックフィックスを提供します。
同様に、MonoBehaviour
または ScriptableObject
から派生するクラスの新しいインスタンスを作成するために new
キーワードを使用しようとした場合に Rider は警告を表示します。この場合は Alt Enter を押すだけで、Rider に問題を解決させることができます。
簡単にUnityをデバッグ
Rider では、Unity エディターで C# スクリプトを実行しながら簡単にデバッグすることができます。すべて構成済みであるため、Debug ツールバーのボタン、メニュー項目、またはキーボードショートカットを押すだけで、実行中の Unity エディターにデバッガを追加できます。エディター内でのブレークポイントの設定、コードのステップ実行、ローカル変数の確認と値の監視、および式の評価を行えます。
Rider では、デバッグ情報のないコードもデバッグできます。Rider はその場で自動的に外部ライブラリをデコンパイルしてくれるため、デコンパイルされたコードのデバッグ、関数へのステップイン、ブレークポイントの設定、ローカルと変数の表示と設定をおこなうことができます。
Unityテストを実行する
Rider では、Unity の API とやりスタックトレースとりするテストを実行することができ、すべて Rider 内から単一フレームをステップ実行できます。またもちろん、通常のテストと同じように、Unity 固有のテストの結果を調べることができます。結果でフィルタリングし、スタックトレースをクリックしてコードをナビゲートすることができます。
Unityコンソールログ
ハイパーリンク付きでスタックトレースを行える Unity Logs ツールウィンドウでは、Unity エディターコンソールにログ記録されているイベントを調べることができます。カテゴリ別(エラー、警告、またはメッセージ)にフィルタリングすることが可能で、ログ記録された時間に応じてイベントを非表示にし(Play または Edit モード)、ログエントリに示されるソースファイル、クラス、メソッド、またはプロパティに簡単に移動することができます。Unity Logs は Play モードに切り替えるたびに出力を自動的に消去します。
パフォーマンスのハイライト表示
Riderは パフォーマンスに優れた Unity C# のコーディングを支援します。そのため、Update や coroutines のような、各フレームで呼び出されるコストの高い Unity API の内部メソッドをハイライト表示します。Rider はコストの高い Unity API を間接的に使用するメソッドの呼び出しもハイライト表示します!
それとは別に、Rider には Unity 固有のパフォーマンスインスペクションや適切なクイックフィックスが多数備わっています。パフォーマンスの低下を引き起こすコードパターンを認識し、それらに対して別の API やオーバーロードの使用、あるいは値のキャッシュなどの自動修正を提案できます。
Unityファイル内の使用箇所を検索
使用箇所の検索機能に、Unity のシーン、アセット、および Prefab が含まれるようになりました。イベントハンドラーとして使用されるクラスまたはメソッドを検索すると、Rider は Unity ファイル内でそれが使用されている箇所をタイプ別、コンポーネント名別、および親ゲームオブジェクト別に表示します。さらに、項目をダブルクリックすると、直接 Unity エディター内の使用箇所がハイライトされます。
また、Rider は Unity ファイルからこの情報を抽出することで、暗黙的に使用されているイベントハンドラのメソッドをハイライト表示します。暗黙的な使用箇所のハイライトは Code Vision リンクに変換されるため、Unity が暗黙的に使用しているクラス、メソッド、フィールドを一目で確認できます。
シェーダーサポート
また、Rider は .shader ファイルのサポートを追加し、シンタックスハイライト、コードの折りたたみ、ブレースマッチングなども備えています。ShaderLab セクションのシンタックスエラーがハイライトされ、todo コメントは To Do Explorer に取り込まれ、カラープロパティは編集用のカラーピッカーによりハイライトされます。Cg/HLSL ブロック内など、ファイル全体を通して単純な単語補完が可能です。
Unityドキュメントを見る
Rider は Unity シンボル用の外部ドキュメンを表示します。Quick Documentation ポップアップからアイコンをクリック(Visual Studio キーマップを使用している場合は CtrlShiftF1)するか、View External Documentation アクション(ShiftF1)を直接使用して、ローカルにインストールされているドキュメント、もしくはそれが利用できない場合は Unity がホストしているドキュメントに移動できます。
RiderFlow について詳しくご覧ください。RiderFlow は、レベルデザイナー、ゲームデザイナー、アーティスト、コーダーなど、あらゆるユーザーが Unity エディターで 3D 空間を構築して管理するための無料のシーナリーツールです。
お客様の声
「仕事に最適なツールを備えておくことは、業界、特にゲーム市場で勝ち抜くために欠かせません。Yakuto では、各開発に JetBrains Toolbox サブスクリプションを提供しており、生産性を高める上で非常に貴重であることに気づいています。ほとんどの作業は Mac と C# で行っていました。以前は VM で ReSharper を実行していましたが、Rider になってからは 1 つの OS 上でネイティブ機能を使うことができています。素晴らしいことです。Unity デバッグをシームレスに実行でき、拡張機能によって重要な Unity 対応コンテキストを得られるようになりました。ReSharper を長年使ってきた私にとって、Rider は使い心地の良いツールです。リファクタリング、ソリューション全体の分析、テストランナー。すべてがツールに備わっています。Rider を使わない C# 開発は考えられません。」
James Gratton
Yakuto 社 CTO
「Rider はすぐに、使いたいと思う唯一の IDE になりました。UE4やUnityプログラミングに使用しています。ワークフローが直感的であるため、これまでに何時間もかけてきた作業時間を短縮してくれました。P4 統合にはどれだけ感謝してもしきれません。プロデューサーが、タスク完了までの工程をどれくらいの作業速度で行えるのか見れば、製品に惚れてしまうことでしょう。Rider は開発者のボトルネックとなっている煩わしさを取り除いてくれるため、一番得意とするコーディングの作業に専念することができます。」
Matthew Davey
dotBunny
「Rider は私たちが Unity プログラミングタスクに使用している最高かつ唯一の IDE です。C# に対応した最高レベルのコード解析に加えて、Unity 固有のコードインスペクションとクイックフィックスを提供しているため、ワークフローにかかる時間を大幅に短縮できています。また、new
キーワードを使って MonoBehavior または ScriptableObject から派生したクラスの新しいインスタンスを作成しようとすると警告が表示されます。シームレスにデバッグできるのも本当に助かります。私たちに最適なツールです!」
Ershadul Hoque
Riseup Labs 社 CEO