DirectX 11渲染到纹理

时间:2018-02-25 02:14:35

标签: c++ directx game-engine directx-11 directx-10

基本上我正在尝试将场景渲染到纹理,就像在这个ogl教程here中一样,但在DirectX 11中,我遇到了一些问题:

  1. 当我启动IDK程序原因时,绝对没有渲染。
  2. 纹理'正确'显示的唯一东西是清晰的颜色。 debug build
  3. 我已经检查了RenderDoc中的可执行文件,并且在捕获的帧中,后缓冲区绘制了四边形,其上的纹理正确显示了场景! renderdoc capture output
  4. 源代码高峰:

    m->isHTML(true);
    //adding file to be attached
    $m->addAttachment($path, $name, $encoding, $type);
    
    $m->Subject = "Here is an Email";
    $m->Body = "<p>This is the body of the email</p><br><strong>Test for 
    HTML formatting</strong><br>";
    $m->AltBody = "This is the body of an email";
    $m->send();
    echo "message has been sent";
    

    着色器:

    $filename = $rows['name'];
    $filesize = $rows['filesize'];
    $content =  $rows['wholeMP3'];
    $type = $rows['type']; 
    
    header("Content-length: $filesize");
    header("Content-type: $type");
    header("Content-Disposition: attachment; filename=$filename");
    ob_clean();
    flush();
    echo $content;
    $LastProduct->closeCursor();
    

    Full Source Code

    我还使用visual studio图形调试器捕获了一个帧,并注意到纹理绘制调用的渲染具有PS着色器,其中“stage没有运行,没有输出”。

    注意:我知道场景应该在DirectX中翻转。

1 个答案:

答案 0 :(得分:3)

我发现了导致此问题的错误,我在渲染时没有清除深度模板视图,我想知道为什么要清除DSV对RenderTarget输出必不可少。