예제 #1
0
 public override void OnLateUpdate()
 {
     if (m_Target != null && m_Camera != null)
     {
         var uiPosition = CameraUtil.ConvertPosition(m_Camera, UIRoot.uiCamera, m_Target.position.SetY(yRecord));
         this.transform.position = uiPosition.SetZ(UIRoot.hudRoot.transform.position.z);
     }
 }
예제 #2
0
    static void ShowDamageImmediately(DamageInfo info)
    {
        var behaviour  = DamageNumPool.Get(info.pattern);
        var uiPosition = CameraUtil.ConvertPosition(info.camera, UIRoot.uiCamera, info.target.position);

        behaviour.transform.SetParentEx(UIRoot.hudRoot.PickBloodCanvas().transform);
        behaviour.transform.position      = uiPosition;
        behaviour.transform.localPosition = behaviour.transform.localPosition.SetZ(0);
        behaviour.transform.localScale    = Vector3.one;
        behaviour.PopUp(info);
    }
예제 #3
0
    void SyncPosition(bool force)
    {
        if (this.m_Target == null || this.camera == null)
        {
            return;
        }

        if (this.m_IsLocal)
        {
            var uiposition = CameraUtil.ConvertPosition(this.camera, UIRoot.uiCamera, this.m_Target.position + this.m_Offset);
            if (force || Vector3.Distance(this.prePosition, uiposition) > 0.0001f)
            {
                this.prePosition             = this.transform.position = uiposition;
                this.transform.localPosition = this.transform.localPosition.SetZ(0);
            }
        }
        else
        {
            if (force || Vector3.Distance(this.prePosition, this.m_Target.position + this.m_Offset) > 0.001f)
            {
                this.prePosition = this.transform.position = this.m_Target.position + this.m_Offset;
            }
        }
    }