MaterialのShaderプロパティーを表示 その2(Editor拡張)

コントロールの作成  プロパティの表示に必要なデータの取得で取得したプロパティのタイプ(prop_type)を用いて、プロパティのタイプによって作成するコントロールを変更します。 Colorプロパティ  colorプロパティに作用するAttributeはありません。そのため、以下に示すように色を選択するコントロールの作成のみを行っています。 Vectorプロパティ  Vectorプロパティもcol […]

MaterialのShaderプロパティーを表示 その1(Editor拡張)

 Inspectorに表示されるようなMaterialのShaderプロパティをEditorWindowで表示するScriptを作成しました。基本的なAttributeにも対応しています。 ※コントロールの作成部分は次の記事、「MaterialのShaderプロパティーを表示 その2(Editor拡張)」に記述しています。 Script  作成したScriptは以下の通りです。 プロパティの表示に […]

自作GUIまとめ(Editor拡張)

 作成したGUIコントロールを一つのクラスへまとめたScriptです。詳しくはFloatFieldの作成 その2(Editor拡張)、ラジオボタンの作成(Editor拡張)、Sliderの作成(Editor拡張)、FloatFieldの作成(Editor拡張)で説明しています。 Script  作成したGUIコントロールは以下の通りです。 これらのGUIコントロールを実行するScriptは以下の通 […]

FloatFieldの作成 その2(Editor拡張)

 以前にFloatFieldを作成した際(FloatFieldの作成)、横幅の計算にEditorWindow.positionを用いていました。しかし、スクロールバーが表示された場合、EditorWindow.positionはウィンドウの幅をであるためFloatFieldがスクロールバーで隠れてしまいます。そこで、横幅の計算をGUILayoutUtility.GetRectへ変更し、さらにPre […]

ポップアップウィンドウの作成(Editor拡張)

 Editor拡張でポップアップウィンドウ作成する方法です。 その1  PopupWindowContentを継承したクラスを作成し、これをPopupWindow.Showでポップアップウィンドウとして開きます。 Script  下記Scriptでは、表示されたボタンを押すとポップアップウィンドウが開きます。このポップアップウィンドウ内に前回作成したラジオボタンを表示し、選択したボタンのインデック […]

ラジオボタンの作成(Editor拡張)

 EditorWindowでラジオボタンを作成する方法です。 GUILayout.SelectionGridを用いて作成  GUILayout.SelectionGridは選択したボタンのインデックスを返します。動作としてはラジオボタンと同じですが、実行すると このように、複数のボタンが並んだ状態で表示されます。このGUILayout.SelectionGridに、EditorStyle.radi […]

Sliderの作成(Editor拡張)2020/08/31修正

 GUIStyleを自由に変更できるようSliderを自作しました。 Label、Slider、FloatFieldを横並びで表示  EditorGUILayout.Sliderによって作成されるコントロール(Label、Slider、FloatField)を別々に作成し、これらを横へ並べることでSliderを作成ます。これにより、各要素へ自由にGUIStyleを設定することができるようになります […]

FloatFieldの作成(Editor拡張)2020/07/11修正

 EditorGUILayout.FloatFieldで作成したFloatFieldのラベルの色を変更しようとGUIStyleを変更したところ、テキスト入力部分のスタイルしか変更できませんでした。そこで、FloatFieldを自作することで、自由にラベルの色等を変更できるようにしました。 LabelFieldとFloatFieldを横並びで表示  FloatFieldを作成すると、ラベル部分(La […]

Custom Nodeの作成(Shader Graph Version7.3.1)

 Unityではシェーダを視覚的に作成できる「Shader Graph」が使用できます。このShader Graphでは様々なノードが利用でき、それらを繫げることでシェーダを作成します。このノードの中にCustom Function Nodeがあり、これを利用することでオリジナルのノードを作成することができます。 ノードへ直接記述する方法  Shader Graphを開き、Custom Funct […]

ノイズのタイリング

パーリンノイズのタイリング  九個のQuadを並べ、シェーダでノイズ2(パーリンノイズ)で作成したパーリンノイズを生成すると このように、境界ができてしまいます。この原因と解決法を探るため、一次元パーリンノイズを並べたグラフと作成しました。 グラフの中央が境界となっています。パーリンノイズは青色の直線と赤色の直線を補間することにより求めています。このグラフより、青色と赤色の直線は一つの直線となって […]

1 6