【问题标题】:static array to fit the screen适合屏幕的静态数组
【发布时间】:2014-06-02 20:16:29
【问题描述】:

我在运行时生成 2D 地形对象,例如树木。游戏单元可以放置在任何地方,然后不得绘制周围放置阵列中的树木来创建开口。

没有地图数据,每次生成的世界都是一样的。树一次生成矩形区域。区域大小可能因屏幕分辨率而异。游戏内存是预先分配的,最好是静态内存分配。

我愚蠢地尝试根据屏幕高度和宽度创建一个数组,然后我将使用该数组将数组元素中的树替换为游戏对象。我无法基于非文字创建静态数组,因为静态数组需要在编译时知道它的大小。

如何存储我的矩形树区域数据,以便我可以根据它们的位置快速消除树木。

【问题讨论】:

  • 使用四叉树场景图并进行分层剔除?

标签: c++ game-engine


【解决方案1】:

您可以使用其中一种技术生成here 所述的动态二维数组。

【讨论】:

  • 这是一个有效的答案,带有一个很棒的帖子的链接,我将标记为答案。但是我意识到,如果我想在所有设备上制作一个相同的程序,那么我不妨为 iPad 3 分配一个大的静态数组,这是最高分辨率,然后将其中的一部分用于较低的分辨率,因为使用了内存由应用程序为每台设备预先分配相同的数量。
  • 对于那些感兴趣的人,我还考虑实施递归维度聚类并进行碰撞检测,或四叉树等,我认为这将是具有多种用途的有效解决方案,具有更灵活的对象位置布局。即空间数据结构
猜你喜欢
  • 2016-04-22
  • 1970-01-01
  • 2016-09-08
  • 1970-01-01
  • 2016-05-25
  • 1970-01-01
  • 2014-03-18
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多