- c - 在位数组中找到第一个零
- linux - Unix 显示有关匹配两种模式之一的文件的信息
- 正则表达式替换多个文件
- linux - 隐藏来自 xtrace 的命令
我想渲染一个场景并将其显示在监视器上,同时将另一个场景渲染为纹理。我需要创建两个交换链吗?在这种情况下如何创建第二个交换链?我尝试调用 CreateSwapChainForCoreWindow 但出现内存访问异常。
最佳答案
交换链实际上只是用来展示东西。
要渲染到某物,您必须通过调用 OMSetRenderTargets() 将渲染目标 View 添加到设备。您可以通过 CreateRenderTargetView() 创建渲染目标 View ,它将资源作为输入。纹理也是资源...您只需使用 D3D11_BIND_RENDER_TARGET 标志创建它们。
这只是一些提示,应该能够为您指明正确的方向。
顺便说一句,Swapchains 有缓冲区,这些缓冲区也是用于创建渲染目标 View 的资源。这就是你如何渲染到交换链;它实际上与“交换链”完全没有任何关系。
关于c++ - DirectX 11 (C++) 中的多个 RenderTarget,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12270631/
为了学习我自己的 Direct2D,我正在关注 this example来自 MSDN。 但是我有一个问题。调用 D2D1_SIZE_F rtSize = m_pRenderTarget->GetSi
我试图在第一次绘制时将纹理加载到渲染目标中,然后保留内容以在每一帧绘制相同的纹理而不重新创建它。 这是我的代码,但它不起作用,只显示空纹理区域和 RenderTarget2D rTarget = nu
The HelloWorld examples from Microsoft大多数情况下使用单个 CommandAllocator,然后等到前一帧完全完成。然而,他们也说(全部大写)这不是应该做的。
我试图在运行时更改 RenderTargets,这样我就可以在运行时绘制一些元素,对其进行操作,然后最终将纹理绘制到屏幕上。问题是,如果我在运行时更改 RenderTarget,屏幕会变成紫色。这是我
我目前正在从头开始为 XNA 游戏创建一个窗口系统。我主要为 Windows 开发,但谁知道我将来可能支持哪些平台。如果您知道 native Direct3D 的这一点,请随意回答,因为性能语义应该相
这是一个很难描述的问题(我使用的是 MonoGame,Windows 8)。 我希望能够渲染一个半透明的“sprite”图像,例如 .png,而不是在屏幕上,而是在一个清晰的图像上,这样做几次,实际上
我是计算机图形学专业的大学硕士生,我在使用 three.js 访问使用 EffectComposer 创建的纹理的图像数据(像素)时遇到困难。 第一个 composer (composer) 使用线检
在 XNA 中,我需要获取对 BackBuffer 的 RenderTarget(2D) 的引用,以便将其绘制到纹理或更改其用法 到 Usage.PreserveContents,是否有任何方法允许我
XNA 菜鸟在这里,每天都在学习。我刚刚弄清楚如何使用 RenderTarget2D 将多个纹理合成一个。然而,虽然我可以将 RenderTarget2D 用作大多数用途的 Texture2D,但存在
我在 scene1plane1 上添加了半透明 texture 我将此场景1渲染到renderTarget中,而不是在放置在另一个场景2上的另一个平面2上使用renderTarget.texture。
我正在尝试使用 C++ Builder 的 TDirect2DCanvas 的 Direct2D RenderTarget 属性来对使用 GPU 的位图操作进行基准测试。与 GDI 相比,这是最令人印
我想渲染一个场景并将其显示在监视器上,同时将另一个场景渲染为纹理。我需要创建两个交换链吗?在这种情况下如何创建第二个交换链?我尝试调用 CreateSwapChainForCoreWindow 但出现
我有一个在 Win32 应用程序上运行的 C++ 小型 2D 渲染库,并使用 Direct2D 进行绘图。我调用了 BeginDraw(),完成了大量绘图,然后调用了 DrawText()。这当然是在
我有一个纹理及其 shaderresourceview,我通过将其用作 RenderTarget 来渲染场景的原始图像。 就像我之前的数百万人一样,然后我将它用作我下一个着色器的输入,这样我就可以模糊
我是一名优秀的程序员,十分优秀!