拓十年匠心定制 · 商业建站与技术教学双线并行 咨询热线:400-886-1026 service@lmnt.cn
ARTICLE DETAIL

资讯详情

深耕网站建设与运营推广的一线实战洞察。

Windows 10下安装Carla 0.9.15全流程指南:从环境配置到跑通自动驾驶仿真

Windows 10下安装Carla 0.9.15全流程指南:从环境配置到跑通自动驾驶仿真

在Windows 10下装Carla 0.9.15,说简单也简单,双击exe,跑脚本,这事儿就成了;说难也真难,我身边有同学愣是折腾了三天,不是闪退就是缺DLL,最后换系统重来。我自己前前后后在十几台Windows 10机器上装过Carla 0.9.15,有笔记本、有台式机,甚至还有虚拟机,踩坑踩到怀疑人生。这篇文章就是把坑摸平,从下载链接怎么挑、解压放哪、显卡驱动怎么配,到Python环境怎么搭、示例脚本怎么跑,全流程走一遍。内容主要面向“想在Windows 10上跑起Carla 0.9.15做自动驾驶仿真、研究或课程作业”的同学,不管你是新手还是有一定基础,照着顺序走,基本能少走一半弯路。

1. 装之前先想清楚:这台电脑到底行不行

很多人上来就问“为什么我打开就闪退”“为什么我黑屏”,其实一半以上的问题在硬件和系统环境上就已经注定了。Carla本质是个跑在UE4引擎上的大型3D仿真工具,不是随便一台办公本就能带动的。所以第一步不是下载,是先确认你手里的机器能不能干这活。

1.1 Carla 0.9.15对硬件的真实要求

官方文档写的是Windows 10 64位系统、DX12显卡、至少8GB显存、16GB内存。但我实际跑下来的感受是,这个“最低配置”只能算“能打开”,距离“跑得动”还差得远。

我拿三台机器做过对比,结果非常直观:

配置项最低要求(纸面)我个人建议实际体验备注
CPU四核六核以上CPU主要影响AI车辆和行人计算,核心少的时候场景里车一多帧率就会掉
内存16GB32GB16GB跑Town03开到中等画质,内存占用能到13GB左右,再开浏览器就危险了
显卡NVIDIA 8GB显存RTX 2060/3070 8GB以上6GB显存低画质勉强能跑,4GB显存基本告别
磁盘40GB可用空间建议SSD机械硬盘加载地图要等很久,首次启动更明显

这里要特别提醒:Carla对A卡的支持一直不如N卡好,虽然0.9.15能识别部分A卡,但遇到奇葩渲染错误的概率高得多。如果你手头只有NVIDIA GTX 1650或者RTX 3050这种4GB显存的卡,建议直接把画质参数拉到最低再碰,否则大概率会被启动崩溃劝退。

注意:如果你是虚拟机(VMware、VirtualBox等)里面装Carla,我劝你趁早放弃。虚拟机的显卡虚拟化性能很差,Carla运行时会因为无法正确调用DX12和GPU资源而黑屏或闪退。少量使用显卡直通的虚拟机可以尝试,但配置门槛高,不建议新手折腾。

1.2 系统版本不是越小越好:Win10版本怎么选

从系统版本角度看,Win10的22H2、21H2这些常规版本跑Carla 0.9.15基本没问题,我实测最稳定的是22H2。但不少同学用的是Windows 10 Enterprise LTSC 2021或者各种精简版,这些反而可能带来麻烦。

LTSC版本本身没问题,但它默认缺少一部分应用商店组件,部分运行库和GPU驱动管理组件可能没有集成。如果你装完Carla双击无反应,需要先检查系统里有没有Visual C++运行库。精简版系统更是重灾区——很多“清爽”“极速”版本为了压缩体积,删掉了大量DLL文件,Carla这种依赖UE4的大型软件往往会直接缺一堆运行库。

判断你的系统靠不靠谱,一个好办法是直接Win+R输入dxdiag回车,看DirectX诊断工具能否正常打开,系统信息和显示设备信息是否正常显示。如果dxdiag都打不开或者显示异常,系统和驱动层肯定有问题,先修系统再装Carla。

另外还有一个很隐蔽的坑:Windows用户名是中文的话,部分UE4子进程在读取临时目录时可能出问题。如果你C盘路径下带中文用户名,建议建一个英文名管理员账户,或者至少保证Carla解压路径和缓存路径是纯英文。

2. 下载与解压阶段的隐藏坑位

我第一次下载Carla时也以为这就是个“下一步、下一步”的事,结果光下载和解压就折腾了一天。这里的问题主要在三个地方:下哪个包、怎么校验、解压到哪。

