18得票4回答
DirectX 11中如何绘制文本?

在DirectX 10中,您可以使用D3DX10提供的字体接口。在DirectX 11中,您应该使用DirectWrite。但看起来DirectWrite不能与Direct3D进行本地交互?我是否缺少了一些基本的东西?如何在DirectX 11中绘制简单的文本?

18得票7回答
捕捉DirectX全屏应用程序的截图

这让我很困惑。DirectX绕过所有东西并直接与设备驱动程序通信,因此GDI和其他常规方法无法使用 - 除非禁用(或不可用)Aero,否则屏幕左上角只会出现一个黑色矩形。我尝试了其他人在几个论坛上建议的方法,使用DirectX获取后台缓冲区并保存它,但是我得到了相同的结果: device->...

17得票3回答
为什么不使用GDI从数组中重复填充窗口的RGB数据?

这是对此问题的跟进。我正在编写一个简单的游戏,想找到在Win32窗口中以最快的方式(反复)显示RGB数据数组的方法,而且不会出现闪烁或其他伪像。 针对上一个问题的答案中推荐了几种不同的方法,但没有达成哪种方法最快的共识。因此,我编写了一个测试程序。该代码只是尽可能快地反复显示屏幕上的帧缓冲区...

17得票1回答
GLSL中的mod和HLSL中的fmod区别

我已经在HLSL中实现了这个问题中描述的螺旋GLSL着色器,但结果并不相同。我认为这是因为我在HLSL中翻译了GLSL中的mod函数成为fmod函数所导致的。我怀疑这个问题只会在fmod函数的输入中有负数时才会出现。 我已经尝试用我自己制作的函数替换mod函数的调用,它实现了GLSL文档中描...

17得票3回答
圆心Catmull-Rom样条是如何工作的?

从这个网站上了解到,这似乎是关于Catmull-Rom样条最详细的信息,它需要四个点来创建该样条。然而,它没有提到点p0和p3如何影响p1和p2之间的值。 我还有一个问题,那就是如何创建连续的样条曲线呢?是否只需将点p1和p2定义为与p4、p5连续,方法是使p4=p2(假设我们有p0、p1、...

17得票3回答
如何计算像素着色器深度,以渲染绘制在点精灵上的圆形为球体,并与其他对象相交?

我正在编写一个着色器,用于在点精灵上渲染球体,通过绘制阴影圆来实现,并且需要编写深度组件以及颜色,以便彼此靠近的球体可以正确地相交。 我正在使用类似Johna Holwerda编写的代码: void PS_ShowDepth(VS_OUTPUT input, out float4 colo...

17得票4回答
Direct3D 线条粗细

如何在使用Direct3D绘制线列表时更改线条的粗细? 这篇文章指出线宽不受支持,并提供了一种解决方法。还有其他选项吗? 顺便问一下,着色器是否允许绘制带有虚线图案的线条?

17得票5回答
我在哪里可以找到一些深入的DirectX 11教程?

到目前为止,我能找到的唯一教程是在directx11tutorials.com上的,这些教程基本上是根据现有示例推导出来的。有没有人知道其他教程在哪里可以找到,或者最好是使用DirectX 11的开源项目?(如果有使用DirectX 11的项目代码,将额外得分 : ))

17得票1回答
在窗口模式下,Windows 10 等待 VBLANK 的正确方法是什么?

在窗口模式下,等待VBLANK正确的方法是什么?目前我正在执行以下操作: D3DKMTWaitForVerticalBlankEvent(&waitData); swapchain->Present(0, 0); 然而,这会导致偶尔出现的卡顿。我对这种卡顿的理论是: DWM...

16得票1回答
全屏DirectX叠加?是的...再次使用C#

看起来这个问题已经在不同的情况下被问了多次,我已经为游戏制作了一些叠加层(用于信息数据等)。我也希望能够像Steam和XFire一样使它可交互。 我设法在窗口模式下为DirectX游戏创建了一个叠加层...但是有点问题。 我在Stack Overflow和Google上找过,但运气不太好。...