SVHandles is a lightweight extension for Unity which allows you to quickly visualize and modify variables such as Vector3 and Bounds by simply adding [SVHandle]
to the variable, and nothing else.
The Following code produces this visual:
[SVHandle]
public Vector3 MyPoint = new Vector3(0, 10, 0);
So let's say you had some custom type you use often, that you would like to debug with this as well. That's easy, all you need to do is have a class in your project which inherits SVHandleDisplay
. For reference, here is how the code looks for drawing a Ray
in an SVHandle
.
public class RayDisplay : SVHandleDisplay
{
public override Type ExecutingType
{
get { return typeof(Ray); }
}
public override void Draw(SVDebugArgs args, ref object value)
{
Ray? ray = value as Ray?;
Handles.ArrowHandleCap(0, ray.Value.origin, Quaternion.LookRotation(ray.Value.direction), 1f, EventType.Repaint);
}
}
If you need to know more, soon there will be a wiki with all of the information you need!
To install SVHandles, simply click this link to download the DLL, and put it in your unity project. You can also clone the entire repository if you would like to further customize the extension.
If you do decide to extend SVHandles, it would be greatly appreciated if you could copy your display code into a PullRequest to make things better for everyone, I'm only one person, so I can't think of everything! (Same goes for posting issues if you see something wrong, we're all here to improve.)