Я хотел реализовать реалистичную мультипликационный эффект в Android тоже, так что поделюсь опытом:
в качестве эталонной реализации я принял Chikuyonok JavaScript порта Сергея Нила Уоллиса Java алгоритмом. Вот игровая площадка, где вы можете поэкспериментировать с оригинальным JS-кодом: http://jsfiddle.net/esteewhy/5Ht3b/6/
Сначала я портировал JS-код на Java только для того, чтобы понять, что на моем оборудовании Huawei U8100 нет возможности сжать более 1 кадра в секунду. (Есть несколько подобных попыток в сети с единственным заключением: они смехотворно медленны).
BTW, этот ответ был очень полезен, чтобы получить базовое представление о том, как закодировать интерактивную графику в Android: https://stackoverflow.com/a/4946893/35438. Я заимствовал счетчик fps оттуда.
Тогда я решил попробовать Android NDK, чтобы повторно реализовать оригинальный алгоритм в чистом C (моя первая встреча с ним в 10+ лет!). Несмотря на то, что документы NDK несколько сбивают с толку (особенно в отношении требований и предварительных условий), все это работало как шарм, поэтому я смог достичь до 30 кадров в секунду - это может быть не слишком впечатляющим, но все же радикальным улучшением по сравнению с Java-кодом ,
Наконец, я поставил всю свою работу в Интернете: https://github.com/esteewhy/whater, поэтому не стесняйтесь играть с этим.В нем содержатся:
- Интерактивный код отскока шарика, упомянутый выше (только для справки).
- Вода рябит Java-порт (медленный, как ад!)
- Реализация воды (C) (требуется NDK для компиляции и JDK для создания файла .h).
(Проект не является «чистым», то есть: все исполняемые файлы там, так что можно попробовать запустить его «как есть» и без НДК.)

Один из встроенных в живых обоях в Android - это волна воды, так что это, безусловно, возможно. – Wyzard