Мне когда-то примерно тоже самое надо было, но ума сделать все это под углом не хватило. Суть: создаем картинку, рисуем ее в canvas с размерами кусочка, получаем dataURL и вставляем его в background-image.
Тут режется все автоматом по размерам заданной картинки, но можно выбрать количество столбцов/колонок и размеры каждого кусочка. transition-delay нужно ручками задавать, в зависимости от размеров картинки. Можно резать картинку под углом через skewAngle и плясать от этого. Может ругаться на tainted canvases may not be exported, не знаю как побороть, но на локалке все норм.
За "правильность" и рациональность использования не ручаюсь ¯\_(ツ)_/¯