当前位置: 首页 > news >正文

ppt免费下载的网站网站建设的合同条款

ppt免费下载的网站,网站建设的合同条款,百度链接提交收录入口,企业建设网站的作用大不大提前预测刚体移动轨迹 预测运动轨迹 一、效果二、介绍三、脚本RigidbodyExtension.cs 计算工具类DrawLine.cs 画线工具类 四、资源分享 一、效果 二、介绍 通过计算Unity物理系统的运动方位来判断下一步移动的位置#xff0c;主要用于物体运动的提前预测#xff0c;通常使用… 提前预测刚体移动轨迹 预测运动轨迹 一、效果二、介绍三、脚本RigidbodyExtension.cs 计算工具类DrawLine.cs 画线工具类 四、资源分享 一、效果 二、介绍 通过计算Unity物理系统的运动方位来判断下一步移动的位置主要用于物体运动的提前预测通常使用于炮弹发射机枪发射足球篮球网球的运动等多种真实运动的物体。 三、脚本 RigidbodyExtension.cs 计算工具类 using System.Collections; using System.Collections.Generic; using UnityEngine;namespace Dweiss {public static class RigidbodyExtension{public static Vector3[] CalculateMovement(this Rigidbody that,int stepCount, float timeBeteenStep){return that.CalculateMovement(stepCount, timeBeteenStep, Vector3.zero, Vector3.zero);}public static Vector3[] CalculateMovement(this Rigidbody that,int stepCount, float timeBeteenStep, Vector3 addedSpeed){return that.CalculateMovement(stepCount, timeBeteenStep, addedSpeed, Vector3.zero);}/// summary/// /// /summary/// param namethat/param/// param namestepCountNumber of steps/param/// param nametimeBeteenStepnumber of frames to skip/param/// param nameaddedSpeed/param/// param nameaddedForce/param/// returns/returnspublic static Vector3[] CalculateMovement(this Rigidbody that,int stepCount, float timeBeteenStep, Vector3 addedSpeed, Vector3 addedForce){//var ret new Vector3[stepCount];// var addedV (addedForce / that.mass) * Time.fixedDeltaTime;var v (that.isKinematic false ? that.velocity : Vector3.zero);// addedSpeed addedV;var a (that.useGravity that.isKinematic false ? Physics.gravity : Vector3.zero);return CalculateMovement(that.transform.position, v, a, stepCount, timeBeteenStep, addedSpeed, addedForce, that.mass, that.drag);//var x that.transform.position;//var calc new Vector3[] { x, v };//for (var i 0; i stepCount; i)//{// calc CalculateNewPos(calc[0], calc[1], a, that.drag, timeBeteenStep);// ret[i] calc[0];//}//return ret;}public static Vector3[] CalculateMovement(Vector3 position, Vector3 velocity, Vector3 acc, int stepCount, float timeBeteenStep, Vector3 addedSpeed, Vector3 addedForce, float mass, float drag){var ret new Vector3[stepCount];var addedV (addedForce / mass) * Time.fixedDeltaTime;var v velocity addedSpeed addedV;var a acc;var x position;var calc new Vector3[] { x, v };for (var i 0; i stepCount; i){calc CalculateNewPos(calc[0], calc[1], a, drag, timeBeteenStep);ret[i] calc[0];}return ret;}private static Vector3[] CalculateNewPos(Vector3 x, Vector3 v, Vector3 a, float drag, float deltaTimeCount){var dt Time.fixedDeltaTime;var aDt a * dt;var dragDt 1 - drag * dt;dragDt dragDt 0 ? 0 : dragDt;var acc .5f * a * dt * dt;for (int i 0; i deltaTimeCount; i){v (v aDt) * dragDt;x x v * dt acc;}return new Vector3[]{ x, v };}private static Vector3 CalculateVDrag(Vector3 v, Vector3 a, float drag, int deltaTimeCount){var dt Time.fixedDeltaTime;for(int i0; i deltaTimeCount; i)v (v a * dt) * (1 - drag * dt);return v;}Doesnt supports public static Vector3[] CalculateTime(this Rigidbody that, Vector3 targetPos){return CalculateTime(that, targetPos, Vector3.zero, Vector3.zero);}public static Vector3[] CalculateTime(this Rigidbody that, Vector3 targetPos,Vector3 addedSpeed){return CalculateTime(that, targetPos, addedSpeed, Vector3.zero);}public static Vector3[] CalculateTime(this Rigidbody that, Vector3 targetPos, Vector3 addedSpeed, Vector3 addedForce){var addedV (addedForce / that.mass) * Time.fixedDeltaTime;var v that.velocity addedSpeed addedV;var a (that.useGravity that.isKinematic false ? Physics.gravity : Vector3.zero);var x0 that.transform.position;//x x0 vt .5*a*t^2//-b - SQR(b*b - 4*a*c)/2*a // a .5*a//bv//ax0-x//t12 -v - SQR(v*v -4 * .5 * a * (x0-x))/ 2 * .5 * avar x x0 - targetPos;var sqr (v.PointMul(v) - 4 * .5f * a.PointMul(x)).Sqrt();var t1 (-v sqr).PointDiv(2 * .5f * a);var t2 (-v - sqr).PointDiv(2 * .5f * a);// a0: (x0-x) vt - t (x-x0)/vvar tWhenA0 x.PointDiv(v);//a 0if (float.IsNaN(t1.x)) { t2.x t1.x tWhenA0.x; }if (float.IsNaN(t1.y)) { t2.y t1.y tWhenA0.y; }if (float.IsNaN(t1.z)) { t2.z t1.z tWhenA0.z; }// a 0 v 0if (float.IsNaN(t1.x) x0.x targetPos.x) { t2.x t1.x 0; }if (float.IsNaN(t1.y) x0.y targetPos.y) { t2.y t1.y 0; }if (float.IsNaN(t1.z) x0.z targetPos.z) { t2.z t1.z 0; }return new Vector3[] { t1, t2 };}public static Vector3 Sqrt(this Vector3 v){return new Vector3(Mathf.Sqrt(v.x), Mathf.Sqrt(v.y), Mathf.Sqrt(v.z));}public static Vector3 PointMul(this Vector3 v1, Vector3 v2){return new Vector3(v1.x*v2.x, v1.y*v2.y, v1.z*v2.z);}public static Vector3 PointDiv(this Vector3 v1, Vector3 v2){return new Vector3(v1.x / v2.x, v1.y / v2.y, v1.z / v2.z);}} }DrawLine.cs 画线工具类 using System.Collections; using System.Collections.Generic; using System.Linq; using UnityEngine; using Dweiss;[RequireComponent(typeof(LineRenderer))] public class DrawLine : MonoBehaviour {/// summary/// 引导线/// /summarypublic LineRenderer _lr;/// summary/// 刚体/// /summarypublic Rigidbody _rb;/// summary/// 跨度/// /summarypublic float timeBeteenStep 1;/// summary/// 跨度数量/// /summarypublic int stepCount 30;/// summary/// 加速度/// /summarypublic Vector3 addedV, addedF;void Start() {//找引导线_lr GetComponentLineRenderer();//找刚体_rb GetComponentRigidbody();}public void AddPower(Vector3 dir){CalcTime();_rb.velocity addedV;addedV Vector3.zero;_rb.AddForce(dir, ForceMode.Force);addedF Vector3.zero;}private void CalcTime(){Vector3[] t _rb.CalculateTime(new Vector3(0, 0, 0),addedV, addedF);var timeT new Vector3[]{new Vector3(Time.time t[0].x, Time.time t[0].y, Time.time t[0].z),new Vector3(Time.time t[1].x, Time.time t[1].y, Time.time t[1].z)};}#region 抛物曲线/// summary/// 移动走向曲线/// /summaryprivate void DrawMovementLine(){var res _rb.CalculateMovement(stepCount, timeBeteenStep, addedV, addedF);_lr.positionCount stepCount 1;_lr.SetPosition(0, transform.position);for (int i 0; i res.Length; i){_lr.SetPosition(i 1, res[i]);}}#endregionvoid Update (){DrawMovementLine();if (Input.GetKeyDown(KeyCode.W)){AddPower((Vector3.right Vector3.up) * 500f);}} } 四、资源分享 CSDN下载链接 在我的资源中搜索 RigidBodyExtension
http://www.sadfv.cn/news/54675/

