当前位置:首页 » 编程博文
开发技术指南» 文章正文
    引言: 採用Direct3D
 

 

 ·vc编程经验汇总(三)    »显示摘要«
    摘要:1. 显示和隐藏标题栏 方法一:使用api实现 //隐藏titlebarlong lstyle = ::getwindowlong(this->m_hwnd, gwl_style);::setwindowlong(this->m_hwnd, gwl_style, lstyle & ~ws_caption);::setwindowpos(this->m_hwnd, n......
    摘要://蛙蛙推荐:类中的静态成员和非静态成员(c#版)//下面我写一个例子来演示静态成员和非静态成员的区别//类的成员要么是静态的,要么是动态的,如果将类的某个成员声明为static,则该成员是静态成员。//类的静态成员是属于类所有,不必产生类的实例就可以访问它,就是只用类名就可以访问//静态成员为类的所有实例所共享,无论这个类创建了多少个实例,一个静态成员在内存中只占有一块区域.//类的非静态成员属......


採用Direct3D實作四叉樹LOD之經驗
採用direct3d實作四叉樹lod之經驗

本文僅談了我自己做過的經驗,或許並非良方,尚祈拋磚引玉.先進明達不吝賜教是幸! 【程序编程相关:Struts 用户指南

本文討論採用direct3d9實作lod地形渲染之問題,其中基於lod中用得最廣泛實現最簡單的四叉樹方法.目前講四叉樹lod的文章很多,但是幾乎皆無一例外基於opengl討論,雖說觀念是主要的,具體實作上,因為d3d比起opengl來很多操作的過程不同.比較廢事.關於lod的完整觀念及實作方法以及跟用常規opengl的做法差不太多的部分(如視錐裁剪),本文未有提及. 【推荐阅读:SingleToN 与 auto_ptr

基於此,比較好的策略是採用固定之vb,裡頭存儲好2d之頂點陣列,後頭的繪製工作由填充ib來完成.為了能夠像opengl那樣隨機添入要繪製之頂點,我為ib做了一個class很簡單,裡頭包括有一個std裡頭的vector物件,這樣隨時只要將必要之頂點添進vector,完成後一次性灌入ib物件即可.其聲名如下: 【扩展信息:Java设计模式之Factory

跟opengl比,用direct3d實作lod地型,比較麻煩之處在於前者可以任意次序任意數目隨時繪製頂點,而d3d只能從固定的vertex buffer中繪出,雖然有提供輔助之index buffer,然而他的使用機能跟vertex buffer類似也必須一次性填充後再繪出(而且灌之前還必須指定好頂點或者index之總數),這對於實作lod這類頂點輸出邏輯性隨機性很高之工作比較不利.

 

class indexbuffervector //用於給indexbuffer不預確定總數可隨時添加之類別

{

protected:

       lpdirect3ddevice9 lpd3ddev; //d3d設備指標

       std::vector<word> indexvector; //用於存儲index的vector

public:

       lpdirect3dindexbuffer9 lpib; //indexbuffer物件

       void init(lpdirect3ddevice9 _lpd3ddev); //初始化

       void addindex(word index); //依順序添加新的index進去

       bool fillbufferwithvector(); //用vector中的頂點來重建並填充indexbuffer

       int getindexnum(); //獲得當前vector中index的總數

       void clearvector(); //清空vector中的index

       void release(); //釋放

};

很簡單但是很實用,任何時候只需要用addindex()將需要的頂點index添入到vector物件中,繪製前只要呼叫fillbufferwithvector()即可.

 


...   下一页
 ·发布 media player for eclipse 0.0.1    »显示摘要«
    摘要:软件主页:http://sourceforge.net/projects/rocexwang/ csdn下载:http://www.csdn.net/cnshare/soft/17/17688.shtm media player是一个用java语言编写的eclipse插件,最新的版本是0.0.1。 现在仅仅可以用来播放声音媒体。 media player主要的功能包括: 1、所支持的音频格式包括:......
» 本期热门文章:

©2000-2007 All Rights Reserved. 最佳浏览:1024X768 MSIE