Ubuntu 22.04 下让 Gazebo / RViz 使用 NVIDIA GPU 渲染

1. 背景

在 Ubuntu 22.04 + ROS2 Humble + 双显卡笔记本环境下,Gazebo 和 RViz 有时默认不会走 NVIDIA。

如果你希望不改 launch 文件、不改代码,只通过 ~/.bashrc 统一配置默认渲染方式,那么最直接的方法就是在 shell 环境里加几行 export


2. ~/.bashrc 配置

把下面内容加到 ~/.bashrc 末尾:

bash 复制代码
# Force Gazebo / RViz to prefer NVIDIA GPU rendering on PRIME laptops.
export __NV_PRIME_RENDER_OFFLOAD=1
export __GLX_VENDOR_LIBRARY_NAME=nvidia
export __VK_LAYER_NV_optimus=NVIDIA_only
export QT_OPENGL=desktop
export IGN_RENDER_ENGINE=ogre2
export GZ_RENDER_ENGINE=ogre2

然后执行:

bash 复制代码
source ~/.bashrc

或者直接打开一个新终端。


3. 使用方式

之后按平常方式启动就行:

bash 复制代码
rviz2
ign gazebo -g

如果你是通过 ros2 launch 启动,只要这个 launch 是从当前 shell 拉起来的,也会继承这些环境变量。


4. 如何验证

启动 Gazebo 或 RViz 后,另开一个终端执行:

bash 复制代码
nvidia-smi

如果进程列表里出现:

  • rviz2
  • ign gazebo

并且有显存占用,就说明已经在使用 NVIDIA GPU 渲染。


5. 一句话总结

如果你不想改代码和 launch 文件,只想通过 ~/.bashrc 控制 Gazebo / RViz 默认走 GPU,那么直接加一组 NVIDIA offload 和 ogre2 渲染环境变量,就是最简单的办法。

相关推荐
z20348315204 天前
Livox Mid-360S点云图录制
嵌入式硬件·雷达·ros2
别催小唐敲代码8 天前
ROS2从入门到实战:去中心化机器人操作系统详解
wpf·ros2
酸梅果茶10 天前
ROS2 foxy环境下源码安装Navigation2
ros2·navigation·agx
某林21213 天前
ros从底层硬件到 Web 端部署
python·机器人·硬件架构·ros2
zh路西法13 天前
【Navigation2进阶】(十二):自主探索性能优化与 RIG 算法推导与 Nav2 插件实现
c++·dijkstra·ros2·rrt·navigation2·前沿探索
视图猿人14 天前
Astra Pro相机+gazebo构建 ROS2 虚实联动数字孪生系统
ros2
zh路西法15 天前
【10天速通ROS2-PX4无人机】(四) 关掉GPS和气压计,纯激光定位还能飞吗
c++·无人机·px4·ros2·卡尔曼滤波·fastlio2
视图猿人16 天前
ROS2 AGV SLAM导航仿真系统技术详解与踩坑实录
机器人·ros2
zh路西法17 天前
【10天速通ROS2-PX4无人机】(一) 从零搭建仿真环境,妈妈再也不用担心我炸机了!
无人机·仿真·px4·ros2·gazebo
某林21219 天前
ROS2 + WebRTC + MQTT 异构系统架构
架构·系统架构·机器人·硬件架构·webrtc·ros2