【问题标题】:Making object stay on screen OpenGL SFML使对象留在屏幕上 OpenGL SFML
【发布时间】:2011-12-02 07:59:42
【问题描述】:

我在 OpenGL 中绘制一个三角形,您可以将它向上、向下、向左、向右移动。我正在使用 SFML 作为我的窗口框架,我想知道如何将我的三角形保持在窗口中而不让它移动到它之外,即如果它一直到顶部我希望它停止超过高度

【问题讨论】:

    标签: opengl sfml


    【解决方案1】:

    这在很大程度上取决于您的投影矩阵。您需要获得它的高/低边界(如果您使用透视,它们将取决于 Z 距离;使用正交矩阵,因为 Z 被压扁更容易),然后检查它们 - 如果您的对象关闭 - 禁止移动。

    【讨论】:

    • 是的,我正在使用 gluPerspective,那么我如何获得上限/下限?
    • 这是 gluPerspective 代码:opengl.org/wiki/GluPerspective_code Z 值均匀分布在近剪裁平面和远剪裁平面之间。我不知道 SFML 是否有任何捷径可以实现您的目标,所以我会选择自定义数学解决方案..
    猜你喜欢
    • 2013-06-04
    • 1970-01-01
    • 1970-01-01
    • 2011-01-25
    • 1970-01-01
    • 2017-07-21
    • 1970-01-01
    • 2020-11-08
    • 2019-05-13
    相关资源
    最近更新 更多