BsScriptCMeshCollider.generated.cpp 1.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748
  1. #include "BsScriptCMeshCollider.generated.h"
  2. #include "BsMonoMethod.h"
  3. #include "BsMonoClass.h"
  4. #include "BsMonoUtil.h"
  5. #include "../../../bsf/Source/Foundation/bsfCore/Components/BsCMeshCollider.h"
  6. #include "BsScriptResourceManager.h"
  7. #include "BsScriptPhysicsMesh.generated.h"
  8. namespace bs
  9. {
  10. ScriptCMeshCollider::ScriptCMeshCollider(MonoObject* managedInstance, const GameObjectHandle<CMeshCollider>& value)
  11. :TScriptComponent(managedInstance, value)
  12. {
  13. }
  14. void ScriptCMeshCollider::initRuntimeData()
  15. {
  16. metaData.scriptClass->addInternalCall("Internal_setMesh", (void*)&ScriptCMeshCollider::Internal_setMesh);
  17. metaData.scriptClass->addInternalCall("Internal_getMesh", (void*)&ScriptCMeshCollider::Internal_getMesh);
  18. }
  19. void ScriptCMeshCollider::Internal_setMesh(ScriptCMeshCollider* thisPtr, MonoObject* mesh)
  20. {
  21. ResourceHandle<PhysicsMesh> tmpmesh;
  22. ScriptPhysicsMesh* scriptmesh;
  23. scriptmesh = ScriptPhysicsMesh::toNative(mesh);
  24. if(scriptmesh != nullptr)
  25. tmpmesh = scriptmesh->getHandle();
  26. thisPtr->getHandle()->setMesh(tmpmesh);
  27. }
  28. MonoObject* ScriptCMeshCollider::Internal_getMesh(ScriptCMeshCollider* thisPtr)
  29. {
  30. ResourceHandle<PhysicsMesh> tmp__output;
  31. tmp__output = thisPtr->getHandle()->getMesh();
  32. MonoObject* __output;
  33. ScriptResourceBase* script__output;
  34. script__output = ScriptResourceManager::instance().getScriptResource(tmp__output, true);
  35. if(script__output != nullptr)
  36. __output = script__output->getManagedInstance();
  37. else
  38. __output = nullptr;
  39. return __output;
  40. }
  41. }