2.1 官方包怎么选:完整包还是附加地图包

Carla 0.9.15在官方GitHub Releases页面发布,文件名大概是Carla_0.9.15.zip这种Windows压缩包,体积20GB上下。下载之前先分清这几种文件:

  • Carla 0.9.15 Windows版压缩包:主程序,必须下载。
  • Additional Maps 0.9.15:附加地图包,可选。新手建议先不装,等你把默认地图Town01到Town10跑熟了再考虑。
  • Source Code源码包:除非你想自己编译Carla,否则别碰。

下载方式上,如果直接从GitHub下载速度不理想,可以看看国内一些高校镜像或者百度网盘转存版本,但一定要验证文件完整性。很多网盘转存文件下载到一半会损坏,尤其是20GB的大文件,解压时才发现压缩包坏了是非常折磨人的。

2.2 解压路径与文件校验的细节

压缩包下载完之后,别双击,直接用右键“解压到当前文件夹”或者用WinRAR/7-Zip解压。解压前务必确认三件事:

  1. 目标磁盘空间:解压后至少需要30到40GB,压缩包本身20GB,也就是说你至少要准备60GB剩余空间。用C盘的同学建议改到D盘或E盘。
  2. 路径不能有中文和空格:比如D:\Carla_0.9.15是最保险的写法,D:\自动驾驶模拟器这种路径会让UE4崩溃概率大增。
  3. 关闭实时防护:Windows Defender在实时防护开启时,会在解压过程中扫描并隔离部分DLL文件,导致Carla启动时报“找不到VCRUNTIME140.dll”或直接闪退。第三方杀毒软件同理,先退出或加白名单。

解压过程可能需要20到40分钟,期间CPU占用会比较高,这是正常现象。如果解压过程中报错“文件CRC校验失败”或“无法创建文件夹”,基本可以确定压缩包下载损坏,重新下载对应分卷或者换下载工具。

提示:解压完成后,建议把整个Carla文件夹加入Windows Defender排除列表。否则每次启动CarlaUE4.exe,Defender都可能对几十个DLL做实时扫描,拖慢启动速度。

2.3 验证解压结果是否完整

打开解压目录,你应该能看到一个CarlaUE4文件夹,或者一个WindowsNoEditor开头的目录,里面放着CarlaUE4.exe。0.9.15的标准目录结构大致是:

D:\Carla_0.9.15\ ├── CarlaUE4\ │ └── Binaries\Win64\CarlaUE4-Win64-Shipping.exe ├── PythonAPI\ │ └── carla\dist\carla-0.9.15-py3.8-win-amd64.egg └── ...

如果你的目录跟这个结构差异太大,说明可能解压不完整。尤其要注意PythonAPI文件夹是否存在,后面配置Python环境全靠它。

3. 运行前的三件套:显卡驱动、运行库、Python环境

很多教程会直接让你双击CarlaUE4.exe,然后等你看到报错再解决。我的习惯是先把三个前置条件全部搞定再启动,能避开八成以上的问题。

3.1 显卡驱动和运行库,缺一不可

显卡驱动是Carla能跑起来的基础。去NVIDIA官网下载最新版驱动即可,装了GeForce Experience的同学直接在软件里“检查更新”。这里注意:驱动不是越新越好,但Carla这种吃引擎的项目最好保持在一定新版本以上。我的经验是,2023年以后发布的显卡驱动基本都能适配0.9.15。

驱动装完之后还要确认系统里有Visual C++运行库。Carla依赖的是VC++ 2015-2022 x64运行库,安装一次可以解决“找不到MSVCP140.dll”“找不到VCRUNTIME140.dll”一类问题。

检查DX12是否正常:Win+R运行dxdiag,在主界面看“DirectX版本”是否显示12,在“显示”标签页看“驱动程序型号”是否为WDDM 2.0以上。如果一切正常,说明显卡驱动和DX层基本没问题。

3.2 Python 3.8环境搭建与依赖安装

Carla 0.9.15提供的Python客户端API是预编译的egg文件,官方适配的Python版本是3.8(64位)。你可以用更高版本去强试,但会面临API兼容问题,比如某些依赖包找不到对应版本。所以我强烈建议装Python 3.8 x64版本,Python 3.8.10这个版本就很合适。

安装时注意勾选“Add Python 3.8 to PATH”,这样后面命令行直接敲python就能用。如果你机器上装了多个Python版本(比如3.9、3.10),建议用py -3.8 --version来确认当前环境。

安装完Python后在终端里执行:

pip install --upgrade pip pip install pygame numpy

