原创 DirectX11 With Windows SDK--26 計算着色器:入門

前言 現在開始迎來所謂的高級篇了,目前計劃是計算着色器部分的內容視項目情況,大概會分3-5章來講述。 DirectX11 With Windows SDK完整目錄 Github項目源碼 歡迎加入QQ羣: 727623616 可以一起探討DX

原创 DirectX11--深入理解與使用2D紋理資源

前言 寫教程到現在,我發現有關紋理資源的一些解說和應用都寫的太過分散,導致連我自己找起來都不方便。現在決定把這部分的內容整合起來,儘可能做到一篇搞定所有2D紋理相關的內容,其中包括: 2D紋理的一般創建方法 DDSTextureLoade

原创 DirectX11--實現一個3D魔方(3)

前言 (2019/1/9 09:23)上一章我們主要講述了魔方的旋轉,這個旋轉真是有毒啊,搞完這個部分搭鍵鼠操作不到半天應該就可以搭完了吧... (2019/1/9 21:25)啊,真香 有人發這張圖片問我寫魔方的目的是不是這個。。。噗

原创 DirectX11--實現一個3D魔方(1)

前言 可以說,魔方跟我的人生也有一定的聯繫。 在高中的學校接觸到了魔方社,那時候的我雖然也能夠還原魔方,可看到大神們總是可以非常快地還原,爲此我也走上了學習高級公式CFOP的坑。當初學習的網站是在魔方小站,不過由於公式太多了,那一年主要也就

原创 DirectX11--實現一個3D魔方(2)

前言 上一章我們主要講述了魔方的構造和初始化、紋理的準備工作。目前我還沒有打算講Direct3D 11關於底層繪圖的實現,因此接下來這一章的重點是魔方的旋轉。因爲我們要的是能玩的魔方遊戲,而不是一個觀賞品。所以對旋轉這一步的處理就顯得尤其重

原创 DirectX11 With Windows SDK--25 法線貼圖

前言 在很早之前的紋理映射中,紋理存放的元素是像素的顏色,通過紋理座標映射到目標像素以獲取其顏色。但是我們的法向量依然只是定義在頂點上,對於三角形面內一點的法向量,也只是通過比較簡單的插值法計算出相應的法向量值。這對平整的表面比較有用,但無

原创 DirectX11--教程項目無法編譯、運行的解決方法

綜述 對於Win10系統的大多數用戶來說,可以直接編譯本教程對應的項目並運行。但也有部分用戶由於某些原因可能會出現無法編譯的情況。 DirectX11 With Windows SDK完整目錄 歡迎加入QQ羣: 727623616 可以一起

原创 DirectX11--ComPtr智能指針

綜述 DirectX11 With Windows SDK完整目錄 歡迎加入QQ羣: 727623616 可以一起探討DX11,以及有什麼問題也可以在這裏彙報。 IUnknown接口類 DirectX11的API是由一系列的COM組件來管理

原创 DirectX11--HR宏關於dxerr庫的替代方案

DirectX11 With Windows SDK完整目錄 歡迎加入QQ羣: 727623616 可以一起探討DX11,以及有什麼問題也可以在這裏彙報。 綜述 參考文章:https://blogs.msdn.microsoft.com/c

原创 DirectX11--HLSL編譯着色器的三種方法

前言 本教程不考慮Effects11(FX11),而是基於原始的HLSL。 目前編譯與加載着色器的方法如下: 使用Visual Studio中的HLSL編譯器,隨項目編譯期間一同編譯,並生成.cso(Compiled Shader Obj

原创 一封來自惡魔的挑戰邀請函,那些你見過或者沒見過的C語言指針都在這裏了

前言 相信大多數的同學都是第一門能接觸到語言是C/C++,其中的指針也是比較讓人頭疼的部分了,因爲光是指針都能專門出一本叫《C和指針》的書籍,足見指針的強大。但如果不慎誤用指針,這些指針很大可能就會像惡魔一樣把你的程序給直接搞崩潰。 3個月

原创 DirectX11 With Windows SDK--24 Render-To-Texture(RTT)技術的應用、使用ScreenGrab保存紋理到文件

前言 儘管在上一章的動態天空盒中用到了Render-To-Texture技術,但那是針對紋理立方體的特化實現。考慮到該技術的應用層面非常廣,在這裏抽出獨立的一章專門來講有關它的通用實現以及各種應用。此外,這裏還會講到如何使用DirectXT

原创 DirectX11 With Windows SDK--23 立方體映射:動態天空盒的實現

前言 上一章的靜態天空盒已經可以滿足絕大部分日常使用了。但對於自帶反射/折射屬性的物體來說,它需要依賴天空盒進行繪製,但靜態天空盒並不會記錄周邊的物體,更不用說正在其周圍運動的物體了。因此我們需要在運行期間構建動態天空盒,將周邊物體繪製入當

原创 DirectX11 With Windows SDK--22 立方體映射:靜態天空盒的讀取與實現

前言 從現在開始可以說算是要進入到高級主題部分了。這一章我們主要學習由6個紋理所構成的立方體映射,以及用它來實現一個靜態天空盒。 DirectX11 With Windows SDK完整目錄 Github項目源碼 歡迎加入QQ羣: 7276

原创 DirectX11--HLSL中矩陣的內存佈局和mul函數探討

前言 說實話,我感覺這是一個大坑,不知道爲什麼要設計成這樣混亂的形式。 在我用的時候,以row_major矩陣,並且mul函數以向量左乘矩陣的形式來繪製時的確能夠正常顯示,並不會有什麼感覺。但是也有人會遇到明明傳的矩陣沒有問題,卻怎麼樣都繪