2015-09-30 14 views
0

Я создаю две 2dtextures в d3d11 следующим образом: m_device-> CreateTexture2D (& D3D11Tex, NULL, & tex1); m_device-> CreateTexture2D (& D3D11Tex, NULL, & tex2);Как создать две 2dTextures с помощью d3d11Device?

D3D11Tex.ArraySize = 1; // в настоящее время используется Я читал, что это значение можно сохранить как два.

Но тогда как мы получаем 2 текстуры. Сохраняя ArraSize как 2, дайте мне две текстуры в tex1 и tex2? Или будет tex1 быть массивом размера два.

Любая помощь на это оценивается. Заранее спасибо.

ответ

0

tex1 и tex2 - независимые ресурсы, которые должны быть привязаны к разным слотам ресурсов шейдеров. Если вы сделаете один из них двухмерным массивом текстур, у вас все еще будет два шейдерных ресурса, только один из них имеет место для двух 2D-текстур в массиве.

Обратите внимание, что для двухмерных текстурных массивов требуется оборудование уровня 10.0 или выше. Вызов завершился с ошибкой в ​​системе с устройством уровня 9.1, 9.2 или 9.3 (например, Surface RT, Surface RT 2, Windows 8, Shader Model 2.0 и т. Д.).

+0

Большое спасибо. Это помогло – SentyGuy