How can I make a custom 3d editor within the Unity editor?

I want a programatically controllable view port within the Unity Editor. I want mouse and keyboard events too…

I am working on a project that involves click & drag work to create many game objects. I want my puzzle editor to be integrated into the Unity Editor, so that I can take full advantage of its features.

I scoured the documentation up and down, but was unable to find useful information about producing a custom 3d view port within the editor. I did find some functions that rendered objects, but failed to do any depth buffering.

At present, I am using an autohotkey script to capture mouse movement and feeding it into an editor script. That editor script hijacks a camera from an [undocumented] SceneView object, to do what I want.

Sounds to me like you’re working too hard against the flow. Unity is a highly extensible editor, but you seem to be trying to replace rather than extend. Check out Handles and Editor.OnSceneGUI, you’ll see it’s possible to create pretty powerful custom object editing, without trying to subjugate existing editor functionality.

BTW, specifically for controlling the viewport, there are Related Question which answer that…