Разлетающиеся кубы: псевдофизическая модель столкновений

image

На сцене присутствуют несколько произвольных конструкций, состоящих из нескольких элементов (кубов). Обе конструкции притягиваются к некоторому объекту в сцене таким образом, чтобы гарантированно сталкиваться друг с другом (но не с объектом). При столкновении конструкции разлетаются на произвольное, но достаточно большое расстояние. Также при столкновении элементы конструкций окрашиваются в случайный цвет из списка.

image

  • Счетчик столкновений учитывает только столкновения конструкций в целом, т.е. если при столкновении соприкоснулось несколько элементов конструкций, счетчик увеличиается лишь на единицу. image

Интерфейс пользователя состоит из таймера, счетчика столкновений и кнопки.

  • Таймер отсчитывает время от нуля, в секундах.
  • Кнопка сброса таймера и счетчика в исходное значение.

image

Для оптимизации рендеринга используется собственная реализация GPU Instancing, позволяющая отрисовать несколько объектов за один проход.

image