-
Каждый отрезок времени (секунда / количество фигур в секунду) будет появляться новая фигура. Вы сами задаёте количество фигур в секунду, а следовательно - отрезок времени появляения фигуры. Цвет и тип фигуры - случайны.
-
Вы можете так же изменить значение гравитации (увеличить или уменьшить скорость полёта фигур вниз). Гравитация и количество фигур в секунду ограничены количеством кадров в секунду.
-
При нажатии на свободное поле холста, появится новая случайная фигура, с рандомным цветом.
-
При нажатии на любую фигуру, она будет удалена. При этом, все фигуры того же типа изменяет свой цвет на цвет удалённой фигуры.
-
Над полем вы можете увидеть количество видимых фигур (Shapes Amount) и их общую площадь (Surface area);
-
Все фигуры построены средствами PIXI (линии, арки, кубическая Безье).
-
Цвет фигур случайный, с полупрозрачностью 50%.
-
Площадь сердечка НЕ точная, вычисляется с помощью имитационной модели, методом Монте-Карло. Из-за особенностей Math.random(), имеет бОльшую погрешность, чем ожидается от алгоритма.
-
Площади всех фигур округлены по математическим правилам до целых чисел.
-
Клонируем основную ветку репозитория с помощью команды: [email protected]:FeelineLord/shapesInvasion.git
-
Переходим в папку с проектом, устанавливаем зависимости командой: "npm install" (у Вас должен быть установлен node.js)
-
Запустить проект можно командой "npm start" (проект будет собираться в оперативной памяти, без минификаций) или "nmp run dev" (проект соберётся в папке dist, без минификаций).
-
Если Вы хотитите собрать build проекта с минификацией, запустите npm run build. Минифицированный проект будет собран в папку dist и Вы сможете увидеть итоговые размеры каждого файла.