BsScriptPhysicsQueryHit.generated.cpp 2.2 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071
  1. #include "BsScriptPhysicsQueryHit.generated.h"
  2. #include "BsMonoMethod.h"
  3. #include "BsMonoClass.h"
  4. #include "BsMonoUtil.h"
  5. #include "BsScriptGameObjectManager.h"
  6. #include "Math/BsVector3.h"
  7. #include "Wrappers/BsScriptVector.h"
  8. #include "Math/BsVector2.h"
  9. #include "Wrappers/BsScriptVector.h"
  10. #include "../../../bsf/Source/Foundation/bsfCore/Components/BsCCollider.h"
  11. #include "BsScriptCCollider.generated.h"
  12. namespace bs
  13. {
  14. ScriptPhysicsQueryHit::ScriptPhysicsQueryHit(MonoObject* managedInstance)
  15. :ScriptObject(managedInstance)
  16. { }
  17. void ScriptPhysicsQueryHit::initRuntimeData()
  18. { }
  19. MonoObject*ScriptPhysicsQueryHit::box(const __PhysicsQueryHitInterop& value)
  20. {
  21. return MonoUtil::box(metaData.scriptClass->_getInternalClass(), (void*)&value);
  22. }
  23. __PhysicsQueryHitInterop ScriptPhysicsQueryHit::unbox(MonoObject* value)
  24. {
  25. return *(__PhysicsQueryHitInterop*)MonoUtil::unbox(value);
  26. }
  27. PhysicsQueryHit ScriptPhysicsQueryHit::fromInterop(const __PhysicsQueryHitInterop& value)
  28. {
  29. PhysicsQueryHit output;
  30. output.point = value.point;
  31. output.normal = value.normal;
  32. output.uv = value.uv;
  33. output.distance = value.distance;
  34. output.triangleIdx = value.triangleIdx;
  35. GameObjectHandle<CCollider> tmpcollider;
  36. ScriptCColliderBase* scriptcollider;
  37. scriptcollider = (ScriptCColliderBase*)ScriptCCollider::toNative(value.collider);
  38. if(scriptcollider != nullptr)
  39. tmpcollider = static_object_cast<CCollider>(scriptcollider->getComponent());
  40. output.collider = tmpcollider;
  41. return output;
  42. }
  43. __PhysicsQueryHitInterop ScriptPhysicsQueryHit::toInterop(const PhysicsQueryHit& value)
  44. {
  45. __PhysicsQueryHitInterop output;
  46. output.point = value.point;
  47. output.normal = value.normal;
  48. output.uv = value.uv;
  49. output.distance = value.distance;
  50. output.triangleIdx = value.triangleIdx;
  51. ScriptComponentBase* scriptcollider = nullptr;
  52. if(value.collider)
  53. scriptcollider = ScriptGameObjectManager::instance().getBuiltinScriptComponent(static_object_cast<Component>(value.collider));
  54. MonoObject* tmpcollider;
  55. if(scriptcollider != nullptr)
  56. tmpcollider = scriptcollider->getManagedInstance();
  57. else
  58. tmpcollider = nullptr;
  59. output.collider = tmpcollider;
  60. return output;
  61. }
  62. }