2014-07-18 64 views
2

我對DX11和PSD文件有一個奇怪的問題。我知道它說DX11不支持PSD文件,但是它會在我的開發機器上加載RGB PSD。出於某種原因,如果存在,它會忽略alpha通道。當我在另一臺機器上運行這個相同的程序時,它會按記錄失敗並且沒有加載紋理。使用D3DX11CreateShaderResourceViewFromFile加載.PSD文件

有沒有人看過這種行爲? Microsoft是否在稍後的DirectX更新中添加了對PSD沒有記錄的支持,等等?

兩臺機器都運行2010年6月SDK,唯一的區別是我可以看到的是我使用的是Win7 Professional SP1(它的工作原理),另一臺機器是Win7 Ultimate沒有Service Pack(不起作用)。

有沒有人知道一個很好的方法讓PSD進入DX11?我們的管道是PSD本地的,所以我們寧願將它們直接加載到內存中。目前我們通過外部程序轉換爲BMP,但速度很慢。

感謝

+1

就像在黑暗中刺中,但可能是因爲您在一臺機器上安裝了PSD Windows Imaging Component(WIC)編解碼器,但沒有安裝其他機器。 –

+0

這正是它的原因。看來,在我開發這臺機器的多年時間裏,我甚至沒有意識到這個組件。謝謝! – Damian

回答

1

按照羅斯里奇的評論,這是PSD Windows圖像處理組件(WIC),使您可以讀取PSD文件到DX11紋理。但請注意,它不會讀取alpha通道,只是PSD的RGB。對於大多數目的來說這很好。