ScriptableWizard.OnDrawGizmos

function OnDrawGizmos () : void

Description

Called every frame when the wizard is visible.

Use this to draw wizard Gizmos in the scene view while creating your wizard.

See Also: Gizmos class.


Draws a sphere to visualize how it will be before creating the actual "Sphere" game object.

    // C#
// Creates a sphere where the gizmo is painted in the scene view.

using UnityEngine;
using UnityEditor;

public class ScriptableWizardOnDrawGizmos : ScriptableWizard {

public Vector3 spherePosition = Vector3.zero;
public float sphereRadius = 1;

[MenuItem ("Example/OnDrawGizmos example")]
static void CreateWindow() {
ScriptableWizard.DisplayWizard(
"Create a Sphere",
typeof(ScriptableWizardOnDrawGizmos),
"Create!");
}

void OnWizardUpdate() {
helpString =
"Set the sphere position and the sphere radius to draw the gizmo in the scene view";
if(sphereRadius > 0) {
errorString = "";
isValid = true;
} else {
errorString = "Radius has to be greater than 0";
isValid = false;
}
}

void OnDrawGizmos () {
Gizmos.color = Color.red;
Gizmos.DrawSphere (spherePosition, sphereRadius);
}

void OnWizardCreate() {
GameObject createdSphere = GameObject.CreatePrimitive(PrimitiveType.Sphere);
createdSphere.transform.position = spherePosition;
createdSphere.transform.localScale = new Vector3(sphereRadius, sphereRadius, sphereRadius);
}
}