草庐IT

3d地球

全部标签

windows - 与directx sdk相比,使用windows sdk学习direct3d11有什么区别?

是否可以通过windows8sdk或directxsdk使用direct3d11?作为一名学习者,不清楚这种选择有什么影响。directx11是用windowssdk学还是directxsdk学,有什么区别? 最佳答案 directxsdk(最后一次是2010年6月,三年前)已弃用。Windows8套件包含最新版本的直接xheader和库。基本API和文档大部分相同,但缺少最近的更改。D3DX已弃用,数学移至directxmath.h,着色器编译移至d3dcompiler.hPix不再适用于最新的Windows,因此您必须坚持使用v

c# - 在全屏 3D 应用程序中获取桌面屏幕截图

在使用全屏3D应用程序(例如游戏)时是否可以将桌面渲染成屏幕截图?还是在游戏运行时windows会关闭渲染引擎?我正在寻找在我的游戏中将桌面渲染成纹理的方法。类似RDP的协议(protocol)可以成为解决方案吗?编辑:澄清一下,是否有任何深层次的api机制来强制渲染到另一个缓冲区,例如在制作屏幕截图时。不管是Windows7还是Windows8/9。 最佳答案 您可以通过在桌面窗口的hWnd上调用PrintWindowWin32API函数来获取屏幕截图。我在Windows7和Windows8.1上试过这个,它甚至在另一个应用程序(

windows - 在配备 GeForce 960M 的笔记本电脑上初始化 D3D12 调试接口(interface)失败

当我尝试使用标志DXGI_CREATE_FACTORY_DEBUG调用D3D12GetDebugInterface或CreateDXGIFactory2时,调用在我的笔记本电脑上失败,但在我的台式机上却没有。其他调用在笔记本电脑上运行良好,我可以渲染东西——我只是无法初始化调试层。桌面有一个老式的GeForce650Ti,笔记本电脑是戴尔XPS15笔记本电脑(最新一代),它有一个GeForceGTX960M。两者都有最新的驱动程序(361.43)。有什么想法可能会出错吗?我在NVIDIA上发布了devtalkforum首先,但交叉发布到stackoverflow,因为NVIDIA官方论

c++ - ID3D11DeviceContext::Map 性能低下

我正在使用桌面复制将屏幕内容复制到内存中的位图中。我收到桌面纹理,然后创建暂存纹理,使用CopyResource将桌面纹理复制到暂存纹理中,最后调用ID3D11DeviceContext::Map访问暂存纹理位和复制它们。与此处描述的方式几乎相同:https://stackoverflow.com/a/27283837/825318问题是Map调用需要花费大量时间-对于4K等大型显示分辨率,每次调用最多可能需要100毫秒,这高得令人无法接受,因为我需要确保30fps速度。有没有什么办法可以更快的获取贴图的内容?如果没有,有没有办法提供我自己的映射地址指针,以便系统将纹理数据复制到那里?

c++ - 在 direct3d 应用程序中呈现格式化文本

我需要呈现一些格式化的文本(颜色、不同的字体大小、下划线、粗体等),但我不确定如何去做。D3DXFont只允许一次呈现单一字体/大小/粗细/颜色/等的文本,我看不到一种实用的方法来“组合”对ID3DXFont::DrawText的多次调用来做这样的事情......我环顾四周,似乎没有任何现有的库可以做这些事情,但我不知道如何实现这样的文本渲染器,我什至找不到任何关于如何渲染这样的文本的文档会工作,只渲染简单的固定宽度,ASCII位图字体,从表面上看可能是一种完全不同的方法,它只适用于渲染简单的文本block,其中Unicode不重要。如果没有direct3d字体渲染能够做到这一点,是否

windows - 报告 Direct3D 内存使用情况

我有一个Direct3D9应用程序,我想监控内存使用情况。有没有工具可以知道Direct3D使用了多少系统内存和视频内存?理想情况下,它还会报告为纹理、顶点缓冲区、索引缓冲区分配了多少... 最佳答案 您可以使用旧的DirectDraw界面查询总内存和可用内存。您通过这种方式获得的数字并不可靠。可用内存可能随时变化,可用内存通常会考虑AGP内存(严格来说不是视频内存)。您可以使用这些数字很好地猜测您的应用程序/游戏的默认纹理分辨率和细节级别,仅此而已。您可能想知道为什么没有办法获得更好的数字,毕竟跟踪资源使用情况并不难。从应用的角度

windows - 请帮助 - 来自 Aero Shake/3D 翻转的 WM_SYSCOMMAND 消息

你好我有一个用Delphi2006编写的应用程序。我注意到在Windows7下运行时,该应用程序没有收到来自AeroShake的WM_SYSCOMMAND消息。但是,如果我以管理员身份运行该应用程序,那么它会在执行AeroShake时收到WM_SYSCOMMAND。我已经尝试为WM_SYSCOMMAND调用ChangeWindowMessageFilter并得到True的结果表明调用成功但我仍然无法从AeroShake获得WM_SYSCOMMAND消息。有谁知道为什么以及如何解决这个问题?谢谢 最佳答案 Thisdiscussion

windows - 如何对 live windows 7 窗口内容进行 3d 操作?

这基本上是一个范围界定问题,我应该在哪里寻找将窗口内容渲染到3d表面并对其进行操作的工具?我的意思是我可以有一个像shell一样的程序,它可以像VistaDWM's3dTaskSwitcher那样以3d形式合成实时窗口吗?并且可以将UI交互转换回每个窗口的2d交互?我在网络上到处都看到过DWM扩展​​的提及,但找不到任何关于它如何工作的资源。还有通过关联两个窗口的HWND来实现DWM缩略图的指南,但这不允许我在窗口上进行任意转换并且仅显示(您不能单击缩略图中的内容。)有什么想法吗? 最佳答案 没有用于操作DWM的3D视觉效果的界面。

AI画师技术又精进了? AI画师三维版试玩——Dreamfields和DreamFusion向文本生成3D模型领域进发

0、AI画师二维版的出圈最近AI画师的杰出表现让人惊讶无比,2022虽然不是ai绘图这项技术诞生的时间,但却是到目前为止最爆火出圈的绘图元年,现在市场上也已经有了很多成熟的AI绘画APP:用户仅需打开相应的AI绘画软件,在创作页面,只需要输入相应的关键词,你想生成什么样的画就输入什么关键词,然后点击创作,十几秒后,一幅惊艳的画作就生成了,如下都是NovelAI生成的图像:1、AI画师三维版的兴起然而最近,二维版的绘画领域已经满足不了AI了,AI已经开始进入3D世界,直接一句话/一张图,生成3D模型、立体人像、全方位环绕视频,输入简单的文本提示,就能生成3D模型,比如一幅美丽的花树画,Chiho

windows - 如何在纹理上的 3d 空间中显示 windows/X 窗口系统窗口?

我想知道,如何捕捉窗口并将其显示在3D空间的纹理上。以及如何将鼠标和键盘输入从3D应用程序重定向到在后台运行的应用程序?我的意思是完整的3D桌面。 最佳答案 这可能有点复杂,“完整”的答案可能不适合这个论坛。不过,这是一个想法/大纲:一种方法是通过VNC.在VNC服务器中运行一个单独的、不可见的“虚拟”桌面,然后以它作为显示启动所需的应用程序。然后,您在“真实”桌面上的3D渲染程序可以连接到VNC服务器,并以位图格式访问其桌面,并将其渲染到带纹理的多边形上。输入事件中的管道也非常可行。我实际上已经做到了,或者至少做到了一半(显示)。