首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >无法创建DX11呈现目标视图

无法创建DX11呈现目标视图
EN

Stack Overflow用户
提问于 2015-05-09 00:55:31
回答 1查看 1.1K关注 0票数 0

我试图开始使用DirectX 11游戏编程,但由于某些原因,我无法使用ID3D11Device::CreateRenderTargetView()创建渲染目标视图。

(顺便说一句,我在Desktop 2013上使用VS,我的图形处理器支持的最高功能级别是11_0。我运行的是Windows 8.1。)

下面是我认为相关的代码:

代码语言:javascript
运行
复制
D3D11_TEXTURE2D_DESC backBufferDesc;
    ZeroMemory(&backBufferDesc, sizeof(backBufferDesc));
    backBufferDesc.ArraySize = 1;
    backBufferDesc.BindFlags = D3D11_BIND_RENDER_TARGET | D3D11_BIND_SHADER_RESOURCE;
    backBufferDesc.CPUAccessFlags = 0;
    backBufferDesc.Format = DXGI_FORMAT_R32_FLOAT;
    backBufferDesc.Height = nHeight;
    backBufferDesc.Width = nWidth;
    backBufferDesc.MipLevels = 1;
    backBufferDesc.MiscFlags = 0;
    backBufferDesc.SampleDesc.Count = 1;
    backBufferDesc.SampleDesc.Quality = 0;
    backBufferDesc.Usage = D3D11_USAGE_DEFAULT;

    ID3D11Texture2D* backBufferTexture;
    result = d3dDevice_ -> CreateTexture2D(&backBufferDesc, 0, &backBufferTexture);
    if (FAILED(result))
    {
        MessageBox(0, "Failed to create the back buffer texture!", "DirectX Error", MB_OK);
        return false;
    }

    result = swapChain_->GetBuffer(0, __uuidof(ID3D11Texture2D), (LPVOID*)&backBufferTexture);
    if (FAILED(result))
    {
        MessageBox(0, "Failed to get the swap chain back buffer!", "DirectX Error", MB_OK);
        return false;
    }

    D3D11_RENDER_TARGET_VIEW_DESC rtvDesc;
    ZeroMemory(&rtvDesc, sizeof(rtvDesc));
    rtvDesc.Format = backBufferDesc.Format;

    result = d3dDevice_->CreateRenderTargetView(backBufferTexture, &rtvDesc, &backBufferTarget_);
    if (backBufferTexture)
        backBufferTexture->Release();
    if (FAILED(result))
    {
        MessageBox(0, "Failed to create the render target view!", "DirectX Error", MB_OK);
        return false;
    }
EN

回答 1

Stack Overflow用户

发布于 2015-05-10 17:09:10

使用Debug设备会给您一个人类可读的错误。

根据我对代码的阅读,您还没有填写rtvDesc的ViewDimension字段。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/30129059

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档