编者荐语:
深信科创技术团队系统梳理了来自 CARLA 社群、GitHub Issue、知乎专栏、CSDN 等平台开发者们提出的的 常见技术问题,结合最新版本特性与开发经验,将其归纳为 地图与场景构建、车辆模型、传感器与数据采集、API 与开发接口、仿真控制与算法、多机与分布式仿真、联合仿真与工具集成、扩展与自定义开发 等模块,逐篇进行解答分享。其中很多基础问题也可以通过查阅官方文档解决,CARLA 官方文档指导性很强,建议新手小白多看文档~
上期我们带来了CARLA常见技术问题集锦(一)地图与场景构建篇,本周接力“车辆模型篇”。后续系列文章敬请期待!
车辆模型
🌱 基础操作类
Q1:Carla中有没有方法可以生成一个没有碰撞体积的车(类似一辆影子车)?即将车设置为没有碰撞体积,但仍然可以探测到它的位置和速度,且它不会和任何车相撞,其他车碰到它时会“穿模”。
可以将车辆的physics
属性设置为false
,这样车辆不会发生碰撞,但同时也无法移动。
# 禁用车辆物理模拟
vehicle.set_simulate_physics(False)
Q2:车辆加载时穿模,模型直接穿过地面往下掉,如何解决?
生成车辆时,尝试将 Z 轴位置设置为 2 米,并检查碰撞collision
设置是否正确。
Q3:仿真中车辆location.z越来越小,后续为负数,是什么问题?
可能是碰撞体未正确设置,导致车辆下坠。
Q4:如何在Carla中创建半挂车模型?
Carla官方有相关模型,可以搜索使用,Carla关于所有车型的介绍:https://carla.readthedocs.io/en/latest/catalogue_vehicles/,例如European HGV
模型。(UE4版本下可用该模型)
Q5:通过APIopen_door
打开车门没有反应,Carla 中有支持打开车门的车型吗?
看车的骨骼,有Door的就可以,开关门仿真可参考👇文章 玩转CARLA-开门杀如何进行仿真测试
Q6:哪里可以找到 FBX 格式的车辆模型文件,用于练习导入 Carla?
可以登录Sketchfab
(https://www.fab.com) 通过筛选找到免费的 FBX 车辆模型文件。
🛠️ 模型导入与调试
Q7:复制其他车辆的wheel handler到自定义车辆时无法成功,是什么原因?
需检查自定义车辆的父类是否为车辆类,普通动画蓝图无法直接复制。
Q8:可以将0.9.15版本的卡车模型导入到0.9.13版本中吗?
不能直接导入0.9.13版本,但可以导入0.9.14版本。
Q9:导入轮船模型后API查询不到蓝图,如何解决?
参考B站视频或官方文档,确保蓝图类正确继承`Actor`类并正确导入。
自定义小车导入Carla中运行
Q10:用3Dmax自制车辆模型导入到CarlaUE中,做完蓝图后,车辆轮子陷在地面下,这个是什么问题?
调整轮子碰撞体大小,在UE中修改物理资产。可以参考文档:https://dev.epicgames.com/documentation/zh-cn/unreal-engine/how-to-set-up-vehicles-in-unreal-engine?application_version=5.4#%E5%88%9B%E5%BB%BA%E8%BD%A6%E8%BD%AE%E8%93%9D%E5%9B%BE
Q11:自制车辆模型导入后如何导出功能包?
参考文档(https://carla.readthedocs.io/en/latest/tuto_A_create_standalone/#create-distribution-packages-for-assets),检查碰撞体绑定问题。
🔧 进阶功能实现
Q12:用Carla做过三联屏拼接显示吗?
参考文章👇 文章 玩转CARLA-开门杀如何进行仿真测试
Q13:在 Carla 中,是否可以修改车辆模型以实现多轴转向?例如在 0.9.15 版本中的三轴货车模型,能否独立控制每个轮子的转向?
Carla 目前不支持对所有轮子进行独立控制,即使是四轮车辆也不支持。但可以设置每个车轮的最大转角,并控制每个车轮是否转动。例如,可以将车辆底盘设置为后轮转向,以实现类似多轴转向的效果。可以参考官方文档进行参数设置:https://carla.readthedocs.io/en/latest/python_api/#carla.VehiclePhysicsControl
Q14:Carla 中有差分轮车辆模型吗?
没有,但可通过修改 UE 的PhysX Vehicle
插件代码实现。可以参考YouTube视频教程:https://youtu.be/njQ3CUVzwAA?si=7eQAWB3MUVOzBGhF
(提示:目前UE5已不再支持PhysX Vehicle
插件)
Q15:Carla可以创建差速轮的车辆吗?
目前仅支持阿克曼底盘(https://carla-ue5.readthedocs.io/en/latest/python_api/#carlavehicleackermanncontrol),差速轮需求不常见。
Q16:履带车动力学模型导入Carla后转向如何处理?
履带车动力学模型正在研究中,尚未有完整解决方案。可以参考Chrono
项目,其中提供了能正确实现转向的履带车辆的制动差速转向驱动轴ChTrackDrivelineBDS
。参考文档:https://carla.readthedocs.io/en/latest/tuto_G_chrono/
https://api.projectchrono.org/development/tracked_vehicle.html
结语:
本文主要是简述了在使用CARLA过程中遇到的关于车辆模型的一些常见问题。感兴趣的开发者还可以看看这篇文章进行拓展👉《仿真测试入门参考(19):CARLA的车辆模型》
未来CARLA问题总结系列文章将会持续更新关于传感器与数据采集、API 与开发接口、仿真控制与算法、多机与分布式仿真、联合仿真与工具集成、扩展与自定义开发等常见问题。
关注作者,了解更多CARLA硬核知识!若需详细了解文中所提及的深信科创自主开发的工具在CSDN后台私信我们吧!
🚀 CARLA AI助手上线!你的24小时仿真顾问
以上问题已全部录入「CARLA AI助手」知识库!现在起,只需提问即可获得:
✅ 精准解答:覆盖安装、API开发、场景设计全流程
✅ 代码生成:一键输出环境配置脚本与调试命令
✅ 实时更新:同步官方文档与社群最新解决方案
立即体验:关注「CARLA引擎中文站」服务号,在聊天框直接输入问题或者点击菜单栏「AI助手」开启智能问答!
💬 互动话题
你在使用CARLA时还遇到过哪些“玄学”问题?欢迎留言讨论!点赞最高的问题,我们将优先安排技术解析~
📢 加入社群
添加小助手微信【synkrotron1】,备注“CARLA”即可加入开发者交流群,获取最新资源与1V1答疑!
往期推荐: