【Unity】ベータ版を使って最新機能を先取りする神々の遊び
Preview版のVFX GraphがUnity2018.3.0bxで使えるらしいので、まずはベータ版のインストールから。Unity Hubからインストールすると最短4クリックでインストールが終わって楽ちんです。
あなたのゲームをいち早く完成させるための研究所
Preview版のVFX GraphがUnity2018.3.0bxで使えるらしいので、まずはベータ版のインストールから。Unity Hubからインストールすると最短4クリックでインストールが終わって楽ちんです。
Unity Hubの1.2.0版をベースにインストール手順、使用方法、メリットデメリットをまとめました。Unity Hubに興味がある人、これからUnityを始めるし、便利機能を使いたい! って人におすすめ。
ゲームの見た目に関わる部分として、カメラワークが挙げられます。この記事ではカメラワークの種類を紹介するとともに、Unityで実装する場合はどうなるのか、実例付きでまとめています。
Application.internetReachabilityを確認することで、端末がインターネットに接続されているかどうかを簡単に確認することができます。そのサンプルと実行イメージを作ってみたので、サクッと導入してみましょ。
コルーチンをおまじない的に使っているけど、そもそもコルーチンってなんなのなの? って思った時にオススメしたい記事。ポイントは中断と再開が可能な点。初心者向けを謳いながら割とマニアックなところに触れたり、マルチスレッドとの目的の違いにも触れています。
The referenced script on this Behaviour (Game Object '<ゲームオブジェクト名>') is missing!のメッセージが表示されるときの対処法について。多くの場合、スクリプトを消したことでそれを参照していたコンポーネントでMissingが発生しているのが原因です。特にPrefabのコンポーネントは忘れやすいので注意。
AddressableAssetを使った場合に、fbxファイルをインポートした時に設定するAnimationタブにてエラーが発生します。外部からインポートしたアニメーションクリップの設定ができなくなるので、AddressableAssetを使っていても、fbxのインポート時は外しておくべし。
SliderのValueをInspectorから変更するとSendMessage cannot be called during Awake, CheckConsistency, or OnValidateの警告が出て来ますが、これはUnity2018.2でも変わらずでした。実害は無い(と思う)けど、コンソールが警告で埋め尽くされるので、できれば直して欲しいなーUnityさん(チラッ)
5.6で作ったプロジェクトをUnity2018.2で開いたところ、PackageManagerに関する権限エラーが約200件ほどコンソールに出力されました。sudoを使った権限変更で対応できるので、ビビらず対処するとよろし。
プログラミングをしていると無意識のうちに車輪の再発明をしてしまう場合。自分のアイディアが既に考えられたものだと知るのは辛いけど、先駆者がいないか確認するのは大事。UnityではAsset Storeをうまく使うと車輪の再発明を避けられるので、そのメリットをお伝えしたい。
Inspectorウィンドウへの表示に関係するUnityのAttributeをまとめています。このブログではこれらのAttributeについて詳細記事を作成しているので、使い方を掴むのにも使えます。
HelpURLAttributeを使うことでInspectorウィンドウからヘルプページに飛ばすことができます。1クラスにつき1つのURLを指定できるので、自作クラスのリファレンスページに飛ぶようにすれば、コードを触らない人にもフィールドやメソッドの役割を伝えることができます。
Inspectorウィンドウに表示するフィールドはToolTipAttributeを使ってヒントメッセージを表示すると親切です。カーソルを合わせるだけでメッセージを表示できるので、Inspectorウィンドウ内のスペースも取らなくて便利。チーム内の意思伝達のおともにぜひ。
複数行テキストを扱うなら、[Multiline]もいいけど[TextArea]を使うと便利です。何よりスクロールバーを使えるのがありがたい。テキストエリアの内容確認ならスクロールバーがあった方が何かと扱いやすいです。
Inspectorウィンドウで複数行テキストエリアを表示したい場合は[Multiline]のAttributeを使います。長文を書く場合には通常のテキストフィールドだと狭いため、ある程度大きい複数行テキストエリアにしておくと編集しやすいです。
Buttonコンポーネントを使わないでクリックを検知する方法です。UIを用意しなくても、3Dオブジェクトでクリックを検知できるため、3Dゲームで直接オブジェクトをクリックして何かアクションを起こしたい時に便利。
追加タグを持ったオブジェクトが含まれるパッケージをインポートした時に、スクリプトからそのタグを使って操作するとどうなるか実験してみました。スクリプトリファレンスにも『タグマネージャーで登録してから使ってね』とあるので予想はつきますが、手を動かしてチャレンジ。
バッケージをインポートしたときのタグの動作についてメモ。追加タグを持ったオブジェクトをインポートした直後は追加タグが一覧に追加されていますが、プロジェクトを開きなおすとタグの一覧から消えています。なんだこれ。
SpaceAttributeはInspectorウィンドウで余白を表示することができるAttributeです。関連性のあるフィールドをまとめて表示すれば、どこを触ったらいいのか分かりやすくなります。HeaderAttrubuteと組み合わせればより効果的。
HeaderAttributeを使って、Inspectorウィンドウに表示されるフィールドを整理して表示できます。RPG系のゲームではテストプレイ中にパラメータをいじることも多いと思うので、Headerをうまく使って整理しておくと、操作するべきフィールドがすぐに見つかるはず。