Я недавно внедрил один сам. Вот шаги, которые я предпринял.
- Вам необходимо измерить скорость вашего курсора (либо курсора мыши, либо пальца)
- Реализация простого цикла физики элементарных частиц. Информацию о том, как это сделать, можно найти здесь
- присвойте частицам "границы", используя математику, полученную из ширины плоскости прокрутки и ширины области просмотра
- постоянно Добавляйте разницу между скоростью мыши и скоростью частицы к скорости частицы, чтобы скорость частицы «соответствовала» скорости мыши на протяжении всего ее движения.
- Прекратите выполнять шаг 4, как только пользователь поднимает палец. Физическая петля заботится об инерции.
- Добавьте свои личные процветания, такие как «бамперные» поля и плавные прокручивающиеся «опорные» точки, которые оперируют парадоксом Зенона при расчете движения.
- Я чуть не забыл: возьмите координаты, полученные сверху, и используйте его как местоположение вашей плоскости прокрутки.
Возможно, скоро я открою исходный код. Как скоро вам это нужно?
изменить: изменил ссылку. Извините, указал на немного не ту страницу. edit2: или нет? В любом случае, исходная страница, на которую я ссылался, была первой ссылкой на текущей связанной странице.