DirectX 9 图像在设备丢失后损坏 IDIRECT3DDEVICE9::Reset

DirectX 9 Image broken after device lost and IDIRECT3DDEVICE9::Reset

最近在练习DirectX 9,按ALT+TAB测试handle on device lost是否正常时出现错误。 这就是金字塔通常的样子: http://i.stack.imgur.com/r3qfr.png

而且reset功能后,全黑了,有些人脸不显示

这些是我的代码:

https://drive.google.com/open?id=0B-A7Ln7aLla6fnFINU1WRUtlU1ViWUZ1UG93N09HU05NUnR4OEtYc2R5M2lhWC1YMExvNEk

请帮忙!我在 Internet 上找不到任何信息。

您的问题是,您也忘记了在设备重置时设置您最初设置的渲染状态。 (不幸的是,官方 documentation 没有明确说明这一点,或者我忽略了它)在设备丢失时,几乎所有数据(托管数据除外,如您的 vertex/indexbuffers)都丢失了,您需要设置所有初始数据再次.

你的脸变黑了,因为灯光已经再次切换到默认的真实。

有些面孔会消失,因为你的剔除模式已经重置。