Repository navigation
Releases
Releases · Practick121/CellularAutomaton_v2
V2.3.2
V2.3.2
Нововведения
- Добавлен ползунок, с помощью которого можно регулировать размер центрального квадрата генерации (size - это радиус квадрата, то есть size 2 - это квадрат 5 * 5)
- Добавлена возможность выбора цветов фона и клетки (теперь у клетки только один цвет, см. Изменения)
- Добавлен новый параметр у клеточного аппарата - радиус окрестности. Его можно изменять с помощью ползунка. Старая кнопка TYPENEIGHBOURS теперь отвечает за тип окрестности - Мура (квадратная) и Неймана (ромбовидная).
- Добавлены новые клеточные автоматы. Среди них - Modern Art, Bugs, Brian Brain, Star Wars, Faders.
- Добавлена версия для linux! Пока что поддерживает архитектуру x86-64, за остальные не ручаюсь
Изменения
- Изменено расположение кнопок в меню
- Изменена цветовая палитра клетки. Теперь у клетки лишь один цвет, но чем она старее, тем прозрачнее ее цвет.
- Теперь параметр Cnt Generations обозначает общее количество состояний клетки, включая и мертвую и живую. У автомата жизнь Cnt Gener. = 2. (В предыдущей версии учитывались все состояния, кроме мертвого)
- Теперь выводится вся информация о текущем клеточном автомате (все параметры)
- Теперь поля ввода Birth и Survive поддерживают ввод через диапазон допустимых значений. Например, если нужно указать, что клетка выживает при 33, 34, ..... 57 соседях, достаточно написать "33 - 57" (через пробел, без кавычек)
- Убраны Custom1 и Custom2
- Размер поля 1000->500, т.к. из-за некоторых нововведений (расширенный радиус, где каждая клетка проверяет около сотни соседей; альфа канал в цветах клеток) производительность снизилась
v2.3
V2.3
Нововведения:
- Добавлены поколения! Теперь у клетки есть новое состояние - старение. Если живая клетка не имеет нужного числа соседей, то она начинает стареть и через определённое число итераций умирает. Стареющая клетка считается живым соседом. Напомню, что кисть рисует только живую клетку (а не стареющую).
- Добавлена возможность вручную указать конфигурацию Birth Survive. Числа вводятся в соответствующие поля через пробел. Для применения введённой конфигурации нажмите Apply.
- Добавлены новые типы на проверку соседей. За это отвечает кнопка Type Neighbours. Возможные значения - 4, 8, 12, 24. В прошлых версиях это значение было равно 8 или 4. 4 - это окрестность фон Неймана, 8 - окрестность Мура, 12 и 24 по аналогии означают число проверяемых соседей.
- Зум возвращён! Теперь можно приближать вращая колесо мыши и скроллить, зажав колесо мыши. Также можно управлять камерой с клавиатуры - стрелки двигают камеру, M/N соответственно приближает и отдаляет камеру. R - вернуть камеру в начальное положение.
Изменения:
- Размер поля 501->1000.
- Большая часть кода изменена и структурирована. Да, все ещё много глобальных переменных, но их стало намного меньше. Добавлено пару классов ради удобства, удалён класс CellularAutomaton.
V2.2
Нововведения:
- Добавлена новая функция - теперь можно сгенерировать случайный клеточный автомат (со случайными множеством чисел для рождения клетки и для выживания клетки) c помощью кнопки NEWRANDOM (также устанавливает этот К.А. в текущий). SETRANDOM устанавливает в текущий К.А. случайно сгенерированный (не генерирует новый К.А.). Также справа посередине экрана будет отображаться параметры текущего К.А.
- Добавлены ползунки, для скорости симуляции (TPS) и для шанса появления клетки при генерации (GENERATE и GENERATESQUARE). Старые кнопки для регуляции скорости убраны.
- Добавлена новая функция - теперь можно переключать тип проверки на соседство. TYPENEIGHBOURS:8 - соседями являюся клетки по стороне и по диагонали. TYPENEIGHBOURS:4 - соседями являются клетки по стороне.
- Теперь поверхность симуляции не ограниченный квадрат, а тор (т.е. клетка (499, 499) соседняя с (0, 0).
Другие изменения:
- Улучшена производительность. Переделана отрисовка таблицы. Из-за этого зум был убран.
- Добавлена 32-битная версия в релиз (не факт что действительно работает).
Мелкие исправления:
- Теперь при расфокусе кнопки не будут нажиматься. Также кнопки не нажимаются если провести по ним зажатой мышью.
- Убран поток, взаимодействующий с пользователем. (Из-за него возникали проблемы - пока этот поток записывает изменения в таблицу, основной поток пересчитывает ее, из-за чего в частности кнопка Clean очищала только нижнюю часть экрана)
- Основной шрифт теперь - arial.ttf
V2.1
- Основное изменение: добавление многопоточности. Один дополнительный поток для графики (отрисовки всех спрайтов), другой для взаимодействия с пользователём (то есть в нём проверяется нажатие кнопок и рисование кистью).
Вследствии этого стало возможным увеличить размер таблицы. Теперь она 500 на 500, а также скорость симуляции практически не зависит от скорости отрисовки.
Но появились проблемы, которые пока не исправлены (я не знаю как их исправить, пока что), например - зум работает плохо: при резком увеличении таблица будет отрисовываться неправильно, но на следующем кадре уже будет всё норм. И другие мелкие. - Добавлены текстуры для кнопок и задний фон, чтобы программа лучше выглядела :)
Пару мелких исправлений: название программы отображается корректно, живые клетки не вылезают за границы таблицы.
Пока что релиз выпускается только для Windows, но скоро планируется сделать и для Linux.
На этом пока всё!
V2.0
Вторая версия клеточного автомата.
Отличается от первой версии:
- Добавлено приближение камеры
- Большее разнообразие клеточных автоматов
- Добавлен регулятор скорости
- Больший размер таблицы (более высокая скорость симуляции)