BsScriptCameraHandler.h 4.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107
  1. #pragma once
  2. #include "BsScriptEnginePrerequisites.h"
  3. #include "BsScriptObject.h"
  4. #include "BsVector2.h"
  5. #include "BsVector3.h"
  6. #include "BsVector2I.h"
  7. #include "BsRay.h"
  8. #include "BsDegree.h"
  9. #include "BsMatrix4.h"
  10. #include "BsRect2.h"
  11. #include "BsColor.h"
  12. namespace BansheeEngine
  13. {
  14. class BS_SCR_BE_EXPORT ScriptCameraHandler : public ScriptObject<ScriptCameraHandler>
  15. {
  16. public:
  17. SCRIPT_OBJ(BansheeEngineAssemblyName, "BansheeEngine", "CameraHandler")
  18. SPtr<CameraHandler> getInternal() const { return mCameraHandler; }
  19. private:
  20. ScriptCameraHandler(MonoObject* managedInstance);
  21. ~ScriptCameraHandler();
  22. void updateView(const HSceneObject& parent);
  23. static void internal_Create(MonoObject* managedInstance);
  24. static float internal_GetAspect(ScriptCameraHandler* instance);
  25. static void internal_SetAspect(ScriptCameraHandler* instance, float value);
  26. static float internal_GetNearClip(ScriptCameraHandler* instance);
  27. static void internal_SetNearClip(ScriptCameraHandler* instance, float value);
  28. static float internal_GetFarClip(ScriptCameraHandler* instance);
  29. static void internal_SetFarClip(ScriptCameraHandler* instance, float value);
  30. static Degree internal_GetFieldOfView(ScriptCameraHandler* instance);
  31. static void internal_SetFieldOfView(ScriptCameraHandler* instance, Degree value);
  32. static Rect2 internal_GetViewportRect(ScriptCameraHandler* instance);
  33. static void internal_SetViewportRect(ScriptCameraHandler* instance, Rect2 value);
  34. static UINT32 internal_GetProjectionType(ScriptCameraHandler* instance);
  35. static void internal_SetProjectionType(ScriptCameraHandler* instance, UINT32 value);
  36. static float internal_GetOrthographicHeight(ScriptCameraHandler* instance);
  37. static void internal_SetOrthographicHeight(ScriptCameraHandler* instance, float value);
  38. static float internal_GetOrthographicWidth(ScriptCameraHandler* instance);
  39. static Color internal_GetClearColor(ScriptCameraHandler* instance);
  40. static void internal_SetClearColor(ScriptCameraHandler* instance, Color value);
  41. static float internal_GetDepthClearValue(ScriptCameraHandler* instance);
  42. static void internal_SetDepthClearValue(ScriptCameraHandler* instance, float value);
  43. static UINT16 internal_GetStencilClearValue(ScriptCameraHandler* instance);
  44. static void internal_SetStencilClearValue(ScriptCameraHandler* instance, UINT16 value);
  45. static UINT32 internal_GetClearFlags(ScriptCameraHandler* instance);
  46. static void internal_SetClearFlags(ScriptCameraHandler* instance, UINT32 value);
  47. static int internal_GetPriority(ScriptCameraHandler* instance);
  48. static void internal_SetPriority(ScriptCameraHandler* instance, int value);
  49. static UINT64 internal_GetLayers(ScriptCameraHandler* instance);
  50. static void internal_SetLayers(ScriptCameraHandler* instance, UINT64 value);
  51. static Matrix4 internal_GetProjMatrix(ScriptCameraHandler* instance);
  52. static Matrix4 internal_GetProjMatrixInv(ScriptCameraHandler* instance);
  53. static Matrix4 internal_GetViewMatrix(ScriptCameraHandler* instance);
  54. static Matrix4 internal_GetViewMatrixInv(ScriptCameraHandler* instance);
  55. static int internal_GetWidthPixels(ScriptCameraHandler* instance);
  56. static int internal_GetHeightPixels(ScriptCameraHandler* instance);
  57. static Vector2I internal_WorldToScreen(ScriptCameraHandler* instance, Vector3 value);
  58. static Vector2 internal_WorldToClip(ScriptCameraHandler* instance, Vector3 value);
  59. static Vector3 internal_WorldToView(ScriptCameraHandler* instance, Vector3 value);
  60. static Vector3 internal_ScreenToWorld(ScriptCameraHandler* instance, Vector2I value);
  61. static Vector3 internal_ScreenToView(ScriptCameraHandler* instance, Vector2I value);
  62. static Vector2 internal_ScreenToClip(ScriptCameraHandler* instance, Vector2I value);
  63. static Vector3 internal_ViewToWorld(ScriptCameraHandler* instance, Vector3 value);
  64. static Vector2I internal_ViewToScreen(ScriptCameraHandler* instance, Vector3 value);
  65. static Vector2 internal_ViewToClip(ScriptCameraHandler* instance, Vector3 value);
  66. static Vector3 internal_ClipToWorld(ScriptCameraHandler* instance, Vector2 value);
  67. static Vector3 internal_ClipToView(ScriptCameraHandler* instance, Vector2 value);
  68. static Vector2I internal_ClipToScreen(ScriptCameraHandler* instance, Vector2 value);
  69. static Ray internal_ScreenToWorldRay(ScriptCameraHandler* instance, Vector2I value);
  70. static Vector3 internal_ProjectPoint(ScriptCameraHandler* instance, Vector3 value);
  71. static Vector3 internal_UnprojectPoint(ScriptCameraHandler* instance, Vector3 value);
  72. static void internal_SetRenderTarget(ScriptCameraHandler* instance, ScriptRenderTarget* target);
  73. static void internal_UpdateView(ScriptCameraHandler* instance, ScriptSceneObject* parent);
  74. SPtr<CameraHandler> mCameraHandler;
  75. UINT32 mLastUpdateHash;
  76. };
  77. }