Ваш конкретный подход будет зависеть от того, как ваша игра справится с рисованием и столкновениями.
Подход, популярный в играх на основе флэш-памяти, заключается в том, чтобы подвести лозу к растровому изображению: поскольку вы не перечислите свою среду программирования, я просто объясню шаги, а не код.
Начните с круга,
1 нарисовать это,
2 переместить его,
3 уменьшите его.
4 Через произвольный интервал порождают «ветку» и / или лист.
Установите масштаб и положение ветви, чтобы соответствовать родителю. Начните 1-5 петли на ветке.
5 повторите 1 до полного выращивания (масштаб слишком мал, чтобы продолжить).
В фазе движения может быть удобно использовать кривую Грехов, чтобы заставить вашу лозу вплетаться и уходить.
Вы можете настроить параметры кривой, чтобы получить различные типы виноградных лоз.
Вот ссылка на обсуждение темы. Какой-то хороший источник можно найти в ссылках.
http://groups.google.com/group/flashcodersny/browse_thread/thread/9906041e557e620c
Включая исходный код inf flash:
http://xfiles.funnygarbage.com/~colinholgate/swf/varicoseg.zip
И версия JavaScript, которая больше похожа на молнию, но может быть адаптирована к виноградным лозам без особых изменений:
http://www.brainjam.ca/hyperbolic/01_spite_mrdoob.html