之前也看过一些相关贝塞尔曲线的知识,但就是一直没有实践应用;
今天,听到有同事:程序、美术,在讨论相关的,人物的曲线路径行走的问题;
一些数学比较牛X的,说了用2阶,或是3阶的贝塞尔就够了,于是好奇,自己花了一些时间去研究;
现在对曲线的绘制规律(算法)大概的有了一些认识;
感谢这位博客的分离里看到,在里面看到了这么一张图:
这是张贝塞尔N阶的效果图;
用AS3写了一个DEMO:
下列图中的
- “红点”是控制点;
- “蓝线”是控制点的连线;
- “浅蓝色线”是递减N阶控制点的连线;
- “红色箭头”是当前曲线绘制点;
- “黄色线段”是当前曲线绘制点的切线(方向);
- “比较粗的绿色曲线”就是最终要生成的曲线路径曲线;
我现在用的是MAC 下的windows7 所以截图不完整(这个估计是QQ的截图的BUG);
右下方还有一个“刷新”按钮,可以时时刷一些随机点;
有了这个通用规律算法,制“祖玛”类的游戏的按路径、方向位移就应该不成问题了;
但要制作得更好的话,可能会还需要用到的是,曲线匀速运动的功能;
这个到时再进一步去研究吧。
PIC1:
PIC2:
PIC3: