2012-02-17 87 views

回答

2

你的特定方法将取决于你如何处理绘图和碰撞。

一种流行于基于Flash的游戏的方法是将葡萄藤绘制成位图:由于您没有列出您的编程环境,我只会解释步骤,而不是代码。

以圆圈开始, 1画它, 2移动它, 3缩小它。 4以随机间隔产生“分支”和或叶子。 设置分支的比例和位置以匹配父项。在分支上开始1-5循环。 5重复1直到完全生长(规模太小,无法继续)。

在移动阶段,使用Sin曲线可以方便地让葡萄进出。 您可以调整设置以获得多少曲线以获得不同类型的葡萄藤。

这里是一个主题讨论的链接。一些很好的来源可以在链接中找到。 http://groups.google.com/group/flashcodersny/browse_thread/thread/9906041e557e620c

包括源代码INF闪光: http://xfiles.funnygarbage.com/~colinholgate/swf/varicoseg.zip

而且JavaScript版本,看起来更像是闪电,但couild适应藤蔓没有太大的变化: http://www.brainjam.ca/hyperbolic/01_spite_mrdoob.html

+0

我使用的是OpenGL和C++,这种方法听起来很酷。顺便提一句,我还发现这个http://www.informatik.uni-oldenburg.de/~trigger/content/flower_effect/processing/index.html。这就是所谓的Moppi花卉效果。但是你的方法似乎很实用。谢谢! – Djokovic 2012-02-17 22:20:40

+0

这看起来像我描述的相同的过程。下面是一个很好的线索,涵盖actionscript和javascript藤的效果: http://groups.google.com/group/flashcodersny/browse_thread/thread/9906041e557e620c – 2012-02-17 23:42:51

+0

太棒了!非常感谢!! – Djokovic 2012-02-17 23:47:29