OpenGL系统设计-高级3D模型接口之MD2模型(3)
Normal 0 7.8 磅 0 2 false false false MicrosoftInternetExplorer4 <!-- /* Font ...
2009-12-26 19:42
阅读(867)
OpenGL系统设计-高级3D模型接口之MD2模型(2)
Normal 0 7.8 磅 0 2 false false false MicrosoftInternetExplorer4 <!-- /* Font D...
2009-12-26 19:38
阅读(1394)
OpenGL系统设计-高级3D模型接口之MD2模型(1)
Normal 0 7.8 磅 0 2 false false false MicrosoftInternetExplorer4 <!-- /* Font ...
2009-12-26 19:36
阅读(1044)
OpenGL系统设计-高级3D模型接口之OBJ模型(1)
Normal 0 7.8 磅 0 2 false false false MicrosoftInternetExplorer4 <!-- /* Font ...
2009-12-26 19:28
阅读(1599)
OpenGL系统设计-融合DirectXAudio(2)
Normal 0 7.8 磅 0 2 false false false MicrosoftInternetExplorer4 <!-- /* Font ...
2009-12-26 19:26
阅读(401)
OpenGL系统设计-融合DirectXAudio
Normal 0 7.8 磅 0 2 false false false MicrosoftInternetExplorer4 <!-- /* Font ...
2009-12-26 19:20
阅读(513)
OpenGL系统设计-DirectInput(3)
作为标准的输入设备,鼠标在应用程序中也不可或缺。进入Windows时代后,有些工作没有鼠标基本上就无法完成。在游戏中也可以看到不少人左手键盘,右手鼠标,共同冲锋陷阵。DirectInput对鼠标的支持和对键盘的支持相同,使用鼠标的过程也和使用键盘的过程一样。首先是初始化DirectInput,需要对DXInit进行修改。 #include LPDIRECTINPUT8 ...
2009-12-09 20:06
阅读(466)
OpenGL系统设计-DirectInput(2)
我们把对DirectInput进行初始化的过程放在DXInit函数中。 #include //DirectInput头文件LPDIRECTINPUT8 g_DI; //DirectInput对象指针LPDIRECTINPUTDEVICE8 g_KDIDev; //DirectInput设备对象指针 int DXIni...
2009-12-09 20:02
阅读(771)
OpenGL系统设计-DirectInput(1)
首先我们使用DirectInput来改善我们的输入处理。由于本文的重点不在于DirectX,这里只对涉及到的DirectX部分作简单介绍,达到能够使用目的地,如果要详细了解DirectX的细节,可以参考相关的DirectX书籍。为了能够使DirectX融入我们的应用程序中,必须有DirectX SDK,可以在微软公司的网站下载,我们使用的是8.0的版本。为了能够使程序链接成功,还需要在工程...
2009-12-09 19:59
阅读(534)
OpenGL系统设计-和DirectX融合
作为最大的两个3D图形API,OpenGL和DirectX一直没有停止过竞争。微软退出OpenGLARB,全力发展自己的DirectX就是一个明证。这种竞争也导致了技术的发展,至少对开发人员来说是一件好事。DirectX本身并不完全是一个3D API,Direct3D才是。DirectX应该说是一个应用的完整解决方案,它包括DirectDraw、Direct3D、DirectSound、Dir...
2009-12-09 19:51
阅读(642)
OpenGL系统设计-粒子系统(4)
int glInit(GLvoid){ //创建粒子系统使用的纹理 ParticleTexture[0] = CreateTexture("particle.bmp"); if(!ParticleTexture[0]) //创建失败则返回 { return FALSE; } glShadeModel(GL...
2009-12-09 19:48
阅读(775)
OpenGL系统设计-粒子系统(3)
上面我们完成了一个粒子类的创建,从粒子类中可以看到,每一个粒子是处在一个粒子系统中的,所有粒子的行为都受到粒子系统的影响。下面再来看粒子系统类的构造。 //粒子系统类的定义class CParticleSystem{private: bool mAttracting; // 粒子系统是否对粒子产生引力 bool mStopped; ...
2009-12-09 19:46
阅读(788)
OpenGL系统设计-粒子系统(2)
接下来再看粒子的创建 GLvoid CParticle:: Create(CParticleSystem* parent, float TimeCounter){ VECTOR3D TempVelocity; float RandomYaw; //随机的增长 float RandomPitch; flo...
2009-12-09 19:43
阅读(816)
OpenGL系统设计-全屏模式(2)
明白了显示模式的设置方法后,实现OpenGL的全屏模式就不难了。下面我们来看一个全屏的应用,由于全屏的程序框架有了较多的改变,我们将主要代码列出来加以说明。其中InitInstance是全屏实现的关键。 /* 创建OpenGL窗口* width - 窗口宽度* height - 窗口高度* bits ...
2009-12-01 20:42
阅读(2381)
OpenGL系统设计-全屏模式(1)
当你在运行一个程序时,总是希望可见的范围越大越好,不要有其他不需要的信息显示在屏幕上,这就涉及到了全屏。全屏总是一个激动人心的话题。在全屏状态下,我们可以对独占计算机系统资源,提高程序的运行效率。和窗口模式有区别的是,在设置全屏时还必须注意一些事项。首先,改变显示模式的函数是ChangeDisplaySettings,它是一个标准的Win32函数,其原型如下 LONG Change...
2009-12-01 20:37
阅读(1446)
OpenGL 扩展 SDK
Copyright (C) 2006 Thomas Jansen (
[email protected]) glext.hOglExt.hOglExtd.dllOglExtd.lib 下载地址 http://www.ziddu.com/download/7509700/OglextSDK.rar.html ...
2009-11-26 17:03
阅读(668)
OpenGL SDK
OpenGL SDK for WindowsSDK包括.h文件, .lib文件OPENGL32.LIBGLAUX.LIBGLU32.LIBGLU.Hgl.hGLAUX.H 下载地址http://www.ziddu.com/download/7504848/OpenGLSDK.rar.html ...
2009-11-26 11:14
阅读(773)
OpenGL系统设计-扩展建模(5)
1.1 NURBS非均匀有理样条NURBS(Non-Uniform Rational B-Splines)是近年来发展迅速,应用广泛的一种表示曲线曲面造型技术。它能够精确地表示二次规则曲线曲面,从而能用统一的数学形式表示规则曲面与自由曲面,具有可影响曲线曲面形状的权因子,使形状更宜于控制和实现。1991年国际标准化组织颁布了关于工业产品数据交换的STEP国际标准,将NURB...
2009-11-23 21:22
阅读(940)
OpenGL系统设计-扩展建模(6)
和曲线类似,曲面也可以通过控制点来模拟。实际上在很多场合也使用多边形来模拟平滑曲面,但使用控制点需要的计算机系统资源开销相对要少很多。同时,控制点个数越多,就越能够逼近真实的曲面,所以选择好的算法和适当的控制点个数相当重要。OpenGL实现曲面的方法和曲线类似,它使用二维的glMap2和glEvalCoord2来代替glMap1和glEvalCoord1。同样,glMap2是设置二维曲面...
2009-11-19 22:34
阅读(676)
OpenGL系统设计-扩展建模(5)
相对于直线的生成,曲线的生成要难一些。对于参数曲线,通常是根据其切向量、法向量、弧长、曲率等使用插值、拟合来逼近曲线。当拟合后的若干小线段和曲线本身之间的误差很小以至于人眼看不出来时,我们就认为拟合的曲线就是我们需要的结果。对于非参数曲线,则通过控制点,应用不同的规则来拟合曲线,例如Hermit曲线,Bezier曲线等。OpenGL中定义曲线的函数是glMap1,其原型如下 vo...