首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >DirectX11非实心线框

DirectX11非实心线框
EN

Stack Overflow用户
提问于 2015-11-09 03:45:29
回答 2查看 924关注 0票数 1

我尝试使用C++在DirectX11中绘制一个100x100的网格,但出现了以下问题:

上图显示了我在线框中绘制的网格,使用的是一个填充模式设置为“D3D11_FILL_WIREFRAME”的光栅化器和一个“D3D11_PRIMITIVE_TOPOLOGY_LINELIST”拓扑。线框的线条看起来是交错的,而不是直的,缺少线框的某些部分。

由于我不确定这个问题是指什么,我也不完全确定我应该寻找什么,因此,任何帮助都是非常感谢的。

EN

回答 2

Stack Overflow用户

发布于 2015-11-09 10:37:58

这是一个经典的“别名”问题。

在MSAA11中,您可以使用Direct3D,这是一种通用的抗锯齿选项,或者如果您不使用MSAA,则可以使用特定的线条算法。请参见D3D11_RASTERIZER_DESC AntialiasedLineEnableMultisampleEnable

请参阅AliasingMultisample anti-aliasing

更新:我已经在DirectX工具包tutorial中添加了MSAA和AA模式。

票数 3
EN

Stack Overflow用户

发布于 2015-11-13 09:58:12

我偶然发现了这个问题的解决方案,这完全不是我所期望的。因为我创建的窗口有轮廓栏,所以windows客户区被错误地呈现了。因此,当我创建我的图形设备时,我是用窗口大小来初始化它,而不是用窗口客户端大小。不知何故,这导致了上面的问题。

我通过使用'GetWindowRect‘为窗口实现了一个'GetClientSize’方法修复了这个问题。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/33598243

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档