欢迎来到天天文库
浏览记录
ID:18351177
大小:999.00 KB
页数:65页
时间:2018-09-17
《vb 三维图像 3d 游戏编程 directx 学习笔记》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、VB三维图像3D游戏编程DirectX学习笔记1DirectX简介 DirectX是由微软公司创建的多媒体编程接口,可以轻松的在屏幕上绘制三维图形、播放音乐与声音效果,是在VB中进行三维游戏制作的得力工具。 目前DirectX版本已发展到DirectX9.0。在VB6中可使用的最高版本为DirectX8。在VB6中要使用DirectX,需在工程引用对话框中勾选DirectX8forVisualBasicTypeLibrary,对象浏览器显示的库名为:DxVBLibA。★3D坐标系统 3-D图形应用程序使用两种类型的笛卡尔坐标系统:即左手
2、坐标系统(left-handed)和右手坐标系统(right-handed)。在这两种坐标系统中,x-轴正方向均指向右边,y-轴正方向也都指向上方。z-轴的方向可以用左、右手定则来确定,即握起左(或右)手的四指来代表由x-方向旋转到y-方向,则左(或右)手的拇指就指向z-轴的正方向。如下图: 对三维坐标系统中定义的对象,基本的操作包括:平移(translate),旋转(rotate)和缩放(scale)。也可以将这些基本变换组合起来建立一个变化矩阵。★3D图元 一个3-D图元就是一些顶点的集合,它们组成了一个三维实体。Direct3D中最重
3、要的不是点、不是线,也不是平面,而是三角形。Direct3D用三角形来组成多边形和三维物体。使用了材质之后,这个球体的表面看起来会更平滑。如果再使用Gouraud明暗处理方法,它会更加逼真。★矩阵与变换 Direct3D中使用矩阵(matrices)来定义世界(world),视(view)和投影变换(projectiontransformation)。 矩阵由D3DMATRIX结构来定义,是一个4×4的二维数组。常用的变换包括:平移(translation),旋转(rotation)和缩放(scaling)。使用矩阵的一个最大好处就是可以通
4、过矩阵相乘将几个矩阵变换的效果合并起来★DxVBLibA库中的DirectX根接口有DirectX8和D3DX8两个,DirectX的其他接口和对象都是通过这两个根接口创建的。DirectX8根接口 CreateEvent CreateNewGuid DestroyEvent Direct3DCreate创建一个Direct3D8对象 CheckDeviceFormat CheckDeviceMultiSampleType CheckDeviceType CreateDevice创建Direct3DDevice8
5、即D3D设备,从而控制:纹理、图元、材质、灯光、缓冲区、阴影、渲染 EnumAdapterModes GetAdapterCount GetAdapterDisplayMode GetAdapterIdentifier GetAdapterModeCount GetAdapterMonitor GetDeviceCaps RegisterSoftwareDevice DirectInputCreate DirectMusicComposerCreate DirectMusicLoaderCr
6、eate DirectMusicPerformanceCreate DirectPlayAddressCreate DirectPlayClientCreate DirectPlayLobbiedApplicationCreate DirectPlayLobbyClientCreate DirectPlayPeerCreate DirectPlayServerCreate DirectPlayVoiceClientCreate DirectPlayVoiceServerCreate DirectPlayVoiceTestCr
7、eate DirectSoundCaptureCreate DirectSoundCreate DirectXFileCreate GetDSCaptureEnum GetDSEnum SetEvent D3DX8根接口 AssembleShader AssembleShaderFromFile BoxBoundProbe BufferGetBoneCombo SubBufferGetBoneComboBoneIds BufferGetBoneName BufferGetData BufferGetMaterial
8、 BufferGetTextureName BufferSetData CheckCubeTextureRequirements CheckT
此文档下载收益归作者所有