Version: 5.3 (switch to 5.4b)
言語English
  • C#
  • JS

スクリプト言語

好きな言語を選択してください。選択した言語でスクリプトコードが表示されます。

Handles.ScaleSlider

フィードバック

ありがとうございます

この度はドキュメントの品質向上のためにご意見・ご要望をお寄せいただき、誠にありがとうございます。頂いた内容をドキュメントチームで確認し、必要に応じて修正を致します。

閉じる

送信に失敗しました

なんらかのエラーが発生したため送信が出来ませんでした。しばらく経ってから<a>もう一度送信</a>してください。ドキュメントの品質向上のために時間を割いて頂き誠にありがとうございます。

閉じる

キャンセル

マニュアルに切り替える
public static function ScaleSlider(scale: float, position: Vector3, direction: Vector3, rotation: Quaternion, size: float, snap: float): float;
public static float ScaleSlider(float scale, Vector3 position, Vector3 direction, Quaternion rotation, float size, float snap);

パラメーター

scale ユーザーが変更できる値
position ハンドルの位置
direction ハンドルの方向
rotation オブジェクト全体の回転
size ハンドルのサイズ
snap ユーザーが変更した後の新しい値

戻り値

float ユーザーのハンドル操作によって変更された値

説明

ディレクショナルスケールスライダーを作成します。

注意: 画面サイズに対して固定サイズのハンドルを持ちたい場合、 HandleUtility.GetHandleSize を使用します。


" シーンビューのスケールスライダーハンドル "


        
// Name this script "ScaleSliderEditor"
using UnityEngine;
using UnityEditor;

[CustomEditor(typeof(ScaleSlider))] [CanEditMultipleObjects] public class ScaleSliderEditor : Editor { public void OnSceneGUI() { ScaleSlider t = (target as ScaleSlider);

EditorGUI.BeginChangeCheck(); float scale = Handles.ScaleSlider(t.scale, Vector3.zero, Vector3.right, Quaternion.identity,3,0.5f); if (EditorGUI.EndChangeCheck()) { Undo.RecordObject(target, "Scale Slider"); t.scale = scale; t.Update(); } } }

そしてこのスクリプトをゲームオブジェクトにアタッチします。


        
// Name this script "ScaleSlider"
using UnityEngine;
[ExecuteInEditMode]
public class ScaleSlider : MonoBehaviour
{
    public float scale = 1;
    public void Update()
    {
        transform.localScale = new Vector3(scale,1,1);
    }
}