admin 管理员组文章数量: 1086061
3D动作手游的辅助瞄准算法(三)
书接上回,现在我们得到了一个基本正确的锁定优先级算法:
float T = distance * Mathf.Sin(angle * Mathf.Deg2Rad);
但是还有两个因素没有考虑:镜头视角和角色移动趋势
先说镜头
实际操作角色的时候,镜头朝向和角色朝向可能是不同的,甚至相反的
而直觉上应该优先锁定镜头中的目标,而不是角色视角中的目标
所以把玩家朝向,改成了镜头的朝向
//Vector3 f = Player.transform.forward;
Vector3 f = Camera.Main.transform.forward;
再说输入
当目标在前方,但是摇杆往左或右拉的时候,
直觉上应该在输入的方向上找新的锁定的目标,即
f = Quaternion.Euler(0,InputAngle,0) * f;
下期贴上完整代码
本文标签: 3D动作手游的辅助瞄准算法(三)
版权声明:本文标题:3D动作手游的辅助瞄准算法(三) 内容由网友自发贡献,该文观点仅代表作者本人, 转载请联系作者并注明出处:http://www.roclinux.cn/b/1687941148a160091.html, 本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容,一经查实,本站将立刻删除。
发表评论