查看原文
其他

抛物线的瞄准线的绘制! Cocos Creator!

lamyoung 白玉无冰 2022-06-10

给平抛高抛发射添加一个瞄准线!文章底部附完整代码!

效果预览

在 如何实现高抛平抛发射?从抛物线说起! 中介绍了物体平抛或高抛发射的一种实现。这次我们为它添加一个瞄准线。

需求分析

已知物体初速度v,重力加速度a,物体初始位置。求物体的运动轨迹。

这个问题可以转换成,物体在时间t之后的位置在哪里。

而抛物线运动可以分解成x轴匀速直线,y轴匀加速直线运动。

对于t时刻,x方向的位移是

s = v_x * t

y方向的位移是

h = v_y * t + 0.5 * a * t * t

再把位移加上初始位置,就是物体在t时刻的位置。

最后,取多个时间t的组合,就是运动轨迹了。

参考代码

const dt = 0.05;for (let count = 0; count < 100; count++) { const time = dt * count; // s = v_x * t const dx = linearVelocity.x * time; // h = v_y * t + 0.5 * a * t * t const dy = linearVelocity.y * time + 0.5 * G * this.rigidBody_arrow.gravityScale * time * time; // 当前时间点坐标 const targetX = START_POS.x + dx; const targetY = START_POS.y + dy; // 坐标超过地板就不画了 if (targetY < -300) break; this.graphic_line.circle(targetX, targetY, 8);}

学会思考,拆解需求,解决问题。

以上为白玉无冰使用 Cocos Creator v2.2.2 开发"抛物线的瞄准线的绘制!"的技术分享。如果这篇对你有点帮助,欢迎分享给身边的朋友。



如何实现高抛平抛发射?从抛物线说起!

反复横跳的瞄准线!

物体随机飞溅运动!

贪吃蛇大作战!蛇移动的思考与实现! 

分形的奥秘!分形着色器!

2019原创往期精选!附送 github 地址!

小游戏不停歇的球!技术分享!源码相送!

转载请保留文末二维码和完整代码获取方式!

完整代码: 

https://github.com/baiyuwubing/cocos-creator-examples/tree/master/parabola

点击“阅读原文”查看完整代码

我就知道你“在看”▼


您可能也对以下帖子感兴趣

文章有问题?点此查看未经处理的缓存