创建远程游戏虚拟机全流程方案(GPU

您所在的位置:网站首页 pve虚拟机如何远程控制 创建远程游戏虚拟机全流程方案(GPU

创建远程游戏虚拟机全流程方案(GPU

2023-05-28 20:28| 来源: 网络整理| 查看: 265

前言

本文的显卡虚拟化技术使用 Windows 的 GPU-PV ,B站上这方面的教程已经有很多,不过装上 GPU-PV 的虚拟机后,还有几个细节,本文将重点说明以下几点内容:

嵌套虚拟化——如果你需要使用安卓模拟器

虚拟声卡——使虚拟机的声音能通过串流软件传递到控制端

虚拟显示器——如果你想让虚拟机完全在后台运行(顺便还有禁止宿主查看虚拟机画面的功能)

桥接设置及IPv6配置——极大提高 Parsec 在互联网上的连通成功率

共享宿主机游戏目录——免去重复下载游戏节省硬盘空间

开机自启动虚拟机

另外关于该技术的使用场景,这里提几个想法

如果是在一个房间内,常态的多人共用一个主机,或许考虑使用Aster会更好

本方案可以家人使用电脑的同时,自己可以在后台玩游戏而不影响家人。适合家里电脑就是性能最好的电脑,或者使用平板或Mac等远程玩 Gal 等游戏时使画面不会在宿主机电脑上显示。

几个需要注意的点:

如果需要在虚拟机内使用安卓虚拟机则需要启用嵌套虚拟化,Windows 平台的 AMD 嵌套虚拟化是最近才更新的,要求系统版本 19636 以上,虚拟机版本需要 9.3 以上,这个版本要求在正式版里面需要升级到 Windows 11。

该方案依赖于 HyperV, 这会导致传统的安卓模拟器无法使用,你需要替换成兼容HyperV的蓝叠模拟器,VMWare虚拟引擎相关设置不能开启。不过能换来 Windows沙盒、WSL2 以及 安卓子系统(Window11)。

本文使用 AMD 5600G 操作并成功,别问为啥没独显,问就是想看奸商空中飞人()。所以如果你有独显的话那就更好了 (・ω 程序和功能 > 启用或关闭 Windows 功能 > 勾选 HyperV 相关选项 和底部的 虚拟机平台。重启电脑,然后去蓝叠官网下载安装蓝叠模拟器(建议使用国际版)

在虚拟机中启用 HyperV

蓝叠国际版下载地址:https://www.bluestacks.com/tw/index.html  (注意下载 BlueStack 5)

拿来挂机也不是不错的,同时家人使用宿主机是无感知的

关于在虚拟机中使用模拟器的体验,流畅性远不如在宿主机运行,蓝叠的图形渲染器选择DirectX 会稍微改善一点,仅看 CPU 和 GPU 的资源占用还有大量空余,尚不清楚优化方法,考虑到 AMD 是最近才支持的嵌套虚拟化,不知道 Intel 的情况会不会好些,就我目前的体验来说,挂脚本还凑合,拿来做 “云安卓原神” 估计有点困难,欢迎大家在评论区实测反馈。

安装虚拟声卡(用于串流传声)

安装 VB-CABLE Virtual Audio Device 即可。官网:https://vb-audio.com/Cable/

虽然图标是打 X,不过声音是可以通过 Parsec 传递过来的。

安装虚拟显示器(使虚拟机在后台时能够串流)

不知道你们有没有发现上面分享的两个教程视频,宿主机都开着 HyperV 的虚拟机监视画面,本人实测如果关闭了这个窗口,Parsec 串流将会黑屏,如果我们希望让虚拟机完全运行在后台,那么则需要安装一个虚拟显示器,Amyuni USB Mobile Monitor,下载地址:https://www.amyuni.com/downloads/usbmmidd_v2.zip

解压后,首次运行可以直接以管理员运行批处理,会自动识别是系统是 64 位还是 32 位安装相应驱动,并自动添加一个虚拟显示器。但是不要重复运行多次,这个脚本运行一次就会装一次驱动。

接着再桌面右键 显示设置 ,显示方式如果选择 仅在2上显示,那么宿主机将无法看到虚拟机的画面,不过万一Parsec远程出问题了,处理也稍微麻烦点。如果想宿主机也能看到画面的话,选择 复制这些显示器 即可。

还在烦恼远程玩游戏被家人窥屏嘛(不仅黑屏,也无法操作(除了传送 Ctrl Alt Del 以及开关机,但这也还是黑屏 )

虚拟显示器分辨率可选最高4K

如果你想要的分辨率不在这个列表当中,比如你想要 16:10 比例的分辨率,这里举例添加 2560 x 1600 分辨率。打开 注册表编辑器 ,在地址栏添加如下地址然后回车(地址栏开头的 “计算机” 不要删)

可以看到这里有一排顺序命名的分辨率,在右侧空白区域右键新建 > 选择 字符串值 > 命名接着顺序往下命名,这里就是 9 > 双击打开键值,填入所需的分辨率,这里我填 2560,1600 记得分隔使用的是英文逗号 > 点击确定 

重启虚拟机,你可以等下一部分做完自动启动虚拟屏后再重启,重启后在桌面右键显示设置,就可以选择自己添加的分辨率了。

自定义分辨率这部分设置文档在 usbmmidd_v2 文件夹中的 idd_instructions.txt 文件里面,上面的注册表地址也在里面,可以从这个文件里复制注册表地址。

要注意这个显示器在重启后就会丢失,所以我们需要加个任务计划,使得虚拟机开机时自动开启虚拟显示器。

使用Windows搜索 任务计划程序,或者在 控制面板 > 管理工具 > 任务计划程序 打开

点击 创建任务

在弹出的窗口的 常规 选项卡中,设定任务 名称,安全选项 中选择 不管用户是否登陆都要运行 并勾选 使用最高权限运行 

切换到 触发器 选项卡 ,点击 新建 ,开始任务选择 启动时 ,然后点击 确定

切换到 操作 选项卡,点击 新建 , 操作选择 启动程序 ,程序或脚本选择刚下载 deviceinstaller64.exe 文件(如果是 32 位系统则选择 deviceinstaller.exe),添加参数填写 enableidd 1

之后点 两次确定,会弹出密码输入框,输入系统的账户密码(PS:密码在创建虚拟机的脚本中,写在 Password 那行)

选择仅在2上显示,设置自动启动虚拟屏后,就不用担心被窥屏了

如果选择仅在2上显示并做了自动启动虚拟显示器,不幸发生意外导致Parsec无法连上虚拟机,此时 HypeV 的监视器无法操作,也没有其他远程操作手段的话,发生这种情况可如下操作:关闭虚拟机 > 挂载虚拟机的虚拟磁盘 > 找到上面存放的 usbmmidd_v2 文件夹 > 改名后重启虚拟机 > 即可使用HyperV的监视器进行操作了。

桥接设置及IPv6配置

这部分设置能极大程度提高 Parsec 在外网连接虚拟机的成功概率,如果你需要在外网连接虚拟机,那么强烈建议配置 IPv6。

目前中国大陆家用宽带已经基本普及 IPv6,请先确定你的电脑能够获取到 IPv6,大多数获取不到 IPv6 的原因在 电脑没启用 IPv6 、路由器配置问题或不支持、光猫配置问题。

下文的前提是建立在宿主机能够获取 IPv6 的前提下进行的,如果宿主机自己就获取不到 IPv6,请另行百度解决。检查是否有 IPv6 可在控制面板 > 网络和共享中心查看,或者通过 ipconfig 命令检查是否有 IPv6 公网地址。

首先检查宿主机有没有 IPv6

首先先设置虚拟机桥接,使得虚拟机能直接从路由器获取地址。

在宿主机打开 HyperV 管理器 > 虚拟交换机管理器 > 新建虚拟网络交换机 > 虚拟交换机类型选择 外部 > 点击 创建虚拟交换机 > 设定名称,外部网络选择 当前上网所使用的网卡,然后点击 确定

接着让虚拟机使用刚创建的桥接网卡:虚拟机关机 > 点击 设置 > 网络适配器 > 虚拟交换机选择刚才创建的 桥接网卡 > 点击 确定

这样虚拟机能直接从路由器取得 IP,家中其他设备访问虚拟机也方便

然后虚拟机开机,等个几分钟后看能不能获取到 IPv6。

或许到 IPv6 后成功一半

获取到 IPv6 地址后,还需要在宿主机上设置允许转发,否则不能连上 IPv6 网络(可通过 ping -6 ipw.cn 命令来测试)

依照如下命令来配置转发

以上操作在宿主机进行

以上在宿主机配置完成后,进入虚拟机检查 IPv6 是否连通。

进入虚拟机检查是否连上 IPv6 网络共享宿主机游戏目录

主要用于解决游戏共享的问题,免去重复下载,所使用的方案是 Windows 的 SMB 共享(网上还有虚拟磁盘挂载方案和虚拟机启用来宾服务的方案,前者没法实时共享,后者与GPU-PV方案不兼容)

在宿主机上右键想要共享的文件夹 > 属性 > 选择 共享 选项卡 > 选择账户 > 点击 共享 >  记录下宿主机的局域网 IP 地址(宿主机建议设置固定的 IP,以防 IP 变动后虚拟机的目录映射要重新设置)

在宿主机上设置游戏文件夹共享

进入虚拟机,打开此电脑,将宿主机共享的目录映射为驱动器,地址为 \\宿主机局域网IP\你的共享文件夹名称,这里映射为D盘,添加时会提示输入宿主机的系统账号密码。

实测原神是可以直接打开,Steam的游戏库也可以设置到这个共享文件夹(注意是 Steam 文件夹不是 steamapps 文件夹)。

建议原神启动器和Steam本身是安装到虚拟机内部,设置游戏库设置到共享。

由于APU性能实在有限,放虚拟机里还有一层衰减,跑个原神已经十分勉强了,就不测试其他大型游戏了 orz

原神是从映射盘中启动的

 

开机自启动虚拟机

在宿主机的 HyperV 管理器中选中要开机自启的虚拟机 > 设置 > 自动启动操作 > 始终自动启动此虚拟机 (建议设置一下启动延时)就可以了。

虚拟机的自启动完全后台,不会有任何弹窗结语

通过 Time Spy 跑个分测试下,这Vega7显卡虚拟化后在虚拟机中能使出9成性能有点意外。

上面的分数是虚拟机,下面的是宿主机

另外经过实测,除了Parsec,RDP也是可以正常工作的,他们甚至可以同时连接。就个人体验来说,Parsec 感觉会比 RDP 流畅点。

大家有兴趣也可以自己试试其他的串流软件,比如 Moonlight 等等。

大家有相关的经验、问题、意见,欢迎在评论区分享、提出、讨论,祝大家玩的开心 ~

(`・ω・´)

左Parsec,右 RDP,不过玩游戏是不建议同时开的本文参考

《Hyper-v 开启嵌套虚拟化的方法》https://blog.51cto.com/u_4746316/2334705

《虚拟显示器终极解决方案 IndirectDisplay》https://qwq.moe/ultimate-virtual-monitor-solution-indirect-display/

《Windows Server开启IPv6 Forwarding实现Hyper-V虚拟机分配IPv6公网地址》https://www.liujason.com/article/825.html

《Activating a Secondary Display on Windows 10 when no Monitor is Connected》https://www.amyuni.com/forum/viewtopic.php?t=3030



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3