資源簡介
地形渲染的動態LOD四叉樹算法,讀者應該熟悉遞歸程序設計,以及基本的VC OpenGL編程.

代碼片段和文件信息
/*
???模塊名稱:
???????BillBoard.cpp
???目的:?
??????提供對BillBoard的支持;
???作者:
????????潘李亮?HeartBlue
???????XpertSoft?HeartBlue?2002/9/29
???Allright?reserved
?How?to?use?this?Moduale?
?1)為BillBoard指定一個攝影機,和BillBoard的繪制回調函數
?2)為BillBoard的繪制回調函數
?3)用bbCreate函數創建一個BillBoard,該函數可以自動指定BillBoard的方向
?4)指定該BillBoard在場景中的位置
?5)在畫BillBoard前調用bbBeginDraw函數
?6)繪制BillBoard
?????????潘李亮?2002/9/29
?版本?2
???代碼已經被轉化成?C++的格式
???所有的BillBoard由BillBoard?Manager管理
????????潘李亮?2003/4/21
*/
#include?“CommGLHeader.h“
void?C2DBillBoard::DefDraw()
{
glBegin(GL_QUADS);
????glTexCoord2f(00); glVertex3f(-m_width/200);
glTexCoord2f(10);??glVertex3f(m_width/200);
glTexCoord2f(11);??glVertex3f(m_width/20m_height);
glTexCoord2f(01);??glVertex3f(-m_width/20m_height);
glEnd();
}
C2DBillBoard::C2DBillBoard(BILLBOARDDRAW?pfun)
{
//設置BillBord的繪制函數
m_pfnDraw?=pfun;
}
void?C2DBillBoard::Draw(float?thetaMVECTOR?vUp)
{
//保存一個由?攝影機方向和Billboard方向的叉積
????glMatrixMode(GL_MODELVIEW);
glPushMatrix();
//旋轉攝影機,使它對準?公告板的方向
glTranslatef(m_xm_ym_z);
glRotated(thetavUp.xvUp.yvUp.z);
????if(m_pfnDraw)?
???m_pfnDraw(1);
else
???DefDraw();
????glPopMatrix();
}
void?C2DBillBoard::SetDraw(BILLBOARDDRAW?pfun)
{
m_pfnDraw?=?pfun;?
}
?屬性????????????大小?????日期????時間???名稱
-----------?---------??----------?-----??----
?????文件?????219136??2007-12-03?16:25??大規模地形渲染(LOD算法)\LoD算法(四叉樹).doc
?????文件??????90291??2005-03-19?16:00??大規模地形渲染(LOD算法)\SimNatuer?程序設計架構.pdf
?????文件?????????59??2003-12-18?22:24??大規模地形渲染(LOD算法)\Ver-3.2?Release\Bugs修正.txt
?????文件???????1488??2007-12-30?19:08??大規模地形渲染(LOD算法)\Ver-3.2?Release\Console.log.html
?????文件???????4072??2003-11-30?12:55??大規模地形渲染(LOD算法)\Ver-3.2?Release\data\flare\cross.jpg
?????文件???????4786??2003-11-30?12:55??大規模地形渲染(LOD算法)\Ver-3.2?Release\data\flare\main1.jpg
?????文件???????6158??2003-11-30?12:55??大規模地形渲染(LOD算法)\Ver-3.2?Release\data\flare\main2.jpg
?????文件???????4217??2003-11-30?12:55??大規模地形渲染(LOD算法)\Ver-3.2?Release\data\flare\ring.jpg
?????文件???????3582??2003-11-30?12:55??大規模地形渲染(LOD算法)\Ver-3.2?Release\data\flare\second1.jpg
?????文件???????4977??2003-11-30?12:55??大規模地形渲染(LOD算法)\Ver-3.2?Release\data\flare\second2.jpg
????..A.SH.?????16896??2007-12-02?16:20??大規模地形渲染(LOD算法)\Ver-3.2?Release\data\flare\Thumbs.db
?????文件??????19558??2003-11-30?12:55??大規模地形渲染(LOD算法)\Ver-3.2?Release\data\map\detail1.jpg
?????文件???????9221??2003-11-30?12:55??大規模地形渲染(LOD算法)\Ver-3.2?Release\data\map\detail2.jpg
?????文件??????21262??2003-11-30?12:55??大規模地形渲染(LOD算法)\Ver-3.2?Release\data\map\Detail3.jpg
?????文件??????11710??2003-11-30?12:55??大規模地形渲染(LOD算法)\Ver-3.2?Release\data\map\Detail4.jpg
?????文件???????1031??2003-11-30?12:55??大規模地形渲染(LOD算法)\Ver-3.2?Release\data\map\map1024-1.ini
?????文件???????1020??2003-11-30?12:55??大規模地形渲染(LOD算法)\Ver-3.2?Release\data\map\Map1024.ini
?????文件????1115148??2003-11-30?12:55??大規模地形渲染(LOD算法)\Ver-3.2?Release\data\map\map1024.map
?????文件????????900??2003-11-30?12:55??大規模地形渲染(LOD算法)\Ver-3.2?Release\data\map\Map2048-4.ini
?????文件???????1023??2003-11-30?12:55??大規模地形渲染(LOD算法)\Ver-3.2?Release\data\map\Map2048.ini
?????文件???????1003??2003-11-30?12:55??大規模地形渲染(LOD算法)\Ver-3.2?Release\data\map\Map4096.ini
?????文件????????954??2003-11-30?12:55??大規模地形渲染(LOD算法)\Ver-3.2?Release\data\map\Map512.ini
?????文件??????86092??2003-11-30?12:55??大規模地形渲染(LOD算法)\Ver-3.2?Release\data\map\spetex.jpg
?????文件?????119849??2003-11-30?12:55??大規模地形渲染(LOD算法)\Ver-3.2?Release\data\map\tex.jpg
?????文件??????18007??2003-11-30?12:55??大規模地形渲染(LOD算法)\Ver-3.2?Release\data\Skybox\Back.JPG
?????文件??????11703??2003-11-30?12:55??大規模地形渲染(LOD算法)\Ver-3.2?Release\data\Skybox\Bottom.JPG
?????文件??????22166??2003-11-30?12:55??大規模地形渲染(LOD算法)\Ver-3.2?Release\data\Skybox\Front.JPG
?????文件??????20274??2003-11-30?12:55??大規模地形渲染(LOD算法)\Ver-3.2?Release\data\Skybox\Left.JPG
?????文件??????32372??2003-11-30?12:55??大規模地形渲染(LOD算法)\Ver-3.2?Release\data\Skybox\Right.JPG
????..A.SH.?????20480??2007-12-02?16:23??大規模地形渲染(LOD算法)\Ver-3.2?Release\data\Skybox\Thumbs.db
............此處省略122個文件信息
評論
共有 條評論