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 渲染环境变量,就是最简单的办法。

相关推荐
某林2122 天前
履带小车底盘stm32F103RCT6开发
人工智能·stm32·单片机·嵌入式硬件·架构·人机交互·ros2
qq_419203235 天前
[ROS2 学习指南4] --- 手写一个 TF2 监听器(python版)
ros2·监听器
CS_Zero6 天前
Gazebo仿真无人机接入物理遥控控制
无人机·飞控·ros2
zylyehuo6 天前
Ranger Mini V3 底盘运动性能测试与录包步骤
car·ros2
某林2127 天前
大模型边缘部署到底层硬件闭环
python·架构·机器人·硬件架构·ros2
某林2128 天前
构建高精度 6-DoF 灵巧手控制系统
人工智能·3d·机器人·ros2·技术复盘
zh路西法9 天前
【10天速通Navigation2】(九):LQR最优控制器的原理推导与Nav2插件实现
c++·ros2·最优控制·lqr·navigation2
视图猿人10 天前
ROS2 DDS 基础配置速查表及高级参数调优总结
ros2
视图猿人11 天前
ROS2中配置高带宽图像传输零拷贝文件
ros2
再遇当年12 天前
Ubuntu 22.04 + ROS 2 Humble 项目通过 TRAE 改成 Ubuntu 202.04 + ROS 1 Noetic 项目的SKLL技能
linux·运维·ubuntu·ros2·ros1·skll·sill