Linux运行游戏

安装驱动

sudo pacman -S mesa lib32-mesa vulkan-intel lib32-vulkan-intel # 英特尔核芯显卡
sudo pacman -S nvidia nvidia-utils nvidia-settings lib32-nvidia-utils # 英伟达独立显卡

蓝牙连接Xbox One 无线手柄

在Manjaro中直接蓝牙连接手柄无法连接上,需要安装插件:atar-axis/xpadneo

1. 安装需要的组件

有的系统已经安装了,则不需要再安装。
linux-latest-headers 需要查看自己内核,同显卡处,我的为linux510-headers

sudo pacman -S dkms linux-latest-headers bluez bluez-utils
2.安装xpadneo
2.1 自动安装:manjaro的aur仓库中有,执行下面命令安装即可,否则需要手动安
yay -S xpadneo-dkms
2.2 手动安装:clone到本地目录安装
git clone https://github.com/atar-axis/xpadneo.git
cd xpadneo
sudo ./install.sh
3. 打开控制台
sudo bluetoothctl
4. 扫描蓝牙

若没显示手柄,需要按住手柄顶部侧边的连接按钮3秒,LED灯将快速闪烁,此时应该就会显示。
下面第一项就是手柄

[bluetooth]# power on
[bluetooth]# scan on
[NEW] Device xx:xx:xx:xx:xx:xx Xbox Wireless Controller
[CHG] Device xx:xx:xx:xx:xx:xx RSSI: -44
[bluetooth]# scan off
5. 连接手柄

中间会弹出信任窗口,选择信任。连接成功后,用exit退出命令台

[bluetooth]# pair xx:xx:xx:xx:xx:xx
[bluetooth]# trust xx:xx:xx:xx:xx:xx
[bluetooth]# connect xx:xx:xx:xx:xx:xx
[Xbox Wireless Controller]# exit

独显运行应用程序

独显运行应用程序有以下两种方案二选一,nvidia-prime性能好,支持Vulkan。

安装nvidia-prime

sudo pacman -S nvidia-prime
#运行软件heroic
prime-run heroic

若不能启动游戏可以修改/usr/bin/prime-run文件

#!/bin/bash
__NV_PRIME_RENDER_OFFLOAD=1 __VK_LAYER_NV_optimus=NVIDIA_only  DRI_PRIME=1 VK_ICD_FILENAMES=/usr/share/vulkan/icd.d/nvidia_icd.json DXVK_FILTER_DEVVICE_NAME=NVIDIA "$@"
#__NV_PRIME_RENDER_OFFLOAD=1 __VK_LAYER_NV_optimus=NVIDIA_only __GLX_VENDOR_LIBRARY_NAME=nvidia "$@"

steam配置启动选项:

prime-run %COMMAND%

Chapter 35. PRIME Render Offload

nvidia-xrun

支持Vulkan

如何在双显卡Linux设备上运行Vulkan应用
linux使用bbswitch+nvidia-xrun取代bumblebee

安装bumblebee

不支持Vulkan

注意:功能和optimus-manager类似,只需要安装一个。我的电脑安装了optimus-mananger后,导致hibernate后会时不时唤醒卡住无法进桌面

1. 安装软件
sudo pacman -S bumblebee lib32-virtualgl lib32-nvidia-utils 
包名说明
bumblebee主要的程序,用来建立一个独立的X服务器做渲染
bbswitch用来切换nvidia卡的开关状态,有了它才能保证不用的时候关闭nvidia卡省电
primus 和 virtualgl这两个分别是不同的桥接器,可以二选一,也可以都用,ArchWiki介绍的是virtualgl的optirun,但是primus是未来的默认选项,性能更好,Steam也推荐用primus
lib32-primus 和 lib32-virtualgl这两个是32位库,因为Steam和大部分上面的游戏都是32位的
mesa lib32-mesamesa是开源的OpenGL标准实现
2. 将你的用户添加到bumblebee用户组
# gpasswd -a userXX bumblebee
3. 启动服务
sudo systemctl enable bumblebeed
4. 重启系统
5. 测试是否安装成功,以下命令能正常执行
optirun glxspheres64 # 或者 optirun glxspheres
optirun glxgears -info
optirun -b none nvidia-settings -c :8 # 启动Nvidia设置面板
6. 使用

普通程序直接用$ primusrun %command%,或者 $ optirun %command%
primusrun使用PrimGL,optirun使用VirtualGL,建议使用primusrun。

Lutris客户端

推荐优先使用Lutris平台玩游戏,可以连接Steam、Epic、GOG、Ubisoft、Cemu,无需以下配置。
有时Lutris客户端下载缓慢,可以先去Lutris官网找到相应应用,点击“View install script”,打开脚本找到下载文件地址,用其他工具下载下来,再在客户端安装时选择下载的安装包即可。

安装wine速度太慢
本地安装filebrowser,替换~/.cache/lutris/versions.json中的wine的url为本地url

yay -S filebrowser-bin  # 安装
filebrowser # 运行
# 浏览器打开127.0.0.1:8080,admin,admin登录

在这里插入图片描述在这里插入图片描述在这里插入图片描述

Steam游戏Linux客户端