pygame是官方示例脚本manual_control.py依赖的库,numpy是后续数据处理常会用到的基础包。如果你网络不好,可以加-i https://pypi.tuna.tsinghua.edu.cn/simple走国内镜像源。

3.3 让Python脚本找到carla模块

这是新手最容易卡住的地方。明明Carla环境都装好了,运行脚本却报ModuleNotFoundError: No module named 'carla'。原因很简单:carla这个模块不在Python的搜索路径里。

解决方法有两种。第一种,在每个脚本开头手动添加路径:

import sys sys.path.append(r'D:\Carla_0.9.15\PythonAPI\carla\dist\carla-0.9.15-py3.8-win-amd64.egg') import carla

第二种,把Carla的PythonAPI路径永久加入系统环境变量。右键“此电脑” -> “属性” -> “高级系统设置” -> “环境变量”,新建PYTHONPATH变量名,值填:

D:\Carla_0.9.15\PythonAPI\carla\dist

两种方法我推荐第二种,一劳永逸,后续跑别的Carla脚本也省事。环境变量配置完要重新打开终端窗口才生效,这一点很容易忽略。

4. 第一次启动:从双击Exe到跑通示例脚本

前置条件都打好了,终于可以进入正题。这一节我把完整的启动和验收流程走一遍,每一步都标注了我自己踩过的坑。

4.1 正确启动Carla服务端

在解压目录里找到CarlaUE4.exe(路径通常是CarlaUE4\Binaries\Win64\CarlaUE4-Win64-Shipping.exe),双击运行。窗口弹出后,会进入一个类似游戏画面的大地图视角,这时候说明引擎已经启动成功。控制台窗口(如果有)会打印日志,其中出现类似RPC server listening on port 2000的字样,才是真正的“服务就绪”。

如果你的机器配置一般,或者经常启动到一半闪退,我建议用命令行参数启动而不是直接双击。在解压目录里打开PowerShell或CMD,执行:

CarlaUE4\Binaries\Win64\CarlaUE4-Win64-Shipping.exe -quality-level=Low -windowed -resx=1280 -resy=720

解释一下这些参数:

  • -quality-level=Low:将画面质量强制设为低,显著降低GPU负载,低配机器的救命选项。
  • -windowed:用窗口模式运行,比全屏模式更稳定,调试时切换界面也方便。
  • -resx=1280 -resy=720:设置窗口分辨率,进一步降低渲染压力。

启动成功后,Windows任务栏会出现Carla的图标,窗口内能看到类似“马路上有汽车和行人”的场景。如果只是一张静态地图,说明还在加载,耐心等一会儿。

4.2 用Python客户端连接并生成第一个角色

服务端跑起来后,另开一个终端,新建一个Python脚本test_carla.py,内容如下:

import sys sys.path.append(r'D:\Carla_0.9.15\PythonAPI\carla\dist\carla-0.9.15-py3.8-win-amd64.egg') import carla import random # 连接Carla服务端 client = carla.Client('localhost', 2000) client.set_timeout(10.0) print("Connected to server:", client.get_server_version()) # 加载指定地图 world = client.load_world('Town03') world.wait_for_tick() print("Loaded map:", world.get_map().name) # 获取车辆蓝图并生成一辆车 blueprint_library = world.get_blueprint_library() vehicle_bp = blueprint_library.filter('vehicle.*')[0] spawn_points = world.get_map().get_spawn_points() spawn_point = spawn_points[0] vehicle = world.try_spawn_actor(vehicle_bp, spawn_point) if vehicle: print("Vehicle spawned:", vehicle.id, "at", spawn_point.location) else: print("Spawn failed, check bounding boxes or spawn points.")

运行方式:

python test_carla.py

如果一切正常,你会看到类似下面的输出:

Connected to server: 0.9.15 Loaded map: /Game/Carla/Maps/Town03 Vehicle spawned: 123 at ...

此时再切回Carla窗口,画面里应该能看到一辆停着的车出现在路边或路口。如果能看到车,恭喜,你的Carla 0.9.15安装已经彻底跑通了。

注意:client.load_world('Town03')会触发地图切换,棋盘格加载画面可能要等几十秒,这期间脚本是阻塞等待状态,不要以为死机了。

4.3 顺手跑一把官方示例:手动驾驶

如果你的Python环境和依赖都OK,还可以体验一下官方示例manual_control.py,路径在PythonAPI\examples目录下。运行方式:

cd PythonAPI\examples python manual_control.py --host localhost --port 2000

打开后会弹出一个pygame窗口,可以用键盘的WASD控制车辆,C切换视角,H切换头盔模式。这个示例能跑通,说明pygame、carla模块、网络连接这三者都正常,整套环境没有任何隐藏问题。

