學習X_Jun的D3D教程:02頂點/像素着色器、頂點緩衝區課後習題

最近在學習DirectX3D,目前的學習路線是龍書+X_jun同學的博客:https://blog.csdn.net/x_jun96/category_8596621.html

接下去整理一下博客中每一節的課後習題,如果解答有問題,請各位同學批評指正。

共勉!(#^.^#)

注:有些問題博主也沒有解決,逐漸完善中。。。

一、源代碼的運行結果爲:

二、題目

  1. 嘗試交換三角形第一個和第三個頂點的數據,屏幕將顯示什麼?爲什麼?

    交換後的結果是:

    原因分析:
    交換後頂點的座標順序是逆時針的,我們默認順時針旋轉的頂點是正面,逆時針的頂點是反面。
    因此最終呈現的效果是黑色的背景。

    注:默認正面的旋轉方向可以由一個參數來控制,這個參數博主忘記了,等下次找到了再來補充————
    2020/1/31補充:
    博主找到了:在描述光柵狀態塊:D3D11_RASTERIZER_DESC
    (實心/線框,三角形朝前/朝後消隱,順時針/逆時針朝前)
    這個參數在這一小節沒有用到,繼續往後學纔會用到。

     
  2. 嘗試用6個頂點繪製矩形表面
    修改draw(繪製頂點數目,起始索引)爲:

    使用兩個直角三角形構成矩形:

    效果:

    補充:這裏的顏色我沒有修改,你也可以把XMFLOAT4修改成你喜歡的RGBA

     
  3. 嘗試用4個頂點繪製矩形表面(提示:D3D11_PRIMITIVE_TOPOLOGY_TRIANGLESTRIP
    改變頂點數量


    改變一下頂點順序,是的123,234座標形成的三角形可以組合成矩形

    改變佈局方式爲:D3D11_PRIMITIVE_TOPOLOGY_TRIANGLESTRIP

    呈現的結果:
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章