以前我学习VC++编程的时候,一直想编出一个显示三维地形的程序,结果因为水平太低,一直实现的功能不是很好。但书上只能学到编程的语法、规则,但如何编出一个好程序,则需要更多。学习好的源码,则让你进步很快。
费话不多讲了,直接看实现的图。
从这个源码中,可以学习C++的类的设计、继承的使用,这是我见过的最好的程序之一。
也是三维程序的一个很好示例。
想学的同学可以互想交流。
下面是源码的下载地址。
链接:https://pan.baidu.com/s/1bsn7RZ2iWoLQ1Xcw6laH-g
程序的说明:图形的基类是:CObject3d 派生出下面的图形类
边 class CEdge3d : public CObject3d
面 class CFace3d : public CObject3d
图形的集合类是用数组
template<class T>
class CArray3d
{}
class CSceneGraph3d
{
private :
// Datas
CArray3d<CObject3d> m_ArrayObject3d; //图形类的集合
CArray3d<CTexture> m_ArrayTexture;//
CArray3d<CMaterial> m_ArrayMaterial; //材料类的集合
GLuint *m_pIndexTextureBinding;
unsigned int m_ListDone;
下面是源码的下载地址。
网友评论