5. 常见故障速查:启动闪退、黑屏、卡加载、连接失败

我把自己和朋友们这些年遇到的典型问题整理成一个速查表,出现对应问题直接搜表格里的解决方案,省得一个个搜帖子。

5.1 报错对照表

现象可能原因解决办法
双击CarlaUE4.exe没有反应缺少Visual C++运行库、Defender误删DLL安装VC++ 2015-2022 x64,关闭Defender实时防护或加白名单
启动后闪退显卡驱动过旧、显存不足更新驱动,降低-quality-level,关闭其他占用显存的软件
卡在“加载中”很长时间机械硬盘慢、首次编译着色器等待10分钟以上,或换SSD;首次启动本来就很慢
黑屏但有鼠标指针显卡驱动未正确调用,双显卡笔记本没切独立显卡在NVIDIA控制面板中设置CarlaUE4.exe为独显运行
提示缺少MSVCP140.dll或VCRUNTIME140.dllVC++运行库缺失安装Microsoft Visual C++ 2015-2022 Redistributable x64
Python脚本无法连接localhost:2000服务端未完全启动、端口被占用等待日志出现RPC server listening;或改用-carla-rpc-port=3000并同步修改脚本端口
No module named 'carla'未配置PYTHONPATH或未在脚本中sys.path.append参照3.3节配置环境变量
启动报错“RHI”或渲染设备丢失显存不够、显卡驱动崩溃降低分辨率和画质,检查显卡温度,换NVIDIA驱动版本
场景里空白、没有地图地图文件缺失,加载了空的默认地图用client.load_world('Town03')加载已知地图,确认包完整

5.2 性能优化:从“PPT”到能玩的几个设置

如果你的电脑配置中等,跑起来有点卡但能运行,可以再压榨一些性能空间:

  • 画质压到Low:-quality-level=Low对低显存机器稳帧提升明显。
  • 窗口化+低分辨率:用-windowed -resx=1280 -resy=720,通常比原生全屏更流畅。
  • 关闭后台程序:浏览器、微信等宿敌,尤其要关掉占用GPU的硬件加速应用。
  • 虚拟内存设大一点:Carla解压后体积大,启动时会加载大量资源。可以让系统管理虚拟内存,或者手工把C盘和Carla所在盘的虚拟内存设为“系统管理大小”。
  • 双显卡笔记本务必切独显:右键桌面 -> NVIDIA控制面板 -> 管理3D设置 -> 程序设置 -> 添加CarlaUE4.exe -> 首选图形处理器选“高性能NVIDIA处理器”。

我自己的低配测试机上,GTX 1660 Ti + 16GB内存,用上面这套配置跑Town03的Low画质,差不多能稳定在25到30帧,做感知算法验证完全够用。如果你需要跑摄像头仿真和实时光流,至少得RTX 2060以上画质才能开中等。

5.3 Windows 10补充组件问题

有些情况比较特殊,比如LTSC系统缺少.NET Framework 3.5,或者某个系统更新组件异常。Carla本身不依赖.NET,但UE4的某些辅助工具会调用系统组件。如果装完VC++还是启动报错,可以尝试在“控制面板” -> “程序” -> “启用或关闭Windows功能”里勾选“.NET Framework 3.5”和“.NET Framework 4.8”,这个操作不影响系统稳定性,但能解决一部分莫名奇妙的DLL缺失问题。

顺带提一嘴,Win10 22H2的补丁和ESU许可包,对Carla没有直接影响,正常按月更新就行。倒是有些精简系统把Windows Update服务关掉了,导致显卡驱动无法通过系统通道安装,这种情况建议手动去官网下驱动安装包。

6. 写在最后:一次成功的启动之后

装Carla这件事,本质上跟装大型3D游戏一模一样,核心就三步:硬件够、系统环境干净、路径没毛病。我自己踩坑踩出来的经验是,遇到报错先别慌,九成问题是显卡驱动、VC++运行库、Python路径这老三样。剩下那成,要么是杀毒软件误杀DLL,要么是下载文件损坏,重新解压或换源基本能解决。

最后再分享一个小技巧:第一次启动成功后,建议做一个“最小可用镜像”,也就是把Carla目录和Python环境做一个备份记录。以后换电脑或者帮同学配环境时,照着这个记录检查,能节省大量排查时间。我自己甚至会备份一份carla-0.9.15-py3.8-win-amd64.egg,放进一个专门放Python包的文件夹,重装系统后直接导入,不用再翻整个Carla目录。

祝各位都能顺顺利利把Carla 0.9.15跑起来,看到自己控制的车辆在Town03的街道上动起来的感觉,还是挺爽的。

返回列表