Есть ли какой-либо эмитент частиц на Android, такой как iOS CAEmitterLayer для эмиттера окружности?

На данный момент моя проблема трудно решить.

Я должен разработать приложение для Android рядом со своим коллегой, которое делает то же самое, но и в iOS.

По завершении разработки мы должны предоставить два приложения, которые делают одно и то же, и выглядят одинаково (будьте уверены, ничто, как iOS-направляющие линии на Android и наоборот), чтобы опыт был таким же и захватывающим.

Одна из лучших функций, предоставляемых, – это приятная анимация белого пустого круга, который испускает снежные частицы внутри круга. Круг может перемещаться с помощью прокрутки или просто подпрыгивая / скользящая анимация.

Представьте себе круг с белой рамкой и белые частицы, удаляющиеся от этой белой мембраны. Все эти частицы тянутся к центру, а их база скоростей изменяется (но без ускорения!). Самые быстрые частицы должны «умереть», прежде чем достигнуть центра. Что-то, что можно легко установить с помощью настроек на всю жизнь и скорость, конечно.

Мой партнер, который младший, как я, использует iOS CAEmitterLayer, и результаты, полученные в течение дня или двух, великолепны и очень близки к тому, что мы должны достичь.

На моей стороне я действительно борется. Как и она, у меня нет никакого опыта в анимации и UI / UX. Если вы ищете генератор / излучатель частиц на Android, я натыкаюсь на эту красивую библиотеку: https://github.com/plattysoft/Leonids, и, похоже, она может предложить то, что я ищу.

Но у меня есть несколько нерешенных проблем с использованием этой библиотеки:

  1. Я не могу или не знаю, могу ли я помещать излучатели внутри круга;
  2. Я считаю, что если круг, на котором подключен эмиттер, движется (прокрутка / анимация), существует большая вероятность, что частицы не будут перемещаться с кругом;

Как я уже сказал, мой коллега iOS разрешил эти проблемы. Даже движущаяся часть: мы разговаривали с нашим менеджером, который сказал, чтобы использовать «что, если круговые движения?» И она сразу же попробовала это перед нами. Я был потрясен…

Она сказала мне, что я должен искать способ содержать мои частицы внутри контейнера (имеет смысл ^^) и что мой кругный вид должен быть обрезан слоями, чтобы частицы не покидали круг, особенно если все это движется ,

Это то, что я достиг этого благодаря вышеупомянутой библиотеке Android:

  1. Я могу испускать частицы, определять их форму, их масштаб / размер, их скорость и несколько угол излучения;
  2. Я могу подключить излучатель частиц к виду. Он будет использовать координаты X и Y вида, чтобы испускать частицы, но проблема с кругом на основе XML, как здесь, заключается в том, что он содержится внутри квадратного представления (с height и width ), и по какой-то странной причине мой круг Выше, чем указано в квадрате.

Надеюсь, я смогу найти другую библиотеку, но если текущая работает, почему бы и нет? Просто попробовал мою удачу там ^^

Спасибо за помощь !

Solutions Collecting From Web of "Есть ли какой-либо эмитент частиц на Android, такой как iOS CAEmitterLayer для эмиттера окружности?"