为了正常的体验网站,请在浏览器设置里面开启Javascript功能!

unity3D鼠标控制物体旋转带阻尼效果

2023-06-24 4页 doc 31KB 20阅读

用户头像 个人认证

is_856463

暂无简介

举报
unity3D鼠标控制物体旋转带阻尼效果     unity3D鼠标控制物体旋转带阻尼效果                  最近做了一个鼠标拖拽360°旋转查看物体的功能,很基础的一个功能,代码不多写的很快但是最后出来的效果不是很满意,感觉没有灵魂,很死板僵硬,所以做了一点小修改,在鼠标拖拽结束时计算最后鼠标的加速度,让物体在继续旋转一段距离//////物体旋转的瞬时速度///Vector3Cube_MomentRato_Speed;//////物体旋转速度///publicfloatCube_Rato_Speed=0.2f;//////加速度递减值///publ...
unity3D鼠标控制物体旋转带阻尼效果
     unity3D鼠标控制物体旋转带阻尼效果                  最近做了一个鼠标拖拽360°旋转查看物体的功能,很基础的一个功能,代码不多写的很快但是最后出来的效果不是很满意,感觉没有灵魂,很死板僵硬,所以做了一点小修改,在鼠标拖拽结束时计算最后鼠标的加速度,让物体在继续旋转一段距离//////物体旋转的瞬时速度///Vector3Cube_MomentRato_Speed;//////物体旋转速度///publicfloatCube_Rato_Speed=0.2f;//////加速度递减值///publicfloatDecrease=0.2f;//UpdateiscalledonceperframevoidUpdate(){Cube_Rotation();}//////旋转物体///voidCube_Rotation(){//获取鼠标的移动floatMouse_x=Input.GetAxis("MouseX");floatMouse_y=Input.GetAxis("MouseY");Vector3mouve=newVector3(Mouse_y,Mouse_x,0);//按下鼠标左键if(Input.GetMouseButton(0)){//获取上一帧到当前帧的速度/加速度Cube_MomentRato_Speed=mouve/Time.deltaTime;}else{//松开左键时加速度根据比例递减继续旋转Cube_MomentRato_Speed*=Mathf.Pow(Decrease,Time.deltaTime);if(Mathf.Abs(Vector3.Magnitude(Cube_MomentRato_Speed))<1){Cube_MomentRato_Speed=Vector3.zero;}}transform.Rotate(Vector3.up,-Cube_MomentRato_Speed.y*Cube_Rato_Speed,Space.World);transform.Rotate(Vector3.right,Cube_MomentRato_Speed.x*Cube_Rato_Speed,Space.World);} -全文完-
/
本文档为【unity3D鼠标控制物体旋转带阻尼效果】,请使用软件OFFICE或WPS软件打开。作品中的文字与图均可以修改和编辑, 图片更改请在作品中右键图片并更换,文字修改请直接点击文字进行修改,也可以新增和删除文档中的内容。
[版权声明] 本站所有资料为用户分享产生,若发现您的权利被侵害,请联系客服邮件isharekefu@iask.cn,我们尽快处理。 本作品所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用。 网站提供的党政主题相关内容(国旗、国徽、党徽..)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。

历史搜索

    清空历史搜索