haoziの窝

如何远程运行3D程序

2019-09-05

如何远程运行3D程序#

在 mac 上面跑虚幻 4 烫腿, 果断换成远程我的大奶操作, 打开 Blender 的时候提示了这个, opengl版本问题, 怎么解决这个问题呢?

本质就是不同的远程方式会有不同的 session,

  • Console session(本地使用)
  • RDP session (微软远程)

使用 query命令可以查看相关信息例如 query session

PS C:\Users\Administrator> query session                                                 

SESSIONNAME       USERNAME                 ID  STATE   TYPE        DEVICE                                                 services                                    0  Disc
>rdp-tcp#32        Administrator             1  Active
 console                                     2  Conn
 rdp-tcp                                 65536  Listen

这里可以看到我们目前使用的是 RDP, 登录用户是 Administrator

切换使用 TeamViewer, 之后可以我们进入了 console Session

PS C:\Users\Administrator> query session                                                 

SESSIONNAME       USERNAME                 ID  STATE   TYPE        DEVICE                                                 services                                    0  Disc
>console           Administrator             1  Active
 rdp-tcp                                 65536  Listen

方案 1#

提前把程序打开, 请你的舍友朋友老婆啥的进入你的电脑, 打开软件, 你在连上

方案 2#

AnyDesk, Teamviewer, 这两个连接电脑, 然后打开程序, 在用 mstsc 连回去

方案 3#

按照 开启 “Use the hardware default graphics adapter for all Remote Desktop Services sessions”一文中的

编辑注册表, 不过尝试之后 blender 任然无法打开

Open the Edit Group Policy tool from Control Panel or use the Windows Search dialog (Windows Key + R, then type in gpedit.msc)

  • Browse to: Local Computer Policy\Computer Configuration\Administrative Templates\Windows Components\Remote Desktop Services\Remote Desktop Session Host\Remote Session Environment
  • Then enable “Use the hardware default graphics adapter for all Remote Desktop Services sessions”

方案 4#

针对 blender 有有一个特殊的方案,下载 http://download.blender.org/ftp/sergey/softwaregl/ 这里面的DLL, 放到程序目录下

方案 5#

发现了一个比较骚的办法, 把下面的保存为 bat 文件, 右键执行, 你会发现你的远程被踢下来了, 等差不多一个软件启动的时间, 再远程登录进去

for /f "skip=1 tokens=3" %%s in ('query user %USERNAME%') do (
  %windir%\System32\tscon.exe %%s /dest:console
)

Rundll32.exe user32.dll, LockWorkStation

"C:\Program Files\Blender Foundation\Blender\blender.exe"  ;;这里修改为你想要启动的路径参数

这个差不多就是, 锁屏切回console. 再以 console session 启动应用, 你在连回去就行了

来源How to run Blender through RDP on Windows Server 2008 R2 - opengl error

除另有声明外,本博客文章均采用 知识共享(Creative Commons) 署名-非商业性使用-相同方式共享 3.0 中国大陆许可协议 进行许可。