问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

unity,物体旋转后会回再次旋转到相邻设置好的最近角度代码。

发布网友 发布时间:2023-01-16 23:36

我来回答

2个回答

热心网友 时间:2023-11-18 03:10

//物体位置随鼠标转动,转动范围*在0-36之间
public float rotateSpeed = 10.0f;//旋转速率

public float mouseSpeed = 1.0f;//鼠标移动速率
private Vector3 lastMousePos;
private float minAngel = 0.0f;//允许最小角度

private float maxAngel = 36.0f;//允许最大角度

void Start()
{
lastMousePos = Input.mousePosition;
}
void Update()

{
Quaternion targetQua;
targetQua = Quaternion.Euler(0, (Input.mousePosition - lastMousePos).x * mouseSpeed, 0) * transform.localRotation;
transform.localRotation = Quaternion.Euler(targetQua.eulerAngles.x, Mathf.Clamp(Mathf.Min(targetQua.eulerAngles.y, 360.0f - targetQua.eulerAngles.y), minAngel, maxAngel), targetQua.eulerAngles.z);
lastMousePos = Input.mousePosition;
}

//判断离0,12,24,36哪个最近

float FindNearestAngel(float curAngel)
{
float nearestAngel=0.0f;
if (curAngel >=0.0f && curAngel <6.0f)
{
nearestAngel = 0.0f;
}
else if (curAngel >= 6.0f && curAngel < 18.0f)
{
nearestAngel = 12.0f;
}
else if (curAngel >= 18.0f && curAngel < 30.0f)
{
nearestAngel = 24.0f;
}
else if (curAngel >= 30.0f && curAngel <= 36.0f)
{
nearestAngel = 36.0f;
}
return nearestAngel;
}
//自动转动到最近的角度
transform.rotation = Quaternion.Lerp(transform.rotation, Quaternion.Euler(0, FindNearestAngel(transform.rotation.eulerAngles.y), 0), Time.deltaTime * rotateSpeed)

热心网友 时间:2023-11-18 03:11

没看懂,要是想做旋转动画可以使用tween插件,或者做成动画就行了,,,,,,是这个意思吧追问具体要求是物体有初始位置随鼠标转动,转动范围是0至36,退出移动状态是判断此时所处角度距离0,12,24和36中4个最相近的角度值,并自动转到该角度。

热心网友 时间:2023-11-18 03:10

//物体位置随鼠标转动,转动范围*在0-36之间
public float rotateSpeed = 10.0f;//旋转速率

public float mouseSpeed = 1.0f;//鼠标移动速率
private Vector3 lastMousePos;
private float minAngel = 0.0f;//允许最小角度

private float maxAngel = 36.0f;//允许最大角度

void Start()
{
lastMousePos = Input.mousePosition;
}
void Update()

{
Quaternion targetQua;
targetQua = Quaternion.Euler(0, (Input.mousePosition - lastMousePos).x * mouseSpeed, 0) * transform.localRotation;
transform.localRotation = Quaternion.Euler(targetQua.eulerAngles.x, Mathf.Clamp(Mathf.Min(targetQua.eulerAngles.y, 360.0f - targetQua.eulerAngles.y), minAngel, maxAngel), targetQua.eulerAngles.z);
lastMousePos = Input.mousePosition;
}

//判断离0,12,24,36哪个最近

float FindNearestAngel(float curAngel)
{
float nearestAngel=0.0f;
if (curAngel >=0.0f && curAngel <6.0f)
{
nearestAngel = 0.0f;
}
else if (curAngel >= 6.0f && curAngel < 18.0f)
{
nearestAngel = 12.0f;
}
else if (curAngel >= 18.0f && curAngel < 30.0f)
{
nearestAngel = 24.0f;
}
else if (curAngel >= 30.0f && curAngel <= 36.0f)
{
nearestAngel = 36.0f;
}
return nearestAngel;
}
//自动转动到最近的角度
transform.rotation = Quaternion.Lerp(transform.rotation, Quaternion.Euler(0, FindNearestAngel(transform.rotation.eulerAngles.y), 0), Time.deltaTime * rotateSpeed)

热心网友 时间:2023-11-18 03:11

没看懂,要是想做旋转动画可以使用tween插件,或者做成动画就行了,,,,,,是这个意思吧追问具体要求是物体有初始位置随鼠标转动,转动范围是0至36,退出移动状态是判断此时所处角度距离0,12,24和36中4个最相近的角度值,并自动转到该角度。

声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
...啊?我从嘴里吐出去是直的算过肺了吗?我不会从鼻子里出去_百度... 恶心呕吐是什么? 高考数学大题应注意哪些问题呢? 高考数学可不可以用高等数学啊 高考数学 基础知识点 常见考查方式 高考数学考什么内容 一般纳税人如何交所得税 以前的QQ忘记密码了那时候不要了就不找回密码了,现在想找回来,但是又没... 常州机场坐飞机流程 常州机场大巴时刻表 ...我早上九点起飞的飞机, 然后我这的机场快线大巴到机场时70分钟,_百 ... unity3d的Quaternion.identity和transform.rotation区别是什么 保险公司被接管,为什么停发员工五险一金? 我会听老师的话,好好上学学文化,是什么歌名 成人自考本科可以报考公务员吗 自考公务员需要什么条件? 上海至东阳木雕城怎么去 从上海南站坐长途车到浙江东阳的西站还是东站啊? 上海机场到金华东阳怎么走 上海浦东机场到浙江东阳怎样坐车最方便? 上海到东阳要去哪里坐车?车票费是多少? 上海嘉定江桥到浙江东阳怎么坐车呀 上海到东阳怎么走 什么是透支?请教. 桂林理工大学附近有什么合适的聚餐的地方? 保税区间转入是什么意思 一段纯音乐 跪求:舒缓的,舒服的,钢琴曲或纯音乐。 问一首纯音乐,钢琴曲,风格轻快前面有点像雨杂乱地落下 惠普笔记本预装Win7 32位家庭版,系统貌似崩溃,怎么恢复出厂 “戏子”一词在古时候是什么意思。 萨曼莎·鲁斯·帕布的主要作品 他客串了很多漫威的电影。用英语怎么说?最好用上guest appearance 维生素e乳的功效与作用是什么 2021高考语文新高考一卷平均分 我想开网店,自己拍衣服,成都哪里有学习这种摄影? 成都哪些电商服装拍摄公司招人呢 网店摄影棚背景布(纸)哪里有卖的,价格?(最好是成都的地点,或者网上网店) 云信可以用缅甸卡注册吗 2020年第四期思想汇报时间 低碳环保活动有哪些 生物除磷的简介 招商银行要如何挂失 ce修改器如何修改花园战争2硬币 魅族5.1.11刷回5.6.10.18需要清除数据吗 双清清的是什么 为啥我魅蓝2之前开机充电不能充到100%,而99%,现在又可以充到100%。注意都是用原装充电器 资管新规后,理财产品开始净值化转型,不包括什么 如何在手机下载12306管家app 华为p50pro截长图教程 如何投资A50股指期货