下载Steam游戏平台。
在游戏上右键点Properties(属性),在“通用”标签下,选择SET LAUNCH OPTIONS(启动选项),输入primusrun %command%,运行游戏的时候就是用primusrun运行了。

若运行起来黑屏一下就退出了,参考下面问题2的解决办法。

Arch Wiki
Linux下使Steam调用Bumblebee使用独显

Heroic客户端

Heroic是Epic的第三方Linux客户端,也可以玩Epic和GOG游戏,不过配置麻烦。

  1. 下载Heroic游戏平台,登录Epic和GOG帐号。
  2. 去Wine Manager标签下下载Wine-GE-Latest。
  3. 给wine安装DXVK和VKD3D
# 下载
yay -S vkd3d-proton-bin
yay -S dxvk-bin
# 激活
env WINE=/home/df/.config/heroic/tools/wine/Wine-GE-latest/bin/wine WINEPREFIX=/data/Game/Heroic/Prefixes/default/The\ Witcher\ 3\ Wild\ Hunt\ -\ Complete\ Edition sh setup_dxvk install

env WINE=/home/df/.config/heroic/tools/wine/Wine-GE-latest/bin/wine WINEPREFIX=/data/Game/Heroic/Prefixes/default/The\ Witcher\ 3\ Wild\ Hunt\ -\ Complete\ Edition sh setup_vkd3d_proton install

WINE=指定wine的路径(Heroic里游戏设置里获取)
WINEPREFIX指定游戏的prefixes(Heroic里游戏设置里获取)

  1. 安装winetricks、wine-mono、wine_gecko
pacman -S wine winetricks wine-mono wine_gecko
winetricks用于管理.dll文件和Windows组件等
wine-mono用于支持net framework 应用程序的组件
wine_gecko用于在Wine 里模拟 IE
  1. 启动heroic,运行游戏。
    Epic一般都能正常启动,GOG的游戏若黑屏闪退启动不了,需要点击游戏图标,进入详情界面,在Launch Options里选择不同选项尝试。
primusrun heroic

Arch Wiki
Linux下使Steam调用Bumblebee使用独显

问题

1.运行optirun glxgears时报错

[ERROR]Cannot access secondary GPU - error: [XORG] (EE) No devices detected.
[ERROR]Aborting because fallback start is disabled.

解决:

运行 lspci | grep -E “VGA|3D” 查看你的显卡PCI地址

00:02.0 VGA compatible controller: Intel Corporation 4th Gen Core Processor Integrated Graphics Controller (rev 06)
01:00.0 3D controller: NVIDIA Corporation GM107M [GeForce GTX 950M] (rev a2)

在/etc/bumblebee/xorg.conf.nvidia文件的Section "Device"下添加

BusID "PCI:01:00:0"

Optirun/Bumblbee: Cannot access secondary GPU
arch安装nvidia驱动后重启无法进入图形界面,卡clean,黑屏

2.Nvidia显卡,测试正常,但是打开游戏黑屏一下或显示以下信息

system does not support 3D API required by this game

执行vulkaninfo命令,显示

ERROR at /build/vulkan-tools/src/Vulkan-Tools-1.2.162/vulkaninfo/vulkaninfo.h:668:vkCreateInstance failed with ERROR_OUT_OF_HOST_MEMORY

解决:
去目录/usr/share/vulkan/icd.d下,看是否有amd_icd64.json和amd_icd32.json文件,将这俩移除即可。

Vulkan refuses to work

参考

WineHQ Winetricks
ArchWiki Wine
Arch Linux 安装后该做什么?Arch Linux 使用指南与推荐配置「2023.09」
在 Linux 平台的 Firefox 上启用 VA-API 的视频硬件解码
Arch下chromium系硬件解码(Intel核显)

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Linux使用Qt制作小游戏是很方便的。首先,我们需要确保系统已经安装了Qt开发环境。在终端中运行`sudo apt install qtcreator`命令进行安装。 接下来,打开Qt Creator,创建一个新的Qt Widgets应用程序项目。在项目中,我们可以使用Qt提供的丰富的组件和功能来开发我们的小游戏。 在游戏界面的设计上,我们可以使用Qt的UI设计工具来轻松创建界面布局。可以在工具箱中选择不同的控件,例如按钮、标签和图像等。然后可以通过拖拽和调整它们的属性来设计游戏界面。 在游戏逻辑的编写上,我们可以使用Qt的信号和槽机制来处理用户的输入和游戏事件。定义不同的槽函数来响应按钮的点击或者其他事件,来实现游戏的逻辑功能。 此外,Qt还提供了丰富的图形和动画支持,可以用来增强游戏的视觉效果。您可以使用Qt的绘图设备和转换函数来绘制游戏画面,并使用Qt的动画框架来创建平滑的动画效果。 最后,在完成游戏的开发后,使用Qt的编译工具可以编译和构建游戏项目。生成的可执行文件可以在Linux系统上运行,提供给用户玩耍。 总之,利用Qt在Linux下制作小游戏非常便捷。Qt不仅提供了丰富的组件和功能,还有强大的图形和动画支持,可以满足游戏开发的需求。同时,Qt Creator提供了友好的开发环境,使得开发者能够快速、高效地完成小游戏的开发。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值