• 物体跟随鼠标旋转


    转载:https://www.taikr.com/article/3926

    void Start()
        {
     
        }
     
        // Update is called once per frame
        void Update()
        {
            FollowMouseRotate();
            FollowMouseMove();
        }
     
        //物体跟随鼠标旋转
        private void FollowMouseRotate()
        {
            //获取鼠标的坐标,鼠标是屏幕坐标,Z轴为0,这里不做转换  
            Vector3 mouse = Input.mousePosition;
            //获取物体坐标,物体坐标是世界坐标,将其转换成屏幕坐标,和鼠标一直  
            Vector3 obj = Camera.main.WorldToScreenPoint(transform.position);
            //屏幕坐标向量相减,得到指向鼠标点的目标向量,即黄色线段  
            Vector3 direction = mouse - obj;
            //将Z轴置0,保持在2D平面内  
            direction.z = 0f;
            //将目标向量长度变成1,即单位向量,这里的目的是只使用向量的方向,不需要长度,所以变成1  
            direction = direction.normalized;
            //物体自身的Y轴和目标向量保持一直,这个过程XY轴都会变化数值  
            transform.up = direction;
        }
     
        //跟随鼠标移动
        private void FollowMouseMove()
        {
            float moveSpeed = 3.0f;
            if (Input.GetTouch(0).phase == TouchPhase.Moved)    //如果按下鼠标左键,移动速度变快
            {
                moveSpeed = 6.0f;
                transform.Translate(Vector3.up * moveSpeed * Time.deltaTime);
            }
            else
            {
                transform.Translate(Vector3.up * moveSpeed * Time.deltaTime);
            }
        }
  • 相关阅读:
    首页下拉广告代码
    索引 CREATE INDEX
    苏三起解 故事
    日期正则表达式
    除去非空字符串函数
    数据库什么是字段应该设置索引
    警务通
    动态生成缩略图
    超级实用且不花哨的js代码大全
    无线警务移动办公系统解决方案
  • 原文地址:https://www.cnblogs.com/hanjun0612/p/14076671.html
Copyright © 2020-2023  润新知