CPU 書き込みアクセスで Texture2D 配列を作成しようとしています。詳細には、私が使用しているコードは次のようになります。
D3D10_TEXTURE2D_DESC texDesc;
texDesc.Width = 32;
texDesc.Height = 32;
texDesc.MipLevels = 1;
texDesc.ArraySize = 2;
texDesc.SampleDesc.Count = 1;
texDesc.SampleDesc.Quality = 0;
texDesc.Usage = D3D10_USAGE_DYNAMIC;
texDesc.CPUAccessFlags = CPU_ACCESS_WRITE;
texDesc.Format = DXGI_FORMAT_R32G32B32_FLOAT;
texDesc.BindFlags = D3D10_BIND_SHADER_RESOURCE;
texDesc.MiscFlags = 0;
ID3D10Texture2D* texture2D;
CHECK_SUCCESS(device->CreateTexture2D(&texDesc, NULL, &texture2D));
ただし、これは E_INVALIDARG で失敗します。同じ寸法 (つまり 32x32x2) とパラメータで 3D テクスチャを作成するとうまくいきますが、この場合は望ましくありません。この設定が有効ではない理由を誰かが知っていますか?