相关文章:

  • 设计网站公司咨询亿企邦青岛网站建设订做
  • 快速建设网站免费视频教程恋爱话术小程序搭建
  • 吉林网站建设业务厦门专业做网站的公司
  • wordpress怎么用SSH长春网站推广优化公司
  • 网站开发名词解释软件公司网站模板图片
  • 建立企业网站的步骤淘宝这种网站怎么做的?
  • 自己建网站怎么弄用子域名安装wordpress
  • 企业网站制作比较好的全是图片的网站怎么做seo
  • 网站建设的前期开发wordpress的别名获得页面的别名
  • 怎样申请网站呢metro风格网站开发
  • 电子商务网站问题与解决方案wordpress前台打开慢
  • 优秀网站架构如何绑定网站域名解析
  • 企业网站可以备案几个南昌做购物网站的公司
  • 建设网站杭州好123设为主页官网网址大全
  • 网站建设如何控标wordpress怎么找模板
  • 佛山网站推广优化笔记本做网站
  • 网站建设 需求高级前端开发在线培训
  • 做网站怎么租个空间wordpress全部文件
  • 淮阳网站建设做海岛旅游类网站的背景及意义
  • ae做的动效怎么放在网站上哈尔滨信息工程学院
  • 建设银行网站查询重庆市造价工程信息网官网
  • 网站快照历史建湖县住房和城乡建设局网站
  • 网站not foundwordpress默认居中
  • 五金网站方案c 做网站看什么书
  • 网站域名登录不了一个店铺的运营方案
  • 茂名seo站内优化图片制作器手机版
  • 西安网站建设gjwordpress 关闭访问
  • wordpress 仿站 教程网网站设计酷站
  • 软件制作网站网站开发软件有哪些免费
  • 做代练网站能备案网站做两个月百度没有录取