BsScriptBuiltin.cpp 944 B

12345678910111213141516171819202122232425262728293031
  1. #include "BsScriptBuiltin.h"
  2. #include "BsMonoManager.h"
  3. #include "BsMonoClass.h"
  4. #include "BsMonoMethod.h"
  5. #include "BsMonoUtil.h"
  6. #include "BsBuiltinResources.h"
  7. #include "BsScriptSpriteTexture.h"
  8. #include "BsScriptResourceManager.h"
  9. namespace BansheeEngine
  10. {
  11. ScriptBuiltin::ScriptBuiltin(MonoObject* instance)
  12. :ScriptObject(instance)
  13. { }
  14. void ScriptBuiltin::initRuntimeData()
  15. {
  16. metaData.scriptClass->addInternalCall("Internal_GetWhiteTexture", &ScriptBuiltin::internal_getWhiteTexture);
  17. }
  18. MonoObject* ScriptBuiltin::internal_getWhiteTexture()
  19. {
  20. HSpriteTexture whiteTexture = BuiltinResources::instance().getWhiteSpriteTexture();
  21. ScriptSpriteTexture* scriptSpriteTex = ScriptResourceManager::instance().getScriptSpriteTexture(whiteTexture);
  22. if (scriptSpriteTex == nullptr)
  23. scriptSpriteTex = ScriptResourceManager::instance().createScriptSpriteTexture(whiteTexture);
  24. return scriptSpriteTex->getManagedInstance();
  25. }
  26. }