quaternions - 围绕轴插值旋转 - 四元数和 slerp 与角度的线性插值
问题描述
我正在制作一个简单的 3d 游戏,其中我有一些船相撞并改变方向以避开彼此。
部分碰撞处理是围绕弹跳构建,然后稍微改变航向(A 船撞到 B 船,A 反弹回来,然后向左旋转 10 度并恢复运动)
到目前为止,我刚刚更新了航向,看起来有点突兀。我打算从旧标题插入新标题。这很简单,航向始终只是围绕一个轴的一个角度。所以基本上它从90度到110度。
我知道四元数和 slerp,这会给我一个恒定的速度(我的旋转应该如丝般顺滑)。但我最终感觉就像是用大锤杀死一只苍蝇。仅对旋转角度进行从 90 到 110 的常规香草线性插值的真正结果是什么?我使用四元数而不是更简单、更便宜的角度值线性插值是否会在视觉上明显?我没有需要点击的特别重要的“关键帧”——根本没有“动画数据”,3d 模型是静态的。
因此,如果有人可以阐明如果我只是插入旋转度而不是使用 slerp 可能会遇到的潜在问题,那将不胜感激。
谢谢/吉姆
解决方案
推荐阅读
- ipfs - IPFS Swarm 和 IPFS 集群
- c# - 公共静态任务运行(功能
功能); - javascript - 当我在 GitHub 页面上运行我的项目时,卡内的图像不显示
- angular - 如何以角度 2,4 在同一页面中从一个地方到另一个地方获取参数
- javascript - documet.getElementBy 没有传递值
- javascript - PWA 推送通知是否支持 iOS?
- json - 我们如何检查最终用户是否未更改预填充?
- android - 在android中手动实现简单的类似滚动的行为
- css - Css渐变背景阴影
- ajax - TransactionScope 和 Ajax 调用返回错误响应