2013-05-21 1 views
0

Я хочу смешать (в PostProcessing-Shader) вывод камеры с текстурой. Есть ли способ загрузить текстуру? что-то вродеЗагрузить текстуру из файла в HLSL

texture mytexture = "file.bmp" 

sampler2D smp = sampler_state { 
texture = <mytexture>; 
... 
} 
+0

Какую версию Direct3D вы используете? 11? Возможно, D3DX11CreateTextureFromFile (http://msdn.microsoft.com/en-us/library/windows/desktop/ff476286(v=vs.85).aspx) будет работать для вас. – Vertexwahn

ответ

0

Шейдер - это микропрограмма, которая работает на gpu. Поэтому он не способен на что-то сложное, как загрузка текстур с диска. Правильный способ сделать это - загрузить текстуру из вашей программы через DirectX-Api (например, D3DX11CreateTextureFromFile) и установить этот ресурс в rendercall в шейдере, чтобы использовать его там.