矩阵/四元数问题

发布于 2024-12-24 21:47:13 字数 214 浏览 1 评论 0原文

所以我得到了两个矩阵,模型视图矩阵(应该只在 Y 轴上旋转)和旋转矩阵(只在 Y 轴上旋转)。

现在我需要知道投影(我正在查看的视图)的角度和旋转矩阵的角度,然后我需要根据该结果分配一个值(0 到 8 之间)。

或者任何其他方式我可以将两个旋转加在一起并获得 0 到 8 之间的值。

所以基本上,如果你看 90d 而敌人正在走 180d,你会看到敌人的精灵画在右边。

So I got two matrices, the modelview matrix (should only rotates on the Y axis) and a rotation matrix (only rotates on the Y axis).

Now I need to know what the angle is of the projection (the view I'm looking at) and the rotation matrix's angle then I need to assign a vallue (between 0 and 8) based on that result.

or any other way I can add two rotations together and get a value between 0 and 8.

So basically if you're looking 90d and the enemy is walking 180d you'll see the sprite of the enemy drawn going right.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

粉红×色少女 2024-12-31 21:47:13

现在忘记矩阵,根据你的图片,我认为你需要的是:

direction = (model_view_rotation + enemy_rotation) % 360
direction = floor((direction + 22.5) / 45.0)

这应该给你一个 0 到 8 之间的值

我假设视图 8 实际上与视图 0 相同?

Forget matrices for now, based on your picture I think all you need is:

direction = (model_view_rotation + enemy_rotation) % 360
direction = floor((direction + 22.5) / 45.0)

which should give you a value between 0 and 8

I'm assuming that view 8 is actually the same as view 0 ?

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文