CUI_OrientOnCurvedSpace.cs 797 B

1234567891011121314151617181920212223242526272829
  1. using UnityEngine;
  2. using System.Collections;
  3. namespace CurvedUI
  4. {
  5. public class CUI_OrientOnCurvedSpace : MonoBehaviour
  6. {
  7. public CurvedUISettings mySettings;
  8. // Use this for initialization
  9. void Awake()
  10. {
  11. mySettings = GetComponentInParent<CurvedUISettings>();
  12. }
  13. // Update is called once per frame
  14. void Update()
  15. {
  16. Vector3 positionInCanvasSpace = mySettings.transform.worldToLocalMatrix.MultiplyPoint3x4(this.transform.parent.position);
  17. transform.position = mySettings.CanvasToCurvedCanvas(positionInCanvasSpace);
  18. transform.rotation = Quaternion.LookRotation(mySettings.CanvasToCurvedCanvasNormal(transform.parent.localPosition), transform.parent.up);
  19. }
  20. }
  21. }