SceneGizmos.cs 1.1 KB

1234567891011121314151617181920212223242526272829303132333435
  1. using System;
  2. using System.Runtime.CompilerServices;
  3. using BansheeEngine;
  4. namespace BansheeEditor
  5. {
  6. /// <summary>
  7. /// Handles rendering of the scene gizmos for the specified camera.
  8. /// </summary>
  9. internal sealed class SceneGizmos : ScriptObject
  10. {
  11. /// <summary>
  12. /// Creates a new scene gizmo renderer.
  13. /// </summary>
  14. /// <param name="sceneCamera">Camera into which the gizmos will be rendered.</param>
  15. internal SceneGizmos(Camera sceneCamera)
  16. {
  17. Internal_Create(this, sceneCamera.Native.GetCachedPtr());
  18. }
  19. /// <summary>
  20. /// Queues gizmo drawing for this frame.
  21. /// </summary>
  22. internal void Draw()
  23. {
  24. Internal_Draw(mCachedPtr);
  25. }
  26. [MethodImpl(MethodImplOptions.InternalCall)]
  27. private static extern void Internal_Create(SceneGizmos managedInstance, IntPtr camera);
  28. [MethodImpl(MethodImplOptions.InternalCall)]
  29. private static extern void Internal_Draw(IntPtr thisPtr);
  30. }
  31. }