unity开发罗技G29方向盘(制作操作汽车)
unity引擎结合罗技G29可驾驶车辆(操控性赛车游戏制作)
一:软硬件准备**
1、unity官网下载unity引擎(版本自选,作者使用2018.2.6)
2、罗技G29方向盘
3、罗技官方插件(根据自己电脑操作系统选择相应位数):https://support.logitech.com.cn/zh_cn/downloads
二、场景搭建
打开unity,新建项目并添加场景所需要的模型
对汽车模型进行整理分离出所需要的关键模型,在四个车轮物体下建一个空物体然后将它们拖拽到WheelCollider下如下图所示:(汽车模型可以在unity Asset Store上下载)
为civilian_car_gray汽车添加物理刚体组件,使汽车受到物理作用力,并为WheelCollider下的空物体添加WheelCollider组件,调整车轮碰撞器的半径和位置(半径和位置根据自己实际操作调整)。
如果汽车模型没有碰撞器则需要对Body部分添加Box Collider组件,调整BocCollider组件大小和位置。到这里我们已经准本好了后期所需要的
如果觉得对汽车模型整理还有问题的可以参考我为大家推荐的一篇文章:(引用)
https://jingyan.baidu.com/article/1e5468f9620a50484961b7e7.html
三、Logitech驱动以及unity引擎配置
链接罗技G29方向盘后再驱动中使用默认通用按键配置
回到unity,打开Edit>>Project Settings>>Input,设置所需要的罗技按键
方向盘:
离合:
油门:
刹车:
档位:一档、二挡设置,后面其他档位改变Positive Button即可
说明:在对按键进行配置的时候根据实际按键为准,本文配置按键是和方向盘上显示不一致的。
参考文章:https://blog.csdn.net/baozaodedianxiaoer/article/details/80134658
四、代码交互
交互代码如下:
public class CarControl : MonoBehaviour
{public WheelCollider[] wheelCollider;//车轮碰撞器public Transform[] wheelObject;//车轮public Rigidbody carRigidbody;//物理组件int steerMaxAngle;//前轮最大转向角度private int Power=600;//汽车动力private int backPowe=25000;//汽车制动力private void Awake(){//设置汽车重心,前轮最大转角carRigidbody = transform.GetComponent<Rigidbody>();carRigidbody.centerOfMass = new Vector3(carRigidbody.centerOfMass.x, 0.1f, carRigidbody.centerOfMass.z);steerMaxAngle = 30;}void Update(){WheelRender();CarGo();}void WheelRender(){//渲染车轮和车轮碰撞器一起运动for (int count = 0; count < 4; count++){Quaternion root;Vector3 pos;wheelCollider[count].GetWorldPose(out pos, out root);wheelObject[count].position = pos;wheelObject[count].rotation = root;}//设置汽车前轮转向、驱动、制动float h = Input.GetAxisRaw("Horizontal");float youmen = Input.GetAxisRaw("YouMen")+1;float shache = Input.GetAxisRaw("ShaChe")+1;Debug.Log(shache);wheelCollider[0].steerAngle = wheelCollider[1].steerAngle = h * steerMaxAngle;wheelCollider[2].motorTorque = wheelCollider[3].motorTorque = Power * youmen;wheelCollider[2].brakeTorque = wheelCollider[3].brakeTorque = backPowe * shache;}
}
将个物体拖拽到相应位置,运行项目,就可以使用罗技方向盘驾驶汽车了
说明:文中按键配置和车轮碰撞器创建受模型和引擎等因素影响,本文数据只做参考。
unity开发罗技G29方向盘(制作操作汽车)相关推荐
- Unity接入罗技G29方向盘,通过SDK获取按键信息
Unity接入罗技G29方向盘,通过SDK获取按键信息 说明: 最近需要做一个外设汽车驾驶相关的软件,采用的外设 罗技G29方向盘,项目中遇到的问题这里记录一下. 项目准备: 1.下载罗技的S ...
- ubuntu20.04安装Carla并配置罗技G29方向盘使用
环境:ubuntu20.04+anaconda+python3.7+ros2 foxy+Logitech g29 一.安装Carla github地址: https://github.com/carl ...
- Leap Motion 之Unity 开发实战(一. 制作手的HandController)
Leap Motion 之Unity开发实战 (一) 制作手的HandController 一. Unity官方包介绍 到如下链接下载 https://developer.leapmotion.com ...
- unity开发罗技仿真驾驶环境
unity连接罗技的准备工作 1.到罗技官网下载SDK 点击此处下载 此软件包旨在驱动游戏并启用 快速轻松地完成读取输入数据.进行力反馈和获取/设置轮属性的完整实现. 2.到unity中的Assets ...
- GJM:Unity开发HTC vive 三、远处拖动3D物体 【转载】
腾讯GAD 窗间风月 原文URL : http://gad.qq.com/article/detail/7192223 版权所有,禁止匿名转载:禁止商业使用:禁止个人使用. 在项目中会需要拖动远处的 ...
- Ubuntu18.04通过ros通信联调Carla0.9.13+罗技G29 ros_g29控制实车vehicle_status话题的转发与消息类型的转换twist——cmd并写入同一个launch
前提:安装完carla,参考链接:https://editor.csdn.net/md/?articleId=131200896 可以安装二进制发布版本,这样启动方便很多 一.carla+罗技G29联 ...
- Unity(二十一) 关于Logitech罗技G29开发
一:安装罗技PC软件 下载 - G920 Driving Force 赛车方向盘 – Logitech 支持 + 下载 安装完后需要重启电脑 二:Unity AssetStore下载sdk 下载导入U ...
- Unity 游戏开发技巧集锦之制作一个望远镜与查看器摄像机
Unity 游戏开发技巧集锦之制作一个望远镜与查看器摄像机 Unity中制作一个望远镜 本节制作的望远镜,在鼠标左键按下时,看到的视图会变大:当不再按下的时候,会慢慢缩小成原来的视图.游戏中时常出现 ...
- 《Unity开发实战》——2.8节用Shuriken制作粒子效果
本节书摘来自华章社区<Unity开发实战>一书中的第2章,第2.8节用Shuriken制作粒子效果,作者 (爱尔兰)Matt Smith (巴西)Chico Queiroz,更多章节内容可 ...
- Leap Motion 之Unity 开发指南(一. 基本概念与制作手预制件)
LeapMotion 之Unity开发指南(一.基本概念和手的预制件) [序言] 最近用Leap Motion + 国产的3Glass眼镜构建了房地产.数字矿山的一些应用,感觉这是很经济的一个VR架构 ...
最新文章
- 王家豪:求实探索,青春无问西东;脚踏实地,奋斗自成芳华 | 提升之路系列...
- 教你网站怎么添加返回顶部代码?
- 错误:android.util.SuperNotCalledException
- React基础学习(第二天)
- 一个数的二进制中有多少个1
- WEB前端开发职业学习路线初级完整版
- 根据ip获取经纬度_PHP使用百度地图获取指定地址坐标:创建AK(图文+视频)
- java weblogic admin,weblogic admin 不能重起服务(Server may already be running)
- nodejs安装不好_nodejs安装过程中环境变量配置的问题
- golang中值类型/指针类型的变量区别总结
- 小米格式化fastboot_小米fastboot刷机教程
- 前端class的中括号用法
- 长江大学计算机科学学院德贵奖学金,关于做好2019年各类奖学金评选的通知
- 二级域名泛解析,让iis支持二级域名泛解析
- 关于oracle驱动jiar包版本问题导致的ORA-01460【mybatis+Oracle】
- mac修改终端显示前缀
- sock5代理如何搭建?
- nuxt 如何引入js_Nuxt中引入JS脚本报错
- 利用JMeter的beanshell进行接口的加密处理
- l2行情接口选哪个比较好?