BsSceneEditorWidget.h 858 B

12345678910111213141516171819202122232425262728293031323334353637
  1. #pragma once
  2. #include "BsEditorPrerequisites.h"
  3. #include "BsEditorWidget.h"
  4. namespace BansheeEngine
  5. {
  6. class SceneEditorWidget : public EditorWidget<SceneEditorWidget>
  7. {
  8. public:
  9. SceneEditorWidget(const ConstructPrivately& dummy, EditorWidgetContainer& parentContainer);
  10. virtual ~SceneEditorWidget();
  11. virtual void _update();
  12. static SceneEditorWidget* instance();
  13. static SceneEditorWidget* open();
  14. static void close();
  15. static const String& getTypeName();
  16. protected:
  17. void doOnResized(UINT32 width, UINT32 height);
  18. void updateRenderTexture(UINT32 width, UINT32 height);
  19. void render(const Viewport* viewport, DrawList& drawList);
  20. private:
  21. static SceneEditorWidget* Instance;
  22. RenderTexturePtr mSceneRenderTarget;
  23. GUIRenderTexture* mGUIRenderTexture;
  24. HCamera mCamera;
  25. SceneGrid* mSceneGrid;
  26. HEvent mRenderCallback;
  27. };
  28. }