首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >云服务器 无显卡安装AirSim

云服务器 无显卡安装AirSim

原创
作者头像
心语.Wang
发布2025-09-24 00:31:54
发布2025-09-24 00:31:54
630
举报
文章被收录于专栏:AirSimAirSim

一、云服务器没有显卡,能运行 AirSim 吗?

答案:可以,但有条件限制

功能

是否支持(无显卡)

说明

使用 Python/C++ API 控制模拟器(如无人机起飞、移动等)

✅ 支持

无需图形界面,只需要 AirSim 的核心库和模拟后端

运行 Unreal Engine 可视化图形界面(即 3D 仿真窗口)

❌ 不支持

Unreal Engine 需要显卡进行实时渲染,无显卡无法启动 UE 图形界面

使用 AirSim 提供的 AirLib(核心 C++ 仿真库)

✅ 支持

可编译并运行,用于传感器模拟、物理引擎等

运行纯后端模拟器(无图形、无 UE)

⚠️ 有限支持

AirSim 官方强烈依赖 Unreal Engine 做前端,但你可以自己模拟或使用轻量级方案

🧩 二、无显卡情况下,如何在云服务器运行 AirSim?

✅ 推荐方案:不使用 Unreal Engine,仅使用 AirSim 的 API 通信(如 Python API) + 轻量级模拟后端

由于你 不能运行 Unreal Engine(因为需要显卡),因此你也无法启动带图形界面的 3D 仿真环境(比如无人机飞行的可视化场景)。

但你仍然可以做以下事情:

方案 1:仅使用 AirSim 的 API(如 Python API)与一个模拟后端交互(无图形)

适用场景:

你不想显示任何图形界面

你希望通过代码(如 Python)控制“模拟的无人机/车”

你只关心 API 调用、传感器数据、运动控制等逻辑功能

你 没有也不需要 Unreal Engine 的 3D 世界

你可以这样做:

克隆 AirSim 源码

bash

复制

git clone https://github.com/microsoft/AirSim.git

cd AirSim

编译 AirLib(核心 C++ 仿真库)

bash

复制

cd AirSim/AirLib

mkdir build

cd build

cmake ..

make -j$(nproc)

这会生成 AirSim 的核心库,包括物理引擎、传感器模型等,但不依赖图形界面。

使用 AirSim 的 Python 客户端控制模拟器

进入 PythonClient目录:

bash

复制

cd ../../PythonClient

pip3 install -r requirements.txt

你可以运行官方示例,例如 takeoff_and_hover.py,但前提是你有一个 AirSim 模拟器后端在运行(见下方说明)

⚠️ 但没有 Unreal Engine,谁来提供这个“模拟器后端”呢?

AirSim 官方强烈依赖 Unreal Engine 来作为前端模拟器,提供 3D 世界、物理引擎、传感器数据等。

如果没有 Unreal Engine,你仍然可以使用 AirLib,但它通常需要一个“模拟器服务”来充当后端,而这个服务通常是由 Unreal 提供的。

❗ 重点问题:没有 Unreal Engine,谁能提供仿真环境?

情况

是否有仿真环境

是否有图形界面

说明

你运行了 Unreal Engine 项目(如 Blocks.uproject)

✅ 有

✅ 有

完整体验,需要显卡

你 没有 Unreal Engine,只编译了 AirLib

⚠️ 部分支持

❌ 无

你只有核心库,但没有一个完整的“仿真世界”来控制

你希望完全不用 Unreal,还想有“模拟的无人机”可控制

🚫 默认不支持

❌ 无

AirSim 设计上依赖 Unreal/Unity 作为前端,没有它们,你只能自己模拟或使用极简方案

✅ 替代方案(推荐):仅使用 AirSim API 与本地/远程 Unreal 运行环境交互

如果你 不能在你的云服务器上运行 Unreal(因为无显卡),但 你可以在别的地方运行它(比如本地 Windows/Mac 电脑),那么:

✅ 你可以这样组合:

设备

角色

说明

本地电脑(有显卡)

运行 Unreal Engine + AirSim 项目(如 Blocks 或 HelloDrone)

提供 3D 可视化仿真环境,运行实际的模拟器

腾讯云 Ubuntu 服务器(无显卡)

运行 Python API 脚本,通过 TCP/UDP 与本地的 Unreal + AirSim 通信

控制无人机、获取状态、处理数据,无图形

🔗 通信方式:

AirSim 的 Unreal 项目默认会启动一个 UDP 服务,监听来自客户端的控制指令(比如起飞、移动)

你的 Python API 客户端(在云服务器上) 可以连接这个服务,发送命令,接收传感器数据等

📌 关键点:

你的 云服务器不需要运行 Unreal 或图形界面

你的 云服务器只需要运行 Python 脚本,通过网络与本地的 Unreal 仿真器通信

你可以在 本地用显示器看到无人机飞行的 3D 画面,但在云服务器上只是发指令和收数据

🧪 三、最简无显卡使用示例(仅 API,无 Unreal,有限功能)

