Version: 2022.3
言語: 日本語
public static Color ColorField (Rect position, Color value);
public static Color ColorField (Rect position, string label, Color value);
public static Color ColorField (Rect position, GUIContent label, Color value);
public static Color ColorField (Rect position, GUIContent label, Color value, bool showEyedropper, bool showAlpha, bool hdr);
Obsolete public static Color ColorField (Rect position, GUIContent label, Color value, bool showEyedropper, bool showAlpha, bool hdr, ColorPickerHDRConfig hdrConfig);

パラメーター

position 表示位置
label フィールドの前に表示するオプションのラベル
value 編集する色
showEyedropper True の場合、 Color Picker は Eyedropper 制御を表示する必要があります。False の場合は表示しません。
showAlpha True の場合、色のアルファ値を設定するユーザーを許可します。 False の場合、アルファコンポーネントを非表示にします。
hdr True の場合、色を HDR の値として扱い、 False の場合は標準的な LDR 値として扱います。

戻り値

Color ユーザーが選択した色

説明

Makes a field for selecting a Color.


Color field in an Editor Window.

using UnityEngine;
using UnityEditor;

// Change The color of the selected Game Objects class EditorGUIColorField : EditorWindow { Color matColor = Color.white;

[MenuItem("Examples/Mass Color Change")]

static void Init() { var window = GetWindow<EditorGUIColorField>(); window.position = new Rect(0, 0, 170, 60); window.Show(); }

void OnGUI() { matColor = EditorGUI.ColorField(new Rect(3, 3, position.width - 6, 15), "New Color:", matColor); if (GUI.Button(new Rect(3, 25, position.width - 6, 30), "Change!")) { ChangeColors(); } }

void ChangeColors() { if (Selection.activeGameObject) { foreach (GameObject obj in Selection.gameObjects) { Renderer rend = obj.GetComponent<Renderer>();

if (rend != null) { rend.sharedMaterial.color = matColor; } } } } }