类似愤怒小鸟的飞行弹道
发布日期:2021-05-04 15:53:12 浏览次数:12 分类:技术文章

本文共 1158 字,大约阅读时间需要 3 分钟。



抛体运动的类型:

       "很多子弹不仅垂直运动而且追随着水平的运动。那就,当他们向上移动或向下运动时也正在水平方向移动。弹体的运动 — — 横向和纵向

运动的两个组成部分。

垂直运动:
             在垂直运动,重力作用在物体上,并给予负加速度"-9.8 m/s²"(重心加速度)。这意味着物体的速度在每一秒减小-9.8 米/² 。自由落体的速度是 V = g * t。 如果我们有初始速度那么,物体下落速度方程: V = Vi + g * t 加速度是-9.8 m/s²,在做自由落体时距离的计算方程 ;S= 1/2 * g * t * t ;考虑对象的初始速度情况下的

公式计算 ;S = Vi * t - 1/2 * g * t * t ;距离被减去,因为 g 的方向是向下。

横向运动:
           在水平运动,没有外力作用在水平方向匀速运动。因而在此基础上,是恒定的速度的 X 分量,在 X 方向的加速度为零。下面给出了用于计算距离和速度方程。S = v * t ; 下面是简单的 c# 代码,将显示球的弹道路径时它会沿着路径抛出。
          注: 添加如下脚本到枪炮对象上。 创建 prefebs 球和轨迹点将运行时实例化。 球必须有Collider和Rigidbody。
截图:

       

 

using UnityEngine;using System.Collections;using System.Collections.Generic;public class CannonScript : MonoBehaviour {// TrajectoryPoint and Ball will be instantiated    public GameObject TrajectoryPointPrefeb;    public GameObject BallPrefb;        private GameObject ball;    private bool isPressed, isBallThrown;    private float power = 25;    private int numOfTrajectoryPoints = 30;    private List trajectoryPoints;    //---------------------------------------        void Start ()    {        trajectoryPoints = new List();        isPressed = isBallThrown =false;//   TrajectoryPoints are instatiated        for(int i=0;i

上一篇:unity5 和UGUI的小Demo贪吃蛇
下一篇:做U3d编辑器xlsx批量生成csv和python批量转

发表评论

最新留言

做的很好,不错不错
[***.243.131.199]2025年04月06日 18时57分00秒