using System; using System.Runtime.CompilerServices; using BansheeEngine; namespace BansheeEditor { /// /// Handles rendering of the scene gizmos for the specified camera. /// internal sealed class SceneGizmos : ScriptObject { /// /// Creates a new scene gizmo renderer. /// /// Camera into which the gizmos will be rendered. internal SceneGizmos(Camera sceneCamera) { Internal_Create(this, sceneCamera.Native.GetCachedPtr()); } /// /// Queues gizmo drawing for this frame. /// internal void Draw() { Internal_Draw(mCachedPtr); } [MethodImpl(MethodImplOptions.InternalCall)] private static extern void Internal_Create(SceneGizmos managedInstance, IntPtr camera); [MethodImpl(MethodImplOptions.InternalCall)] private static extern void Internal_Draw(IntPtr thisPtr); } }