DirectX渲染狀態設定

2021-06-18 14:12:01 字數 2059 閱讀 1487

1)設定著色模式:

setrenderstate( d3drs_shademode, d3dshade_falt )// 設定平面著色模式

setrenderstate ( d3drs_shademode, d3dshade_gouraud )// 設定格勞德著色模式

2)設定多邊形填充模式

setrenderstate( d3drs_fillmode, d3dfill_point ) // 點填充模式,d3d在多邊形的每個頂點繪製乙個畫素

setrenderstate( d3drs_fillmode, d3dfill_wireframe )// 線填充模式,d3d在多邊形的每個邊繪製一條線

setrenderstate( d3drs_fillmode, d3dfill_solid ) // 面填充模式,d3d預設模式,對多邊形面進行填充

3)設定全景圖形抗鋸齒

setrenderstate( d3drs_mutisampleantialias, true )// 抗鋸齒

setrenderstate( d3drs_mutisampleantialias, false )// 不抗鋸齒

4)設定剔除模式

setrenderstate( d3drs_cullmode, d3dcull_none ) // 不剔除任何面

5)設定光照模式

setrenderstate( d3drs_ambient, d3dcolor ambientcolor )// 為整個場景設定環境光

setrenderstate( d3drs_specularenable, true ) // 啟用鏡面反射計算(d3d預設情況下是關閉的)

6)啟動/關閉深度測試

setrenderstate( d3drs_zenable, true )// 啟用深度測試

7)設定紋理過濾器

// 線性紋理

setsamplerstate( 0, d3dsamp_magfilter, d3dtexf_linear )

setsamplerstate( 0, d3dsamp_minfilter, d3dtexf_linear )

// 最近點取樣

setsamplerstate( 0, d3dsamp_magfilter, d3dtexf_point )

setsamplerstate( 0, d3dsamp_minfilter, d3dtexf_point )

// 各向異性紋理過濾

setsamplerstate( 0, d3dsamp_minfilter, d3dtexf_anisotropic )

setsamplerstate( 0, d3dsamp_mipfilter, d3dtexf_anisotropic )

8)設定縮放功能

setrenderstate( d3drs_pointscaleenable, true ) // 開啟縮放功能

setrenderstate( d3drs_pointscale_a, ftodw( 1.00f ) )// 設定縮放因子

setrenderstate( d3drs_pointscale_b, ftodw( 1.00f ) )// 設定縮放因子

setrenderstate( d3drs_pointscale_c, ftodw( 1.00f ) )// 設定縮放因子

setrenderstate( d3drs_pointsize_max, ftodw( 5.00f ) )// 設定點大小上限

setrenderstate( d3drs_pointsize_max, ftodw( 5.00f ) )// 設定點大小上限

setrenderstate( d3drs_pointspriteenable, true ) // 開啟點精靈

setrenderstate( d3drs_ambient, 0xffffffff ); // 設定環境光顏色開啟alpha混合效果

9)設定混合因子

setrenderstate( d3drs_srcblend, d3dblend_srcalpha )// 源

setrenderstate( d3drs_destblend, d3dblend_invsrcalpha )// 目的

DirectX 渲染到紋理

熟悉dx的兄弟們都知道什麼叫紋理了,這裡簡單介紹一下,先看看現實生活中的例子吧,其實紋理的例子比比皆是,比如地板,牆面都是紋理。在圖形學中,紋理主要是為了增強場景的真實感,比如你想繪製乙個地面,簡單一點可以直接使用乙個矩形,稍微複雜一點可以用三角形網格,再複雜一點可以使用地面紋理,有了紋理以後真實感...

DirectX 渲染 學習筆記 1

在2d遊戲中乙個遊戲的渲染部分一般有如下共同的資訊 紋理貼圖和精靈 精靈是一種特殊的物件型別.一般是出現在螢幕上的2d和3d圖形元素。在2d遊戲中,精靈不僅僅表示角色,還可以表示背景,遊戲物件,和任何單個的元素,甚至是能夠繪製出來的項 頂點 定義在遊戲圖形中的形狀其實是一系列點以及它們之間相互連線的...

DirectX11渲染過程

網易作業deadline 要涼了555 對directx初始化完成後,就可以進行渲染了。struct vs input 輸入資料的格式 struct vs output 輸出資料的格式 vs output main vs input input 編譯之後生成cso檔案,使用readfiletoblo...