ECS(Entity Component System) 基礎中の基礎で作成したCubeを大量に生成します。 Script Cube CubeDataで使用するデータを定義しています。 Entityの取得及びComponentの追加を行っています。 Cubeを動かすための処理です。今回は大量にCubeを動かすのでJobSytemを使用して並列に実行しています。 Cubeの生成 Prefabを使用し […]
原点回りにCubeが回転するだけの単純なサンプルです。 Script CubeDataで使用するデータを定義します。 CubeAuthoringではEntityを取得し、そのEntityにCubeData Componentを追加しています。よって、CubeAuthoringにはCubeを動かすための処理はありません。また、GetEntityでTransformUsageFlags.Dynami […]
CustomVolumeParameter VolumeComponentで利用できるVolumeParameterは予め用意されているものがあります。しかし、enumのように既存のVolumeParameter以外のParameterを利用したい場合があります。この場合、VolumeParameterを継承したクラスを作成し、新たにVolumeParameterを作成する必要があります。 Sc […]
通常は一つのレンダーターゲットに対して描画を行います。これに対し、MRT(Multiple Render Target)では複数のレンダーターゲットへ一度に描画することができます。このMRTをRenderFeature内でCommandBufferを使用して実行します。これは、Library¥PackageCache¥com.unity.render-pipelines.universal@7. […]
前回(EditorでAnimatorの再生 その1)、Animator.UpdateによるAnimatorの再生を行いました。今回は、EditorWindowへAnimatorに設定されているパラメーターを表示し、それらを変更することでアニメーションの遷移を行う機能を追加しました。 Script 作成したScriptは以下の通りです。 パラメーターの取得と表示 Aniamtor.parame […]
Editor上でAnimatorの再生するEditorWindowを作成しました。 Animatorの再生 Animator.UpdateへTime.deltaTimeを渡すことでEditorでAnimatorを再生を行うことができます。 EditorWindowではLayout→Repaint→Updateの順に実行されます。試しにUpdate内以外でAnimatorの再生を行ってみました。 […]
作成したEditorWindowへMaterialEditorを用いてマテリアルのプロパティを表示する方法です。 MaterialEditorの作成とプロパティの表示 マテリアルエディターはEditor.CreateEditorによって作成することができます。これを用いてマテリアルのヘッダーとプロパティの描画を行います。 これを実行すると以下のようになります。 ヘッダーをクリックし、プロパティ […]
EditorWindowを分割するScriptを作成しました。 Script EditorWindowを分割するScriptは以下の通りです。 使用例に使用したScriptは以下の通りです。 使い方 このScriptを利用するにあたってはインスタンスの作成が必要となります。インスタンスを作成する際に、各領域の最小幅、最小高さ、境界線の太さ及び境界線の色を設定することができます。 二分割 垂直方 […]
EditorGUILayout.ObjectFieldやEditorGUI.ObjectFieldはGUIStyleを設定できないため、これらのコントロールは見た目の変更ができません。そこで、GUIStyleを自由に変更できるObjectFieldを作成しました。 Script 作成したscriptは以下の通りです。 ボタンなし ボタンがない場合のオブジェクトフィールドのScriptです。 […]
以前作成したポップアップウィンドウ(ポップアップウィンドウの作成)に検索機能を追加しました。 Script ポップアップウィンドウ 作成したScriptは以下の通りです。 検索を行うためのキーワードを入力するためのTextFieldを追加しています。EditorGUI.BeginChangeCheck()により、TextFieldの内容が変更された時のみ検索が実行されるようにしています。 始め […]