D3D 在某些卡上无法自动生成 mipmap!

发布于 2024-09-27 06:57:32 字数 269 浏览 7 评论 0原文

在大多数计算机上我的程序运行良好。但在一台计算机上它无法生成 mipmap。

我用 D3DUSAGE_AUTOGENERATEMIPMAP 创建了一个纹理,

D3DCAPS2_CANAUTOGENMIPMAP 说是,CheckDeviceFormat 也说 D3D_OK(不是 D3DOK_NOAUTOGEN)。

然后我使用 LoadSurfaceFromMemory 来填充纹理。

但在该特定计算机上,不会生成 mipmap。更糟糕的是,电脑是我领导的!!

On most of computers my program performs fine. But on one computer it failed to generate mipmap.

I created a texture with D3DUSAGE_AUTOGENERATEMIPMAP,

D3DCAPS2_CANAUTOGENMIPMAP says yes and CheckDeviceFormat says D3D_OK(not D3DOK_NOAUTOGEN) too.

then I use LoadSurfaceFromMemory to fill the texture.

But on that particular computer, no mipmap is generated. What's worse, the computer is my leader's!!

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

皇甫轩 2024-10-04 06:57:32

我敢打赌它是集成的英特尔(或其他较小的制造商)或其驱动程序不是最新的。如果使用“参考”(REF) 驱动程序可以正常工作,那么它是一个驱动程序错误。

如果您无论如何都要从内存加载表面,那么之后调用 D3DXFilterTexture 真的有那么多额外的费用吗?它更有可能发挥作用。

唉,你发现了完全谎言的帽子的乐趣:(

I'd bet its an intel (or other lesser manufacturer) integrated or that its drivers are not up-to-date. If it works using the "reference" (REF) driver then its a driver bug.

If you are loading a surface from memory anyway is it really that much extra to call D3DXFilterTexture afterwards? Its far more likely to work.

Alas you discover the joys of caps that outright lie :(

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文