Graphics 在3D引擎中显示普通应用程序

Graphics 在3D引擎中显示普通应用程序,graphics,Graphics,所以我一直在描绘这个3D环境,在那里我可以打开我的应用程序,在那里做一些事情。我在想这可能吗?我注意到谷歌搜索比我想象的要难。我确实来过 我确实上过计算机图形学课,我用OpenGL3创建了自己的3D世界,所以我知道我的问题可能有点“不对劲”。不过,拖放式web界面在最初的几项互联网技术中也“无处不在” 所以我的问题是:有可能在3D环境中打开应用程序吗?有没有3D引擎可以做到这一点?如果没有3D引擎,那么我需要采取什么开始步骤来编程(即使只是一个程序,比如记事本) 我很好奇。我注意到,当显示3D全

所以我一直在描绘这个3D环境,在那里我可以打开我的应用程序,在那里做一些事情。我在想这可能吗?我注意到谷歌搜索比我想象的要难。我确实来过

我确实上过计算机图形学课,我用OpenGL3创建了自己的3D世界,所以我知道我的问题可能有点“不对劲”。不过,拖放式web界面在最初的几项互联网技术中也“无处不在”

所以我的问题是:有可能在3D环境中打开应用程序吗?有没有3D引擎可以做到这一点?如果没有3D引擎,那么我需要采取什么开始步骤来编程(即使只是一个程序,比如记事本)


我很好奇。我注意到,当显示3D全息投影成为可能时,这将是一个非常相关的问题。现在我只是好奇,我想编程我自己的空间,在树附近打开一些应用程序。我知道编程和OpenGL的基础知识,但我不太明白如何将它们结合起来。

这是可能的。您需要捕获应用程序窗口的输出并将其渲染到纹理。要做到这一点,您需要钩子来截获WM_PAINT window消息,并在代码中钩子以捕获在该窗口上绘制的内容

如果要捕获使用DirectX或OpenGL进行渲染的窗口的输出,则需要(再次使用挂钩)截取翻转后缓冲区并显示输出的方法。这很难实现,因为您需要知道每个应用程序的方法是什么

你的问题的答案应该是这样的,但正如你所看到的,你的问题没有一刀切的解决方案


有关钩子的更多信息:

谢谢你的回答,这真的很有帮助:)与此同时,我还找到了以下两个示例,看看有什么可能:(3D应用程序)和3D文本编辑器