《OpenGL 3D场景编辑器(一) 商业游戏开发系列》
![]() |
|
| 《OpenGL 3D场景编辑器(一) 商业游戏开发系列》 |
|
1、VS2008创建MFC工程(公共部分) 2、MFC自动生成文件的介绍(公共部分) 3、添加消息与控件(公共部分) 4、编译与调试(公共部分) 5、设置窗口位置与大小(公共部分) 6、3D场景编辑器的功能介绍 7、OpenGL安装与配置 8、初始化openGL(1) 9、opengl初始化(2) 10、主显示界面与模型显示栏 多重画面的实现 剪切盒子的作用 主界面的绘制 模型显示栏的绘制 11、分栏显示 初始化各个分栏的位置与大小 设置各个分栏 在各分栏中绘制三角形 12、添加滚动条 创建滚动条 设置滚动条 13、添加滚动条消息 获取滚动条当前值 处理对滚动条不同的操作情况 设定滚动条当前值 14、接收界面的输入 添加控件并设置控件ID号 如何获取控制焦点 如何检测与判断键盘按键 处理默认退出按键的操作 控件与程序的连接 获取控件的输入内容 15、绘制地形网格 描述地形网格 根据界面输入信息绘制地形网格 16、通过高度图绘制地形高度 高度图的作用 读取高度图 获取并处理高度信息 绘制带有高度的地形网格 17、通过程序产生高度信息 通过程序产生高度信息的原理 产生高度值 过滤顶点之间的高度值 保存高度值 绘制地形网格 18、地形纹理 纹理坐标映射原理 读取纹理 创建纹理 绑定纹理 指定纹理 纹理过滤 设置纹理坐标 绘制带有纹理的地形 19、移动摄像机 描述摄像机 设定摄像机移动的方法 根据键盘的控制移动摄像机 20、显示帧速率 创建字体 显示字符 计算帧速率 显示帧速率 21、平截头体 什么是剔除以及剔除的重要性 什么是平截头体 平截头体的计算原理 平截头体的实现 判断模型是否在平截头体范围内 22、快速绘制大地形 快速剔除可视范围以外的地形 描述顶点与地形网格 分配地形顶点的存储空间 设置地形顶点的位置信息 删除地形顶点存储空间 绘制与重绘大地形 23、转换屏幕的鼠标位置到3D空间 转换屏幕的鼠标位置到3D空间的原理 逆反矩阵的计算公式 代数余子式的计算 伴随矩阵的计算 矩阵行列式的计算 计算点到摄像机的距离 24、通过鼠标调整地形顶点的高低 计算鼠标点击了哪个地形网格 判断鼠标点了网格中哪个顶点 调整当前网格对应顶点的高度 调整受影响网格对应顶点的高度 25、读取与绘制MD2模型 了解MD2模型文件结构 读取MD2模型 绘画MD2模型 读取TGA文件 26、混合与镂空 OpenGL混合的原理 纹理图镂空的原理 对纹理图进行镂空 27、模型的AABB盒 计算模型的AABB盒 以半透明方式绘制模型的AABB盒 28、选中并移动模型 通过鼠标选中模型 让被中的模型跟随鼠标移动 取消选中模型 29、读取多个模型并在模型显示栏中显示 读取多个模型与纹理 在模型显示栏显示模型 分类显示模型 30、插入并绘画对像模型 描述对象 初始化对象 插入对象并设置相关信息 绘画对象所使用的模型 31、选中与移动并删除对象 通过鼠标选择中对象 显示被选中对象的AABB盒 移动被选中的对象 删除被选中的对象 32、旋转或缩放对象模型 通过界面的选择决定进行旋转还是缩放操作 通过界面输入旋转和缩放值 通过键盘来操作对像模型的旋转与缩放 33、对象的排序 对象排序的必要性 排序的原理 排序的实现 排序方法的调用 34、快速剔除对象(1) 快速剔除对象的原理 插入对象到地形网格 查找地形网格中的对象 绘制查找到的所有对象 35、快速剔除对象(2)——移动对象 计算对象移动前所在的地形网格 查找被移动对象的信息 删除被移动的对象的信息 根据对象的新位置重新插入信息 36、快速剔除对象(3)——更新地形网格中对象的信息 对象排序时更新地形网格中对象的信息 计算将要被删除的对象所在的地形网格 删除对象在地形网格中的信息 37、保存与读取场景信息 保存对象信息 读取对象信息 保存地形信息 读取地形信息 删除原有的地形与对象 创建地形 重置摄像机位置与观察点 |
