TerrainRayHit.cs 1.1 KB

12345678910111213141516171819202122232425262728293031323334353637
  1. #if UNITY_EDITOR
  2. using UnityEngine;
  3. namespace O3DWB
  4. {
  5. public class TerrainRayHit
  6. {
  7. #region Private Variables
  8. private Ray _ray;
  9. private float _hitEnter;
  10. private Octave3DTerrainCollider _hitCollider;
  11. private Vector3 _hitPoint;
  12. private Vector3 _hitNormal;
  13. #endregion
  14. #region Public Properties
  15. public Ray Ray { get { return _ray; } }
  16. public float HitEnter { get { return _hitEnter; } }
  17. public Octave3DTerrainCollider HitCollider { get { return _hitCollider; } }
  18. public Vector3 HitPoint { get { return _hitPoint; } }
  19. public Vector3 HitNormal { get { return _hitNormal; } }
  20. #endregion
  21. #region Constructors
  22. public TerrainRayHit(Ray ray, RaycastHit raycastHit)
  23. {
  24. _ray = ray;
  25. _hitEnter = raycastHit.distance;
  26. _hitCollider = new Octave3DTerrainCollider(raycastHit.collider as TerrainCollider);
  27. _hitPoint = raycastHit.point;
  28. _hitNormal = raycastHit.normal;
  29. }
  30. #endregion
  31. }
  32. }
  33. #endif