温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

unity中经常用到的语句(1)

发布时间:2020-06-14 14:02:46 来源:网络 阅读:1023 作者:一直都在a 栏目:开发技术

      经过这几天的学习,我发现很多的语句经常出现在我的代码里,在这里我把它总结一下;

  Camera.main.WorldToScreenPoint();            //将世界坐标转化为屏幕坐标;
  
  Vector3.Lerp(currentPos,targetPos,time);    //常用于平滑的移动位置;
  
  renderer.material.Color=Color.Lerp(currentColor,targetColor,time);      //平滑的改变渲染颜色;
  
  transform.RotateAround(rotatePoint,rotateDirection,rotateAngles);         //围绕某一物体旋转(rotatePoint:旋转点,rotateDirection:旋转方向,rotateAngles:旋转角度)

   例如:摄像机的平滑跟随

Camera mainCamera=Camera.main;
mainCamera.transform.position=this.transform.position+new Vector3(1,1,1);

mainCamera.transform.position=Vector3.Lerp(mainCamera.transform.position,transform.position+new Vector3(1,1,1),Time.deltaTime);

有关时间Time:

  Time.time;               //当前的时间
  Time.deltaTime;         //上一帧所消耗的时间;
  Time.fixedTime;            //固定增量时;
  Time.fixedDeltatime;      //固定增量间隔时间;
  Time.SmoothDeltatime;         //平滑DeltaTime;

关于旋转角度:

Mathf.MoveToWardsAngle(currentAngle,targetAngle,rotateSpeed);      //由当前角度旋转到目标角度,返回的值是旋转到目标角度的差值;

Quaternion target=Quaternion.Euler(0,60,0);    //将目标角度定位围绕y轴旋转60度;

transform.Rotation=Quaternion.Lerp(target,transform.Rotation,rotaSpeed);       //旋转需要的角度赋值;

例如:炮塔面向敌人;

float currentAngles=transform.eulerAngles.y;
transform.LookAt(target);
float targetAngleY=transform.eulerAngles.y;
float finalAngle=Mathf.MoveToWardsAngle(currentAngles.y,targetAngle,rotateSpeed);
transform.localEulerAngles=new Vector3(0,finalAngle,0);

好了先说到这里吧,每天进步一小步,哈哈;unity中经常用到的语句(1)

向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI