使用D3DX11CreateShaderResourceViewFromFile加载.PSD文件

时间:2014-07-18 18:14:49

标签: c++ directx-11 psd

我对DX11和PSD文件有一个奇怪的问题。我知道它说DX11不支持PSD文件,但它会在我的开发机器上加载RGB PSD。出于某种原因,如果存在,它会忽略alpha通道。当我在另一台机器上运行相同的程序时,它会记录失败并且没有加载纹理。

还有其他人看过这种行为吗? Microsoft是否在稍后更新的DirectX中添加了PSD支持(未记录,等等)?

两台机器都在运行2010年6月的SDK,唯一的区别是我使用的是Win7 Professional SP1(可以正常工作),另一台机器是Win7 Ultimate没有服务包(不起作用)。

有人知道将PSD转换成DX11的好方法吗?我们的管道是PSD原生的,所以我们宁愿将它们直接加载到内存中。目前我们通过外部程序转换为BMP,但它确实很慢。

由于

1 个答案:

答案 0 :(得分:1)

根据Ross Ridge的评论,这是PSD Windows成像组件(WIC),它允许您将PSD文件读入DX11纹理。但请注意,它不会在alpha通道中读取,只能读取PSD的RGB。这对大多数用途都很好。