先日UE4.18がリリースされました。
色々な機能があり、試したいことが沢山あるのですが時間がどうにも足りていません。
ひとまず今回試してみたのはVisual Studioをインストールせずに、Visual Studio Codeという比較的軽量なテキストエディターを使って、UE4のC++プロジェクトを実行するというものです。
これができるとVisual Studioの高度なIDEまでをインストールせずにビルドからデバッグまで一通り完了することが可能です。
では早速試していきましょう。
Visual C++ Build Toolsをインストール
C++のビルドを行うためには必ずコンパイラーとそのツールチェイン一式のインストールが必要です。IDEとなるVisual Studioをインストールしなくてもこれだけは必ず必要です。
Visual C++ 2015のBuild Toolsは以下のページにリンクがあります。
2017の場合にはインストールするものの名前が微妙に変わり、ダウンロードするページも変わります。以下のページの一番下部にある、『Build Tools for Visual Studio 2017』をダウンロードします。
まずは2015の方のやり方です。ダウンロードしたVisual C++ Build Toolsを起動します。
カスタムインストールを選択します。
Windows 8.1 SDKだけにチェックをつけて"次へ"を選択し、そのままインストールを実行します。これでOKです。
次は2017でのやり方です。起動後にインストール画面に入り、"ワークロード"、"個別のコンポーネント"、"言語パック"とあるので、"個別のコンポーネントタブ"を選択します。
色々と試した結果、最低でも右側に表示されているコンポーネントがインストールされていれば大丈夫そうです。ちなみにこの場合にはコンパイラーはVC++2017ではなく、VC++2015を使うので、改めて2017でインストールする必要性は薄いです。
VC++ 2017 v141ツールセット(x86,x64)もインストールして試しましたが、こちらはエラーが発生し、コンパイルできませんでした。もし出来たという方がいれば情報をください。
これでコンパイラーなどの準備が整いました。次はVisual Studio CodeのWindows版をインストールします。
Visual Studio Codeと.NETのインストール
次はVisual Studio Codeと.NETのインストールです。以下のリンクからVS Codeをインストールします。
VS Codeのインストール時には特殊な設定は必要ありませんので、標準のままインストールしてください。
VS Codeを起動し、2つの拡張機能をインストールします。
拡張機能タブを選択し、"C++"と入力すると沢山の拡張機能が表示されるので、一番上に表示されるMicrosoft製の"C/C++"拡張をインストールしてください。
これでコード整形やインテリセンスの自動補完、何よりもデバッガーとして機能するようになります。
次に"C#"と入力し、一番上に表示されるMicrosoft製の"C#"拡張をインストールします。
VS Codeの拡張は以上です。次に.NET Core SDKをインストールします。
これをインストールすることでUE4のUnreal Build Toolsが機能し、プロジェクトデータを自動生成するようになります。
またVisual Studioを起動するために必要となる、".sln"ファイルも不要となります。
これでインストール作業が全て完了しました。
UE4上でVisual Studio Codeが使えるように設定する
Visual Studio Code用のプロジェクトが作成できるように、一度だけUE4のエディター上での設定が必要です。
エディターの環境設定を開き、"ソースコード"カテゴリーの"Source Code Editor"を"Visual Studio Code"に変更しておきます。これで次回からプロジェクトを作る際にVisual Studio Code用のプロジェクトになります。
この設定後に別途新規プロジェクトを作成します。
C++プロジェクトを作成
ランチャーから新規プロジェクトの作成を行い、C++プロジェクトとして作成します。
その後、コンパイルが実行され、うまくいくとVisual Studio CodeとUE4エディターが起動します。
左上のメニューの表示もVisual Studio Codeに変化していることが確認できます。
試しにクラスを追加してみます。
クラス作成を押すとコンパイルが実行され…
コンパイル完了後にVisual Studio Codeがアクティブ化されて、クラスが追加されていることが確認できます。
デバッグ実行をする
Visual Studio Codeを使えばC++コードのデバッグも可能です。
左側のデバッグタブを選択し、プロジェクト構成一覧をドロップダウンから選択し、"ProjectName(Development)"を選択します。"Debug"ビルドなどの別の構成を利用している場合には切り替えて使用してください。
あとはプロジェクト構成の左側にある緑色の三角形ボタンをクリックするか、"F5"キーを押すことでデバッグを開始します。
おそらく、何かしらのエラーが発生しますが、そのまま"デバッグを続ける"というボタンを押して、先へと進みます。その後、UE4エディターが起動し、問題なくデバッグを行うことが可能です。
ショートカットはほぼそのままVisual Studioでのコーディング時と同じように利用可能なので、F9でブレークポイントの設置やF10でステップオーバーなど、わかりやすいです。
Visual Studio CodeからUE4を起動してデバッグを行う様子です。ブレークポイントの設置、変数ウォッチ、コールスタックの確認、ステップ実行、全部できます。#UE4Study pic.twitter.com/uFJXlY3HtY
— alwei (@aizen76) 2017年10月25日
ブレークポイントの設置、ステップオーバー、イン、アウト、ローカル変数表示、変数ウォッチ、コールスタックの確認、デバッグコンソール出力など、C++でのネイティブデバッグで必要そうな部分はほぼ揃っています!
これはすごい!!しかもVisual Studioよりも大分軽い!なんというか軽量型IDEでもここまで出来るんですねぇ。VimやEmacsでもここまでのことを実現することはそう容易ではありません。
Windows以外でも
コンパイラーなどのツールチェインがあればMacやLinuxでも同様にVisual Studio Codeでのコーディングとデバッグが可能なようなので、どの環境でも統一したテキストエディター&IDEが使えるのは、とても強いですね。
しかも標準のIDEよりも軽く、反応もよいです。ただ、まだ機能的に全てがIDEよりも上というわけではないので、仕事で使うのであればやはり、Visual Studioは必要かなと思います。
単純にビルドしてUE4を使いたいというだけであればVisual Studioそのものはいらないですね。プログラマー以外の環境にいいかもしれません。