我正在 Elm 中写一个roguelike ,其中有一个离散的 50x50 网格(请参阅share-elm.com 片段)。roguelike 是一种视频游戏,其中对象(如敌人、物品、墙壁等)由 ASCII 字符表示。因此,我应该能够将数百个不同的 ASCII 字符排列在一个矩形网格中。每个字符都应严格位于其网格单元内。
为了创建这个网格,我将每个角色放在一个正方形中container
(实际游戏容器的 1/50 大小)。这意味着我最多可以在游戏中拥有 2500 个容器。Elm<div>
为容器创建元素,即使我将这些容器转换Form
为collage
. 这使我的 Firefox 39.0 的性能非常缓慢。
如何在其网格单元格中创建一个具有良好对齐的 ASCII 字符(可能还有其他一些图形元素)的矩形网格,以便无论我同时拥有多少元素,拼贴仍然保持快速响应?每次我在拼贴中编写一个包含大量容器和其他元素的程序时,一般的惯用方法是什么?或者也许有一种完全不同的方法可以在 Elm 中创建活泼的矩形网格?