Вспомнил старое увлечение математической игрой Конвея "Жизнь". Сложно, конечно, назвать игрой эволюцию клеточных автоматов. Но наблюдение за развитием псевдопопуляции неких организмов действительно захватывает. Основные замечания по реализации: - Требуется DirectX 8.0 и выше. - Высокая скорость пересчета новой итерации (тест на Celeron 1700, объект из библиотеки: builder->max, алгоритм - Blockscan, итерация - 1980, число точек - 999116, время итерации 0.500 секунды). - Два алгоритма пересчета на выбор пользователя. - Алгоритм Ascetic. Оптимален для объектов, которые содержат мало ячеек, но занимают весьма большую площадь. Использует оперативную память скромно. Первая итерация выполняется на порядок дольше последующих итераций. Что связано с начальным упорядочением точек. - Алгоритм BlockScan. Оптимален для большого числа клеток расположенных кучно. В процессе оптимизации, правда, вышло так, что практически всегда BlockScan быстрее, чем Ascetic. - Вывод времен расчета итерации (dTc) и рендеринга картинки (dTr). - Функция BOM - Back One Move. - Большая встроеная библиотека объектов с возможностью расширения её пользователем. Загружайте и комбинируйте. - Ручное(колесико мышки, правые клики) и автоматическое масштабирование и центровка. - Простейшие операции с выделенными фрагментами - повороты на 90 градусов и отражение. - Границы или края зоны симуляции отсутствуют! Как бы далеко не улетели ваши глайдеры, это не имеет значения. - Возможность пакетного расчета - вычисление нескольких итераций без отображения на экран, что удобно для наблюдения за движением. - Импорт из распространенного в интернете формата *.life. - Ну и конечно возможность ручного задания объектов (левые клики мышью).