如果你 真的不想安装 Unreal,也不想显示任何图形,仅想试试 AirSim 的 API 是否能跑通,可以尝试以下极简方式:

  1. 进入 AirSim 的 PythonClient 示例目录 bash 复制 cd AirSim/PythonClient pip3 install -r requirements.txt
  2. 运行一个示例脚本,比如: bash 复制 python3 takeoff_and_hover.py ⚠️ 但注意:这个脚本默认会尝试连接本地的 Unreal + AirSim 模拟器(默认地址 localhost:41451),如果你没有运行任何模拟器,连接会失败!

✅ 解决方法:你自己启动一个模拟器后端,或使用模拟的 Socket 服务(高级用户)

但 AirSim 官方没有提供“无 Unreal 的纯模拟后端”,因此:

❗ 结论:如果你没有 Unreal Engine(因为没有显卡),你将无法启动官方的 3D 仿真环境,但你可以:

✅ 选择以下两种实际可行的方式之一:

✅ 推荐的 2 种无显卡云服务器使用 AirSim 的方式

✅ 方式 1:仅使用 AirSim API(Python/C++)+ 与本地 Unreal 通信(推荐组合)

组件

位置

是否需要显卡

作用

Unreal Engine + AirSim 项目(如 Blocks)

本地 PC / 有显卡的云服务器

✅ 需要

提供 3D 可视化仿真环境

Python API 脚本(控制无人机)

腾讯云 Ubuntu(无显卡)

❌ 不需要

发送控制指令,接收数据,运行逻辑

🔗 两者通过网络(默认 UDP)通信,你可以在云服务器上编写控制逻辑,在本地运行可视化仿真。

📌 非常适合:

你希望专注写控制代码(如无人机自动起飞、路径规划)

你在本地开发或展示时能看到 3D 画面

云服务器只做“大脑”,不做“渲染”

✅ 方式 2:仅使用 AirLib(核心库)做传感器/物理模拟研究(高级用户)

如果你是 研究者或开发者,想使用 AirLib 的物理引擎、传感器模型,但不启动完整仿真,你可以:

编译 AirLib(已完成)

自己编写代码调用其 API(如模拟 IMU、GPS 数据)

但注意:AirLib 本身不提供“虚拟世界”或“无人机模型”,只是一个底层库

适用于:低级别传感器仿真、自定义开发,但不是完整的无人机仿真体验

❌ 不推荐 / 不可行的方式(无显卡时)

方式

是否可行

原因

在云服务器上运行 Unreal Engine(无显卡)

❌ 不可行

Unreal 需要显卡渲染,无显卡会启动失败或无法显示窗口

在云服务器上运行 AirSim + 图形界面

❌ 不可行

没有显卡支持图形界面

期望 AirSim 无 Unreal 也能跑 3D 仿真

❌ 不可行

AirSim 依赖 Unreal/Unity 提供 3D 世界

✅ 总结:云服务器无显卡,如何运行 AirSim?

你想要的功能

是否可以实现

推荐方案

【仅用 API 控制无人机,不显示图形】

✅ 可以

使用 AirSim Python API,连接到一个 有 Unreal 的本地/远程仿真器

【运行完整的 3D 仿真(有画面)】

❌ 不行

必须有 Unreal Engine + 显卡

【不运行 Unreal,只用 AirLib 做底层开发】

⚠️ 有限支持

可编译 AirLib,但无完整仿真环境

【完全不用 Unreal,还想有虚拟无人机控制】

❌ 不推荐

官方未提供无 UE 的纯后端,建议使用方式 1

✅ 下一步建议

根据你的实际场景,推荐这样做:

场景 1:你希望控制无人机,但不在乎图形,只在云服务器上运行逻辑

在云服务器(无显卡)上:使用 Python API,连接到一个 远程/本地的 Unreal + AirSim 仿真器

在本地电脑(有显卡)上:运行 Unreal + AirSim 项目(如 Blocks),提供可视化界面

🔗 两者通过 UDP 通信,默认即可连接。

场景 2:你希望自己完全在云服务器上搞定(无显卡)

你只能:

编译 AirLib(核心库)

使用 Python API,但 没有仿真环境可以连接

或自己模拟一个简单的通信服务(高级,不推荐)

📌 建议:加一台有显卡的本地机器/云 GPU 实例,运行 Unreal,你的云服务器只做控制

🙋 如果你希望我帮你:

提供 “云服务器(无显卡) + 本地 Unreal” 联合开发的部署流程

或者帮你编写 Python API 控制无人机的示例代码(连接本地 Unreal)

或者指导你在 本地 Windows 上运行 Unreal + AirSim,远程用 Python 控制

欢迎继续提问!我可以给你出详细步骤 👇

想要的下一步可以是:

我只想在云服务器上写 Python 控制代码,本地 Windows 跑 Unreal

我想尝试不依赖 Unreal,仅用 AirLib 做开发

我有本地 Windows,如何与云服务器的 Python 脚本联合调试?

我想用 AirSim 做无人机自动飞行控制(无图形)

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
作者已关闭评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档