游戏蛮牛学习群(纯技术交流,不闲聊):159852603
游戏蛮牛 手机端
开启辅助访问
 找回密码
 注册帐号

扫一扫,访问微社区

教程分享

关注:791

当前位置:游戏蛮牛 技术专区 教程分享

查看: 208|回复: 1

[基础知识] 抛物线子弹

[复制链接]  [移动端链接]
排名
19267
昨日变化
6

5

主题

32

帖子

93

积分

Rank: 2Rank: 2

UID
153784
好友
1
蛮牛币
342
威望
0
注册时间
2016-6-27
在线时间
28 小时
最后登录
2018-11-7
发表于 2018-10-23 11:49:56 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有帐号?注册帐号

x
想实现愤怒小鸟的抛物线,在网上找了一番,没有找到。 自己实现了下。实现了两种抛物线的算法:
1.通过sin函数,需知道目标点。
2. 通过匀加速和自由落体,模拟了抛物线子弹的效果。

   如有更好的计算方式,请留言。    互相分享,共同进步。


以下是第一种实现方式。  附件中有第二种实现方式。

// 需知道目标点
public class TestBullet : MonoBehaviour
{

    public float value;
    public float hightRate = 2; // 高度
    public Transform startPoint; // 起点
    public Transform endPoint;  // 终点
    public Transform target; // 发射物

    public float a = 1;
    public float b = 1;
    public float c = 1;
    public Transform xTr;
    public Transform yTr;

    // 已知起点和终点,求抛物线点
    private Vector3 GetParabolaPoint(float time, float hightRate, Vector3 startPoint, Vector3 endPoint)
    {
        value = Mathf.Clamp(value, 0, 1);
        float hight = Mathf.Sin(value * Mathf.PI) * hightRate;
        Vector3 result = Vector3.Lerp(startPoint, endPoint, value);
        result.y = result.y + hight;
        return result;
    }

    // 已知起点、方向、速度,求抛物线
    private Vector3 GetParabolaPoint()
    {
        Vector3 result = Vector3.zero;
        return result;
    }

    private void Update()
    {
        Vector3 result = (2 * a * xTr.position) + (b * xTr.position) + (Vector3.up * c);
        yTr.position = result;

        //target.position = GetParabolaPoint(value, hightRate,startPoint.position, endPoint.position);
    }

    private void OnGUI()
    {
        GUILayout.Label(Mathf.Sin(Mathf.PI * value).ToString());
    }
}



Bullet.zip

2.21 KB, 下载次数: 0

售价: 3 蛮牛币  [记录]  [购买]


回复

使用道具 举报

5熟悉之中
509/1000
排名
5444
昨日变化
3

1

主题

161

帖子

509

积分

Rank: 5Rank: 5

UID
245227
好友
0
蛮牛币
597
威望
0
注册时间
2017-9-21
在线时间
97 小时
最后登录
2018-11-16
发表于 3 天前 | 显示全部楼层
加个刚体加个重力不就好了, 还能碰撞回弹

回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册帐号

本版积分规则

关闭

站长推荐 上一条 /1 下一条

快速回复 返回顶部 返回列表