Как дешево смоделировать воду на iOS?

Во-первых, я не думаю об этом.

Мне было интересно, как сделать простой симулятор водопада на несколько дюн на iPhone.

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

Кто-то спрашивал об имитации с ( Навье-) Стокса на DirectX, используя 1500 частиц. Он заявляет, что его результат неровный. Конечно, на iPhone это будет реализация OpenGL ES подобного рода.

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

Если у вас есть яркие идеи, пожалуйста, предложите вещи для тестирования.

Редактировать 06/06/2015: я нашел в блоге Thimbleweed Park этот замечательный пример очень старой техники, выполненной в HTML5 Джозефом Хакаби. Это только косвенно актуально, потому что это все о внешнем виде, а не о физике, но почему бы не грубо смоделировать жидкость и не наложить "жидкие зоны" с эффектом циклической палитры? Конечно, поскольку техника в большей степени опирается на элементы искусства, она перемещает трудности в сфере художников. Код рендеринга, однако, немного интенсивен при смешивании.

2 ответа

Вы можете получить некоторое расстояние, используя статическое растровое изображение с цветами, выбранными из градиента;

Затем вместо анимации можно перемещать палитру (вращать) и получать визуальный эффект плавного движения.

Конечно, контур / контур воды будет таким статичным. Вы можете смешать эти идеи с ограниченным количеством "статических" контурных анимационных кадров.

Если ваша главная задача - производительность, и вы можете обойтись без взаимодействия с пользователем, возможно, лучшим подходом будет разработка одного из наиболее дорогостоящих вычислительных решений на рабочем столе, предварительная рендеринг его в видео или набор текстур и использование его на мобильное устройство, фактически не генерируя его там.

Я знаю, что решение очень жесткое, я просто хотел предложить его как вариант в худшем случае, чтобы никто не придумал лучшего совета.

Другие вопросы по тегам