BabylonCamera.cs 2.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105
  1. using System.Runtime.Serialization;
  2. namespace BabylonExport.Entities
  3. {
  4. [DataContract]
  5. public class BabylonCamera : BabylonNode
  6. {
  7. public enum CameraMode
  8. {
  9. PERSPECTIVE_CAMERA = 0,
  10. ORTHOGRAPHIC_CAMERA = 1
  11. }
  12. [DataMember]
  13. public string lockedTargetId { get; set; }
  14. [DataMember]
  15. public string type { get; set; }
  16. [DataMember]
  17. public float[] position { get; set; }
  18. [DataMember]
  19. public float[] rotation { get; set; }
  20. [DataMember]
  21. public float[] rotationQuaternion { get; set; }
  22. [DataMember]
  23. public float[] target { get; set; }
  24. [DataMember]
  25. public float fov { get; set; }
  26. [DataMember]
  27. public float minZ { get; set; }
  28. [DataMember]
  29. public float maxZ { get; set; }
  30. [DataMember]
  31. public float speed { get; set; }
  32. [DataMember]
  33. public float inertia { get; set; }
  34. [DataMember]
  35. public float interaxialDistance { get; set; }
  36. [DataMember]
  37. public bool checkCollisions { get; set; }
  38. [DataMember]
  39. public bool applyGravity { get; set; }
  40. [DataMember]
  41. public float[] ellipsoid { get; set; }
  42. [DataMember]
  43. public CameraMode mode { get; set; }
  44. [DataMember]
  45. public float? orthoLeft { get; set; }
  46. [DataMember]
  47. public float? orthoRight { get; set; }
  48. [DataMember]
  49. public float? orthoBottom { get; set; }
  50. [DataMember]
  51. public float? orthoTop { get; set; }
  52. [DataMember]
  53. public bool isStereoscopicSideBySide;
  54. [DataMember]
  55. public object metadata { get; set; }
  56. [DataMember]
  57. public string tags { get; set; }
  58. public BabylonCamera()
  59. {
  60. position = new[] { 0f, 0f, 0f };
  61. rotation = new[] { 0f, 0f, 0f };
  62. // Default values
  63. fov = 0.8f;
  64. minZ = 0.1f;
  65. maxZ = 5000.0f;
  66. speed = 1.0f;
  67. inertia = 0.9f;
  68. interaxialDistance = 0.0637f;
  69. mode = CameraMode.PERSPECTIVE_CAMERA;
  70. orthoLeft = null;
  71. orthoRight = null;
  72. orthoBottom = null;
  73. orthoTop = null;
  74. type = "FreeCamera";
  75. }
  76. }
  77. }