56编号3D游戏开发步步高系列课程(3):背景和物体导入

上传人:玩*** 文档编号:145994455 上传时间:2020-09-25 格式:PDF 页数:39 大小:572.42KB
返回 下载 相关 举报
56编号3D游戏开发步步高系列课程(3):背景和物体导入_第1页
第1页 / 共39页
56编号3D游戏开发步步高系列课程(3):背景和物体导入_第2页
第2页 / 共39页
56编号3D游戏开发步步高系列课程(3):背景和物体导入_第3页
第3页 / 共39页
56编号3D游戏开发步步高系列课程(3):背景和物体导入_第4页
第4页 / 共39页
56编号3D游戏开发步步高系列课程(3):背景和物体导入_第5页
第5页 / 共39页
点击查看更多>>
资源描述

《56编号3D游戏开发步步高系列课程(3):背景和物体导入》由会员分享,可在线阅读,更多相关《56编号3D游戏开发步步高系列课程(3):背景和物体导入(39页珍藏版)》请在金锄头文库上搜索。

1、3D游戏开发步步高系列课程(游戏开发步步高系列课程(3) 背景和物体导入 ) 背景和物体导入 付仲恺 微软特邀开发专家 我们将涉及到 学习3D游戏 Puc the Pirate 的开发 议题 游戏层级 背景 摄像机 导入3D物体 游戏棋盘(Grid) 添加英雄 英雄的行为控制 基础知识 基本计算机知识 基本软件开发(C#)知识 Level 200Level 200 议题 游戏层级 背景 摄像机 导入3D物体 游戏棋盘(Grid) 添加英雄 英雄的行为控制 什么是层级? 层级是指在同一个游戏阶段中包含其他物体的 对象 层级包含不同的类型 Playable层级 Introductory层级 Men

2、u层级 一个游戏由一个或者多个层级组成 层级之间的关系 继承关系 在基类实现公共方法 抽象类定义公共方法 在派生类实现层级特有方法 有利于提高代码复用 资源分配 逻辑功能 用户交互 添加各个游戏层级 议题 游戏层级 背景 摄像机 导入3D物体 游戏棋盘(Grid) 添加英雄 英雄的行为控制 什么是背景? 背景是“预转换”图片,它在所有其它物体之前 被渲染 位于屏幕中所有其他物体的后面 不会受到摄像机位置的影响 不会影响游戏进行 目的完全用于美化场景 如何绘制背景 必要步骤 创建并且分配顶点缓冲区来保存顶点信息 VertexBuffer对象 顶点缓冲区必须包含4个顶点 使用适当的信息来填充缓冲区

3、 位置,纹理坐标 创建纹理并且加载保存在其中的图片 这样将能够在游戏中看到背景图片 场景渲染必须在设备调用的BeginScene和EndScene之 间完成 添加游戏背景 议题 游戏层级 背景 摄像机 导入3D物体 游戏棋盘(Grid) 添加英雄 英雄的行为控制 什么是摄像机? 摄像机系统决定了玩家如何观看3D物体 在物体被转换到摄像机空间后,生成视图平截锥体 在Counter-Strike中,使用第一人称摄像机 在Tomb Raider中,使用第三人称摄像机 在Puc the Pirate中,使用球形摄像机 Managed DirectX为开发者提供了多种摄像机 类型的封装 FirstPer

4、sonCamera第一人称摄像机 ModelViewerCamera球形摄像机 球形摄像机(1) 球形摄像机总是指向同一个点,或者观看同一个 位置,但是它能够在球面上围绕着物体自由移动 球形摄像机(2) 摄像机距离 玩家使用鼠标滚轮来缩放摄像机 通过增加或者减小摄像机所运动的球体半径, 我们能够改变从摄像机到物体的距离 球形摄像机(3) 摄像机距离 球形摄像机(4) 在2D平面上,如何移动鼠标来在3D的空间中移 动摄像机? 使用球面坐标系 在这个系统中,3D空间中的任何点都可以表示为两个角 度和一个从原点到该点的距离 考虑角度用于表示经线或者水平角度 考虑角度用于表示纬线或者垂直角度 球形摄像

5、机(5) 球面坐标系系统 下面的图片阐明了其数学概念 球形摄像机(6) 通过点击和水平地拖动鼠标的按键,可以相应地 改变角的数值,使得摄像机可以绕着球面的一 侧旋转 球形摄像机(7) 通过点击和垂直地拖动鼠标的按键,可以相应地 改变角的数值,使得摄像机可以绕着球面垂直 地旋转 球形摄像机(8) 为了实现从球面坐标系系统到笛卡尔坐标系系 统的变换,我们可以应用下面的等式: x = t * sin() * sin() y = t * cos() z = t * sin() * cos() DirectX摄像机设置 设置视图参数 SetViewParameters(Vector3 eyePt, Ve

6、ctor3 lookAtPt) eyePt眼睛所在向量 lookAtPt视线所对准的向量 DirectX摄像机设置 设置投影参数 SetProjectionParameters(float fov, float aspect, float near, float far) fov视域角 aspect宽高比 near近裁剪面(Z值) far远裁剪面(Z值) 添加摄像机 议题 游戏层级 背景 摄像机 导入3D物体 游戏棋盘(Grid) 添加英雄 英雄的行为控制 导入3D物体 .X 文件格式 模型封装了导出的.X文件 3D Studio Max Maya 在DirectX中作为mesh保存 对于动画

7、模型 调用AddAnimation 对于静态模型 调用AddLoadMesh Grid 为什么要使用Grid 我们的游戏是基于棋盘的 通过gird上的结点来实现碰撞处理 我们需要结点来用于路径查找 我们可以在grid上放置cookie 必要的操作 构造并且初始化结点 约束移动的逻辑 更多Grid信息 静态物体,继承自GameObject Grid.X模型文件中包含着Grid的模型信息 形状,纹理和材质 导入Grid 英雄 游戏中玩家操作的对象 任务 收集cookie 躲避敌人 在收集到所有的cookie后从逃生门离开 动态动画物体 动态物体,继承自GameObject PlayerAnimat

8、ion.X模型文件中包含着英雄的模型信息 形状,纹理,材质和关键祯 导入英雄 议题 游戏层级 背景 摄像机 导入3D物体 游戏棋盘(Grid) 添加英雄 英雄的行为控制 什么是行为? 行为控制着游戏物体对于任何事件响应应该如 何去动作 行为通常是基于状态的 简单行为一般来讲总是相同 对于游戏物体通常使用回调函数来完成 有时玩家可以制定行为 添加英雄的行为控制 课程总结 游戏层级 背景 摄像机 导入3D物体 游戏棋盘(Grid) 添加英雄 英雄的行为控制 获取更多获取更多MSDN资源资源 MSDN中文网站中文网站 MSDN中文网络广播中文网络广播 MSDN Flash msdn.aspx MSDN开发中心开发中心 Center/default.mspx Question & Answer 如需提出问题,请单击“提问”按钮并在 随后显示的浮动面板中输入问题内容。一 旦完成问题输入后,请单击“提问”按钮。

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 办公文档 > 总结/报告

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号