Я сомневаюсь, что есть способ сделать это. Даже если и есть, это, вероятно, будет зависеть от браузера. Я могу предложить другой путь, хотя.
Вместо того чтобы хранить все данные для каждого поколения, сохраняйте снимки, сделанные время от времени. Поскольку игра жизни Конвея является детерминированной, вы можете легко сгенерировать будущие кадры из данного снимка. Возможно, вы захотите сохранить буфер в несколько кадров, чтобы сделать перемотку приятной и плавной.
На самом деле, это на самом деле * не решает проблему, так как в конечном итоге вам не хватит места. Однако если вы сохраняете каждые n
кадров, ваше приложение будет работать в n
раз дольше, что может быть достаточно продолжительным. Я бы порекомендовал вам наложить жесткие ограничения на то, как далеко в прошлое вы можете перематывать, чтобы у вас было ограничение на то, сколько вы должны хранить. Определите, сколько будет кадров (10 минут при 30 кадрах в секунду = 18000 frames
). Затем разделите frames
на то, сколько кадров вы можете сохранить (профилируйте различные веб-браузеры, чтобы понять это), и это интервал между снимками, которые вы должны использовать.