【问题标题】:Data structure for clipping detection削波检测的数据结构
【发布时间】:2013-01-01 09:19:43
【问题描述】:

我将 SDL (pygame) 用于 cnc 模拟器。最初,屏幕刷新是使用画家算法完成的(只需从后到前绘制所有内容),但在大表面时它很快变得很慢。

为了加快重绘,我只刷新在任何给定时刻发生变化的屏幕部分,所以如果数值改变了它的值,只有它的表面和每个碰撞表面对应的子表面 被重绘。

目前,我正在对屏幕上的所有内容进行剪切测试以检测碰撞表面,虽然速度要快得多,但我认为应该有一种数据结构和/或算法来避免测试屏幕上的所有表面。

【问题讨论】:

  • google 的术语是“Z-plane hidden surface removal”
  • 你在使用精灵组吗?

标签: data-structures sdl pygame clipping


【解决方案1】:

您应该考虑使用quadtree 来存储每个曲面的边界。这将在查找碰撞表面时优化您的操作。

您可能会发现question / answer 很有用。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2018-12-02
    • 1970-01-01
    • 1970-01-01
    • 2019-07-17
    • 1970-01-01
    • 1970-01-01
    • 2021-10-07
    相关资源
    最近更新 更多