DIRECTX9實現卡馬克卷軸

2021-05-23 15:45:41 字數 582 閱讀 1348

前面寫了點directx入門的東西 最近發現sdk才是最好的啊 所以以後就不寫那麼無聊的東西了。

關於卡馬克卷軸網上有很多,主要是用來提高繪製2d地圖的效率,但是用directx實現的我缺找到~~

所以自己就試試了。。發現原來如此簡單~~

1.在設定swapbuffereffect時一定要設定成swapeffect_copy

2.利用present來實現:原來一次render過程中可以多次呼叫present~

例如我將backbuffer分成左右兩個相等的部分。

present(&backbufferrighthalfrect,&frontbufferlefthalfrect,null,null);//將backbuffer中右半部分繪製到frontbuffer左半部分

present(&backbufferlefthalfrect,&frontbufferrighthalfrect,null,null);//將b左繪製到f右

這樣就實現了卡馬克卷軸了~~

是不是很簡單~~

另外利用髒矩形和mmx等也可以提高遊戲效率~以後再研究

卡馬克卷軸演算法

念 這裡使用簡化的概念,精確的定義請參考計算機圖形學中二維觀察流程。世界座標系 用於標註整個遊戲世界的座標系。攝像機 攝像機攝到的區域才能顯示在螢幕上,攝像機在本文中表現為乙個視窗,視窗內的世界才能顯示到螢幕上進而被看到。移動攝像機到不同的位置就可以觀察不同位置的情形。卡馬克卷軸演算法 如圖所示,當...

卡馬克卷軸演算法

概念 這裡使用簡化的概念,精確的定義請參考計算機圖形學中二維觀察流程。世界座標系 用於標註整個遊戲世界的座標系。卡馬克卷軸演算法 img 如圖所示,當前內容是 1230。當攝像機向右下移動時,其內容應該變為0564,這樣就形成了卷軸的效果。由原位置變化為新位置的具體做法是 使用兩個緩衝區 當前緩衝區...

卡馬克卷軸演算法實現android版

雨松momo 帶你走進遊戲開發的世界之主角的移動與地圖的平滑滾動 卡馬克卷軸演算法研究 地圖雙緩衝 矩形相交判斷 將地圖每次移動時的相交區域作為重複利用資源 緩衝區 如圖a1b1c1d1 移動前 和a2b2c2d2 移動後 相交得到的矩形為aabbccdd。根據判斷矩形是否相交公式為 通過中心點距離...