良い開発習慣を取り入れる
出勤するようになってから久しぶりに他の人のディスプレイを見る機会が増えました。 TAという職種は全業種に接点を持つので、UnrealEngineを含めた開発ツールの使い方は千差万別だということに気付かされます。
「こうするといいですよ」
感謝されたり
「そんな使い方があるんですね」
(何それ!知らないし)
ちょっとしたことでも、毎日触っていると無駄なことの積み重ねになるか、ちょっとした工夫を続けて時間の削減をするかは紙一重です。
開発というのも生活習慣病と同じようにいつのまにやらメタボになっています。
身体の生活習慣病は見た目で分かるけど、開発の生活習慣病は健康診断や体重計がないので気付かないです。
生活習慣病があるなら、開発習慣病もあるのではないでしょうか。
時間の削減に繋がるような良い開発習慣を取り込んでみましょう。
Windows編
起動したらバッチファイルを実行する
「さぁ、仕事をしよう」
電源を入れてから、いつものアプリケーションを開いていきます。
フォルダを開いて、ひとつずつ起動していきます。
起動するアプリケーション決まっているならバッチ化してしまいましょう。
朝起きてからZennの本を執筆する
ポジTAの個人PCでは、朝起きてZennの本を執筆しています。 書き始めてから書き終えるまで必要な作業です。
- Zennのローカルプレビューを起動
- VSCodeのワークスペースを開く
- UnrealEngineのプロジェクトを開く
- 独自ツールを開いて画像削除
- GithubDesktopを開いてプッシュ
準備時間1分増えると年間約半日分くらい起動する仕事をしている
アプリケーションを探して開いているだけでも、数分かかってしまいます。 起動してからポチポチとやっているだけで、年間で起動してから5分同じ作業しているとします。
12ヶ月 x 20日間 x 5分 = 1200分 = 20時間 = 2.5人日(8時間計算)
5分が年間だと約2.5日くらい起動してから作業する準備でかかっていることになります。
6分だったらどうでしょう?
12ヶ月 x 20日間 x 6分 = 1440分 = 24時間 = 3人日(8時間計算)
1分増えるごとに半日増えて行きます。
5つの作業を1回か2回の作業で済むように、バッチファイルを作っています。
12ヶ月 x 20日間 x 0.5 = 120分 = 2時間 = 0.25人日(8時間計算)
ちょっとした工夫で10分の1になります。
バッチファイルは慣れれば10分くらいで作れます。 最初は1時間かかるとしても2時間が3時間になるので、年間数日分得することになります。
まずZennのローカルViewerを起動します。
やることはPreviewを起動するためのバッチファイルをダブルクリックします。
rem: Dドライブに移動
cd /d d:\
rem: Zennのリポジトリに移動
cd D:\Projects\posita\git\Zenn\posita33-zenn-private-content
rem: Zennのローカルページを開く
start http://localhost:8000/
rem: ZennのPreviewを起動
npx zenn preview
pause
その後に、執筆するプロジェクト用のバッチファイルを実行します。
実行すると
- VSCodeのワークスペースを開く
- UnrealEngineのプロジェクトを開く
- 独自ツールを開く
- GithubDesktopを開く
@echo off
rem vscordのワークスペースを開く
START D:\Projects\posita\git\Zenn\posita33-zenn-private-content\book-ue5_starter_cpp_and_bp_001.code-workspace
rem UnrealEngineのプロジェクトを開く
START D:\Projects\posita\UE\CPP_BP\CPP_BP.uproject
rem GithubDesktopを開く
START (GithubDesktopまでのパス)\GitHubDesktop.exe
rem Zennのワークスペースの画像を消す独自ツール
START (独自ツールまでのパス)\positaZennTools.exe
制作はモチベーションが上がり、作業はモチベーションが下がります。
起動してから制作に入るまでは作業なのでモチベーションを下げてしまいます。
ダブルクリック2回で書く準備ができるので、モチベーションがほぼ最高の状態から制作を始めることができます。
スタートアップに登録する
バッチファイルをスタートアップに入れると、起動後にバッチファイルをダブルクリックする手間も無くなります。 (書いているうちに気付きました。)
- Windowsキー + Rキー
- shell:startupを実行する
- バッチファイルをコピー&ペーストする
Windows10スタートアップフォルダの場所と変更方法
起動ごとに選択肢が変わる工程の場合はフォルダを開くだけにして、バッチファイルをおいておくといいかもしれません。
選択肢が少なければもっと早く作業に入れるので。選択肢を少なくすることを検討してもよいかもしれません。
バッチファイルでよく使うコマンド
バッチファイルは手で作業していた内容をコマンド化していくことで作成できます。
起動してからの手作業くらいは「START (文字)」で解決できます。
rem フォルダを開く
start D:\Projects\posita\git\Blog\posita_blog
rem URLを開く
start http://localhost:8000/
rem アプリケーションを実行する
START (GithubDesktopまでのパス)\GitHubDesktop.exe
rem UnrealEngineのプロジェクトを開く
START D:\Projects\posita\UE\CPP_BP\CPP_BP.uproject
他にも以下のコマンドを憶えていて、少し複雑なことであれば「バッチファイル コマンド (追加したい内容)」で検索すれば見つかります。
コマンドプロンプトを表示しない
@echo off
コメントを入れる
rem コメント
処理を止める
pause
移動する
rem パスに移動する
cd D:\Projects\posita\git\Blog\posita_blog
rem Dドライブに言おうする
cd /d d:\
よく使うフォルダをクイックアクセスにピン留め
よく使うフォルダをクイックアクセスにピン留めしておくと、直ぐに移動できます。
よく使うフォルダに移動 > エクスプローラーの左側のクイックアクセスを右クリック > 現在のフォルダをクイックアクセスにピン留めを選択
クイックアクセスのよく使うフォルダをクリックすると、フォルダに移動できます。
VisualStudio
タブを縦の一覧で見られるようにする
C++のソースコードを編集しているとタブがいっぱいになって、以前選択したソースコードのタブが選びづらいです。 時々開いているタブをリセットして対応していましたが、タブの位置を変更できることが分かったのでタブを見やすくすることができました。
タブの空きスペースを右クリック > Set Tab Layout > Place Tabs on the Left(Right)
開いているタブが左側のスクロールバーで一覧を管理できるようになります。
ちょっとしたことですが、開きたいソースコードをすぐ選択できるようになりました。
UnrealEngine編
Favorites(お気に入り)を活用する
UnrealEngineを操作していると、よく使うフォルダが決まってきます。
何度も使用するフォルダはFavorite(お気に入り)に入れておくとすぐに開けます。
Favoritesのカテゴリによく使うフォルダが追加されます。
Favoritesのカテゴリが無い場合は非表示になっています。 コンテンツブラウザの右上のSettings > Show Favoritesを選択するとチェックマークが付いて、Favoritesカテゴリが表示されます。
Collections(コレクション)を活用する
ツールを提供された側としては使うアセットは1つなので、Favotiteでフォルダを登録するよりツールのアセットをCollectionsに登録しておいてもらうとすぐに開いて使ってもらいやすくなります。
例えば、アーティストさん用にツールを作ったとします。
毎回ツールのフォルダまで移動してもらうと、面倒くさくなってツールを使わなくなってしまうことが多々あります。
そして、「あのツールどこにありましたっけ?」「どこでしたっけ?」
数か月後に2人でツールを探すことになってしまいます。
せっかく作ったツールを使用し続けてもらいたいので、Collectionsに登録してもらいましょう。
Collectionsの「+」をクリック > Local Collectionを選択
カテゴリには分かりやすい名前を付けましょう。
作る側は「EUW」でいいですが、使う側は「Tools」とかの方が分かりやすいでしょう。
Collectionの作成したカテゴリ名に追加したいアセットをDrag&Dropします。
これでコレクションのカテゴリを選択するだけで、作成したツールが直ぐに実行できます。
ツールメニューに追加したりすることもできますが、メニューを作る時間がかかるので、メニューを作っている間はCollectionに追加して対応してもらうと継続してツールを使ってもらえます。
他にはマスターになるアセットをコレクションに追加しておくとよいかもしれません。
- よく使うPersistentになるレベル
- マスターマテリアル
- スケルタルメッシュ
EditorごとにContents Drawerがある
UnrealEngine5からEditorごとにContentsDrawerがあることが認知されていません。
マスターマテリアルを編集している時に、ContentsDrawerの存在を伝えると喜ばれました。
UnrealEngine4の手順だと下の図のように、2つのウィンドウが必要になってしまいます。
テクスチャーのあるフォルダに移動して、マテリアルエディタにテクスチャをDrag&Dropしていました。
UnrealEngine5からはEditorごとにContentsDrawerが付いているので、マテリアルエディタからテクスチャのフォルダに移動してDrag&Dropできます。
StaticMeshエディタでマテリアルを変更する時にも使えます。
今までもContentsBrowserを追加して同じことができましたが、最大4つまで開けませんでした。
ContentsDrawerがあることで、エディタ毎にContentsBroweserがあるのと同じになったので知っているとウィンドウを並べて操作しなくてすみます。
まとめ
今回は直ぐによく使うフォルダやアセットを取り出せるような方法についてフォーカスを当ててみました。
1日を振り返ると、何気なく探す作業に費やしている時間は多いです。
探す必要がないショートカットを用意しておくことは作業を減らして高いモチベーションを維持できます。
自分の作業を振り返ってショートカットできないか考えてみましょう。