For editing custom assets, I am rendering a little preview scene using a PreviewRenderUtility in an EditorWindow and I'd like it support handles for convenient position editing. This is a rough outline of my code (which is ultimately called during the window's OnGUI): Code (CSharp): // begin preview _previewRenderUtility.BeginPreview(rect, GUIStyle.none); /* ... render the scene ... */ // do handles Handles.SetCamera(_previewRenderUtility.camera); editPos = Handles.PositionHandle(editPos, Quaternion.identity); // finalize preview _previewRenderUtility.EndAndDrawPreview(rect); rect is the rectangle of the GUI the preview is using. The position handle is rendered at the correct position and looks fine. However, it's processing mouse input in a wrong way: the detected mouse position is off. In order to select the handle, I have to move the mouse somewhere above and left of it. So there seems to be some discrepancy between Handles' screen-to-world position conversion and the preview's world-to-screen rendering, with the latter being correct. I feel like I need to tell Handles what part of the screen I'm using, but the variant of Handles.SetCamera that takes a rectangle is not documented and I couldn't get it to work properly. Does anybody know what I need to do here?