我想知道,如何捕捉窗口并将其显示在 3D 空间的纹理上。以及如何将鼠标和键盘输入从 3D 应用程序重定向到在后台运行的应用程序?我的意思是完整的 3D 桌面。
最佳答案
这可能有点复杂,“完整”的答案可能不适合这个论坛。不过,这是一个想法/大纲:
一种方法是通过 VNC .在 VNC 服务器中运行一个单独的、不可见的“虚拟”桌面,然后以它作为显示启动所需的应用程序。然后,您在“真实”桌面上的 3D 渲染程序可以连接到 VNC 服务器,并以位图格式访问其桌面,并将其渲染到带纹理的多边形上。输入事件中的管道也非常可行。
我实际上已经做到了,或者至少做到了一半(显示)。这是我当时设法做的非常古老的屏幕截图:
(来源:sourceforge.net)
黑色天空和蓝色/紫色“地面”由真实桌面上的 3D 程序渲染,而倾斜的四边形显示“虚拟”VNC 桌面中的一个窗口。
有趣!
关于windows - 如何在纹理上的 3d 空间中显示 windows/X 窗口系统窗口?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/492370/