无码av一区二区三区无码,在线观看老湿视频福利,日韩经典三级片,成 人色 网 站 欧美大片在线观看

歡迎光臨散文網(wǎng) 會(huì)員登陸 & 注冊(cè)

項(xiàng)目中常用的D3D黑屏優(yōu)化講解和源碼分享,DX系列的游戲都可以用

2021-12-28 12:12 作者:微塵網(wǎng)絡(luò)安全  | 我要投稿

? ? 諸多工作室在項(xiàng)目測(cè)試功能穩(wěn)定后,為了更高效率的 榨干電腦性能 盡可能的多開會(huì)選擇將畫面黑屏,零渲染??!今天我們來拆解分析實(shí)現(xiàn)原理和方案


? 大部分游戲畫面渲染基本用的都是DX系列 除了DX9 ?現(xiàn)在很多游戲也用到了DX11 他們版本有差異 在逆向程序員眼里區(qū)別不大。


????通過OD就可以查看游戲加載 了哪些模塊,很多游戲都有加載d3d9.dll或者d3d11.dll 這也說明了 他們?cè)谡蜷_發(fā)過程中用到了 D3D進(jìn)行了渲染。所以 也就可以在這些模塊 里HOOK 劫持修改他的渲染函數(shù) 在他的最后一步直接給他渲染成純黑 從而實(shí)現(xiàn)黑屏優(yōu)化的效果


渲染過程可以大概分為

BeginScene開始渲染
EndScene結(jié)束渲染
Present顯示后置緩沖的動(dòng)畫


當(dāng)然 這個(gè)過程其實(shí)可以給大家每個(gè)函數(shù)細(xì)節(jié)分析。這個(gè)就放到咱們的課程視頻里面了。重點(diǎn)是我們?nèi)OOK?Present這個(gè)函數(shù)

Present函數(shù)會(huì)最終等待所有繪制命令結(jié)束并將結(jié)果從back buffer拷貝到front buffer。渲染到游戲窗口


技術(shù)難度也不高 無非就是要定位到這個(gè)虛函數(shù) 然后HOOK一個(gè)新的函數(shù)替換他 并且在執(zhí)行完Clear函數(shù)在執(zhí)行原來的Present函數(shù)。完整的代碼就在公眾號(hào)里面輸入 黑屏優(yōu)化 獲取把

效果如下


微塵網(wǎng)絡(luò)安全

專注分享網(wǎng)絡(luò)安全 x64 c++ 逆向 反匯編 反調(diào)試 HOOK 注入 封包 內(nèi)存等技術(shù)

公眾號(hào)




項(xiàng)目中常用的D3D黑屏優(yōu)化講解和源碼分享,DX系列的游戲都可以用的評(píng)論 (共 條)

分享到微博請(qǐng)遵守國(guó)家法律
滨海县| 通渭县| 泗阳县| 长宁区| 庆元县| 福州市| 麻栗坡县| 石泉县| 清远市| 罗平县| 紫阳县| 陆良县| 宝兴县| 武城县| 涞水县| 普宁市| 松潘县| 治多县| 泾川县| 屏边| 汝州市| 丰宁| 天祝| 商洛市| 榆中县| 甘谷县| 高台县| 拉孜县| 独山县| 洪江市| 星子县| 乌拉特中旗| 长治县| 古浪县| 沈阳市| 伊吾县| 弋阳县| 涞源县| 教育| 岗巴县| 江西省|