position | @param position Позиция текущей точки. |
direction | @param rotation Вращение маркера. |
size | @param size Размер маркера. |
pickSize | The size of the button for the purpose of detecting a click. |
capFunc | @param normal Перпендикуляр диска. |
bool True when the user clicks the button.
Создает 3D кнопку.
Работает почти как обычная GUI.Button, но имеет 3D позицию и отображается только обрабатываемой функцией
Важно: Используйте HandleUtility.GetHandleSize если вам нужны маркеры постоянного размера.
"Кнопка Маркер - прямоугольник в окне Scene".
To use this example, place this script in the Assets/Editor folder:
And the script attached to the object that you want to show a button in the editor:
using UnityEngine; using UnityEditor;
public class ButtonCheckerEditor : MonoBehaviour { // Create a simple button on 3D space and when the user clicks over the handle // it prints a message.
[CustomEditor( typeof( ButtonChecker ) )] class ButtonHandle : Editor { void OnSceneGUI( ) { ButtonChecker b = target as ButtonChecker;
bool pressed = Handles.Button( b.transform.position + new Vector3(0, 2, 0), Quaternion.identity, 3, 6, Handles.RectangleCap ); if( pressed ) { b.checkButton = true; Debug.Log( "The button was pressed!" ); } } } }
...and place this script on the object where you would like the Button to appear:
using UnityEngine;
public class ButtonChecker : MonoBehaviour { // Usage: Place this script on the object you want to create the button on.
public bool checkButton = false; }