位置: 编程技术 - 正文

Unity3d实现的十字路口的模拟(二)(unity3d功能介绍)

编辑:rootadmin

推荐整理分享Unity3d实现的十字路口的模拟(二)(unity3d功能介绍),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:unity unity3d,unity3d功能介绍,unity3d功能介绍,u3d unity3d,unity3d基本操作,unity3ds,unity3d功能介绍,unity3d总结,内容如对您有帮助,希望把文章链接给更多的朋友!

ok,下面就进入我们的讲解工作啦,我的这个的讲解应该是比较适合初学者的,所以会有一些啰嗦什么的就请大家见谅啦!

想必来看这个blog的,大家都已经知道了Unity3D的一些基本的操作了吧!这里我也就不一一赘述了,毕竟不是什么一个Unity的课程。ok,我这里用的是Unity3D5,然后下面来说一下关于这个小程序的小车的建立。

一开始的时候,我只是在网上找了一些相关的3d模型然后直接拉入Unity中(注意一定要是fbx&#;式的哦),我当时天真的不断地调节车速和轮子的转动当然就是在脚本里写一些平移和旋转的代码啦,虽然离近了看还是不真实,但是至少我们的车轮还是动了是吧~但是,当遇到拐弯的时候,我就遇到了瓶颈,如果一个正常的车,它的拐弯一定是车头引导的啊,但是我现在无论怎么变也只是看着车头和车尾一起平移过去的,于是我开始查找,找了很多资料(或许也是刚学,没有输入正确的关键词吧),终于让我发现了一个unity自带的一个函数库——WheelCollider,这个类真的是天生就是为赛车游戏开发而设立的啊!这里的运动完全是通关后轮的驱动还带动前轮(当然也可以四驱),而拐弯也就是前轮的带动,实在是完美的解决了我的问题,但是问题也就随之而来了,那就是怎么用这个?我找了好多的资料,都是说把这个库拖入轮子上就好,但是,我拖入后根本就是无法和预想的一样啊,后来我好不容易发现了一个教学视频真的是帮了我的大忙!我觉得文字还是不够直观,所以我觉得大家还是去看看这个视频,真的很有用,那位老师教的很好~这里给出一个链接,大家可以去看看(一共分为了五个你可以找一下车轮的设置在哪里)可以到这里学习: 下面就说一下具体的实现吧,话说让车子拐弯而又不脱离公路哪里我还真的是研究了好半天,怎么也找不到方法,终于想起了下载Unity自带的例子,于是我就去找,还真的找到了一个有关汽车ai的例子,也是千辛万苦的读下来,但是其中很多算法还是不明白,但是我发现我已经找到了一个方法了,而且是不需要ai的。受到例子的启示,我本来是想直接还是用Unity的一个WayPoint Circuit的但是这个是建立环路的,而我的想法是建立一条单向道路,所以我就防着这样的思路,建立了一个我的汽车行进的路线,如下图所示:

看到啦那个way_1那些标志了吗?这就是我们的路标点,其实就是一个个的Cube然后把他们保留Collider但是把形状渲染取消,所以就成了一个个透明的小盒子,给他们加入触发器,当校车碰到这个标志点的时候就让小车指向下一个标志点,到达最后一个标志点的时候把这个校车Destory,由于我们的路标点很少只有五个,如果让校车驶向一个个的路标点的话那么必然就会导致小车行驶的十分生硬,所以受到了Unity自带例子的启发我给没一个小车前面加入了一个透明的引导球这样的话让引导球驶向标志点,小车追着引导球(当然小车和引导球之间保持一样的速度),引导球就起到了一个缓冲的作用,保证了小车的圆滑的拐弯。下面是一个小车整体的组成:

Unity3d实现的十字路口的模拟(二)(unity3d功能介绍)

看到了左边的小球了吗?那个除了引导的作用还有探测前方是否有车的情况,如果它有碰撞的话那么就会出现一个汽车被它后面的另一个汽车离得好远撞飞了,所以不可能让它具有碰撞性,所以,我们就应该给他设置为触发器方式,但是再次运行的时候你就会发现,这个引导球不见了,小车也不按照既定的路线行驶了,我通过种种的实验发现需要把小球的重力取消就ok!

这个是小球的检视面板看那个IsTriger打了勾就代表这个小球无碰撞,是一种触发器模式,而那个Use Gravity没有打勾就是没有重力的影响。而那个ballmove就是我们要写的函数,小球有两个任务一个是引导,一个是检测车辆,下面给出代码:

这里都有相应额注释我相信大家应该都可以看懂,其实代码并不难,重要的是一个解决问题的方式,ok小球和路径的建立就说到这里~

对了,想必大家也都看到了我有很多需要确定字符串的地方例如:way_name=="left_right"其实这里的字符串是要和建立物体的命名取得一致的,如下图给一个例子:

ok,今天这一节就讲到这里啦~

【Unity】技巧集合 转载:

Unity3d实现的十字路口的模拟(四) ok,我们已经知道我们的预制物体都是怎么个结构了,下面我们就来说一下,具体的随机创造车辆的函数,我是把这个脚本放到了我的地形这个物体上,

Unity3d实现的十字路口的模拟(五) 这一节我们来说一下红绿灯的控制和总结一下经验。红绿灯的模型,本来也是想要在网上下载结果找来半天没有找到相应的资源,于是就自己用3dmax做了

标签: unity3d功能介绍

本文链接地址:https://www.jiuchutong.com/biancheng/380100.html 转载请保留说明!

上一篇:Unity3d实现的十字路口的模拟(一)(unity3d基本操作)

下一篇:【Unity】技巧集合(unity操作教程)

  • 耕地占用税的特点与意义
  • 小规模纳税人单张发票最大金额
  • 费用报销怎么做账务处理
  • 抵扣的发票可以部分红冲吗
  • 一般纳税人符合条件
  • 冲减以前年度多计的管理费用分录
  • 收客户款现金折让发票怎么处理
  • 工会费可以个税抵扣吗
  • 营改增之后账务怎么处理
  • 现金货款退回如何做会计分录呢?
  • 样板房 家具
  • 投标保证金支付时间
  • 监督机关包括哪些
  • 2018购房契税税率
  • 高管怎么样
  • 工会经费由谁审批
  • 资产类账户的期末余额计算公式
  • 资产减值损失列示在利润表哪里
  • 定期定额征收适用范围
  • 月末汇兑损益怎么算
  • 公益性捐赠所得税税前扣除标准
  • 机票的保险费能开发票吗
  • 退货需要进行的操作
  • 怎么关闭windows defender
  • IE浏览器如何取消全屏
  • 怎样改善现金流量比率
  • 预收账款什么时候开发票
  • 销售费用里面的支付的安装人工费汇算清缴时计入哪里
  • 电脑刷新率怎么调低
  • php 统计
  • 销售过程的主要内容
  • 其他债权投资和持有至到期投资的区别
  • java上传文件 multipartfile
  • 这可能是最好的144平米小平层户型
  • 异常处理流程为哪几个部分
  • 美团收购联联
  • chat top
  • php统计系统
  • Python如何将字符串转化为数字
  • 帝国cms怎么用
  • 企业一次性伤残补助金赔偿标准
  • 增值税增量留抵退税政策2019
  • 02-MyBatis-Plus
  • php首页
  • 个体户3万免税规定2019
  • sql server 2000数据库不能备份的原因
  • 开发成本期末有余额吗
  • 残疾人个人所得税扣除
  • 一般哪些收据可以抵扣
  • 劳务所得税税率表2023年1月
  • 商贸公司购买的水磅怎么入账
  • 分支机构与总机构怎么纳税?
  • 购房增值税发票是购房发票吗
  • 非营利性组织和营利性组织的区别
  • 建筑业当月有收入,没成本怎样办
  • 安装设备是干嘛的
  • 明细账要如何做账
  • 清产核资评估报告
  • mysql获取当前日期时间函数
  • sqlserver界面
  • 远程桌面登录显示其他用户
  • windows XP+Fedora 8+solaris 11三系统安装攻略
  • xp系统删除用户账户怎么没有删除键
  • dwm.exe占用内存过高怎么办
  • dx12不支持dx11解决办法
  • linux jack
  • ip地址有冲突怎么查看
  • xp电脑开机自检怎么取消
  • win8怎么卸载应用程序
  • android内存工具
  • cocos2dx schedule
  • linux find命令的使用
  • bat批处理命令教程
  • js移动到指定位置
  • js 模态对话框和对话框
  • android数据存储实验报告
  • 怎么查其他公司的财务报表
  • 月度申报如何改为季度申报
  • 涉嫌虚开增值税专用发票罪
  • 地税局跟税务局有什么区别
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设