我正在使用Surface Pro进行OpenGL开发入门课程,并希望通过本机Windows远程桌面工具连接到我更强大的桌面进行开发。我在第一个测试程序中遇到了着色器问题,这导致了我的问题。着色器是否可以通过Surface(RDP客户端)或桌面(RDP主机)上的图形卡完成?
答案 0 :(得分:2)
这取决于您的远程系统配置。您通常使用标准驱动程序的消费者GPU不会为RDP提供任何硬件加速,您将进入SW仿真模式。但是,有一些特殊的可视化服务器GPU和驱动程序可以连接到RDP服务器实现并为其提供GPU加速;你很可能不会这样做。
请注意,它最终只是一个驱动程序问题。有了正确的驱动程序,每个GPU都可以做到。但硬件供应商希望销售他们的专用设备,因此他们将该功能锁定到特定的产品线。
我希望,Linux开源图形生态系统的进步将作为一个侧面展示,能够在不久的将来用商用硬件实现这样的可视化服务器。尽管我忽略了Wayland协议和condept,但是我喜欢它的发展促进Linux图形堆栈的较低层次。这可能会给Windows世界带来一些压力,以赶上它。
答案 1 :(得分:1)
如果从RDP会话运行软件,则会丢失硬件加速。
但是,有些QnA网站注意到,如果在连接之前从本地会话启动应用程序,RDP客户端将使用硬件加速图形。
因此,提出以下技巧。
应用程序将从本地会话启动,并将使用硬件加速图形。
以下是批量文件的示例,来自我在链接页面上的回答:
@echo off
echo.
echo Remote Desktop will be temporarily disconnected . . . please reconnect after a few seconds.
echo.
pause
@echo on
REM The active session has an arrow as the first character
setlocal EnableDelayedExpansion
FOR /F %%A in ('qwinsta') do (
set tempSessionName=%%A
if "!tempSessionName:~0,1!"==">" (
@echo on
tscon.exe !tempSessionName:~1! /v /dest:console
@echo off
)
)
@echo off
echo.
echo Starting MyProgram.exe . . .
@echo on
start MyProgram.exe
@echo off
echo.
pause
答案 2 :(得分:1)
我浏览了nvidia开发人员页面,发现此exe文件将允许rdp连接使用图形加速。
https://developer.nvidia.com/designworks
检查清单: