| 12345678910111213141516171819202122232425262728293031323334 |
- #include "BsScriptSceneGizmos.h"
- #include "BsScriptCamera.h"
- #include "BsGizmoManager.h"
- namespace BansheeEngine
- {
- ScriptSceneGizmos::ScriptSceneGizmos(MonoObject* object, const SPtr<Camera>& camera)
- :ScriptObject(object), mCamera(camera)
- {
- }
- ScriptSceneGizmos::~ScriptSceneGizmos()
- {
- if (GizmoManager::isStarted()) // If not active, we don't care
- GizmoManager::instance().clearRenderData();
- }
- void ScriptSceneGizmos::initRuntimeData()
- {
- metaData.scriptClass->addInternalCall("Internal_Create", &ScriptSceneGizmos::internal_Create);
- metaData.scriptClass->addInternalCall("Internal_Draw", &ScriptSceneGizmos::internal_Draw);
- }
- void ScriptSceneGizmos::internal_Create(MonoObject* managedInstance, ScriptCamera* camera)
- {
- new (bs_alloc<ScriptSceneGizmos>()) ScriptSceneGizmos(managedInstance, camera->getInternal());
- }
- void ScriptSceneGizmos::internal_Draw(ScriptSceneGizmos* thisPtr)
- {
- GizmoManager::instance().update(thisPtr->mCamera);
- }
- }
|