2010-10-25 1 views
4

В рамках текущего проекта меня попросили отобразить свечу на экране. Пользователи должны иметь возможность наклонять устройство для наклона пламени и выполнять действие (например, отвод), чтобы выдуть пламя. Я нахожусь в реальной потере того, как этого добиться. Некоторые идеи, которые у меня были:Моделирование пламени свечи в Objective C

  • купите фильм свечи с сайта видео на складе. Это не позволит мне наклонить или задуть пламя, хотя
  • получить ряд кадров и анимировать их, чтобы дать появление мерцающего пламени
  • использовать некоторые формы частиц эмиттер

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

Есть ли у кого-нибудь идеи о том, как я могу это достичь?

ответ

1

Вы можете посмотреть на учебник Nehe на генерацию частиц:

http://nehe.gamedev.net/data/lessons/lesson.asp?lesson=19

Это не трудно было бы приспособить это, чтобы произвести то, что выглядит как свеча.

(Вы можете встроить вид GL внутри другой точки зрения для этого.)

0

Это не вопрос Objective-C. Что вам нужно, это введение в создание шейдеров OpenGL.

1

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

Что вы можете сделать, это применить эту технику к вашему свечному видео. Выясните, какие снимки вам нужны, чтобы имитировать все состояния, которые вы хотите создать, включая опрокидывание и выдувание пламени, и запись их. Затем передайте это кому-то, кто может создавать циклы анимации.

Очевидно, что-то вроде этого будет стоить немного денег, но это создаст лучший результат.

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

+0

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

0

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