网站大量收购独家精品文档,联系QQ:2885784924

SYJ教你制作3D游戏14—18.docVIP

  1. 1、本文档共13页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
SYJ教你制作3D游戏14—18

《SYJ教你制作3D游戏》——第二阶段基础教程第十四节:引用的3D场景和摄像机控制 ? 本文由SYJ原创,转载请注明作者 ? 认识了在脚本引擎中插入基本2D元素的方法之后,我们继续进一步学习引用3D元素并作简单的交互。 ? 首先,我们先来制作一个简单的游戏场景。 ? 打开Med模型编辑器,分别制作好一个箱子、一张椅子、一张桌子,再加上一个小球,并把它们保存到game2文件夹下,分别命名为box.mdl,chair.mdl和desk.mdl以及ball.mdl。可别忘了上材质。 ? 打开Wed关卡编辑器,点“新建”,新建一个关卡。我们发现它和Med模型编辑器很相似,同样有三个2D视图和一个3D视图,它们的布局和Med基本上是一样的。我们在任意视图中点鼠标右键,点“添加立方体”“大”,这时,视图中出现了一个立方体,我们用“移动”工具把立方体移动到坐标中央,并用“缩放”工具将立方体压扁。操作方法和Med基本上是一样的。这样,我们便做好了一个简单的地形,我们在Wed窗口的左侧点一下“纹理”,展开“default.wad”,这是一个自带的默认纹理贴图,我们选中视图中的立方体模型,右击default.wad子目录下的纹理,点“应用纹理”。 ? 也把它保存到game2文件夹中,命名为scene.wmp 现在,我们当然应该把我们事先制作好的箱子、椅子和桌子添加到Wed关卡编辑器的场景中。在这里,我们有两种添加方式。 ? 一种是,点“文件”,“导入”,“导入从MDL7文件”,并选择所要导入的模型。 ? 另一种是,点“对象”,“添加模型”并展开关卡所在根路径的各子项,插入所需要的模型。 ? 这里,我们选择第二种方式,至于原因,我们以后会提及到。将box.mdl,chair.mdl和desk.mdl分别导入关卡场景中,并适当调整位置。做好后如下图: 在在这里我多插入了几个box.mdl,由于时间问题,做得还是比较粗糙的。 ? 我们仔细观察,在工具栏有两个按钮“建造”,“运行”,在这里,运行这一概念和Sed脚本编辑器里的测试运行基本上是一样的,因为Wed关卡编辑器同样可以引用脚本,具体做法我们以后再研究。 ? 我们点一下“运行”,这时出现文件未找到等字样,并最后发现预览窗口里什么也没有。这是因为我们尚未更新以及渲染Wed关卡编辑器里的模型。所谓更新以及渲染,也就是说,假如我们给模型加入了特效,如灯光、投影、甚至Shader特效,那么该模型肯定是不能即时渲染运行的,因为渲染计算量太大了,所以我们要提前渲染建造模型。 ? 现在,点“建造”,点中“建造BSP地图”,在“光照计算”这里大家可以自己详细设置。点“确定”,等待地图编译完成后,点“完毕”,再点“运行”,“确定”。 ? OK,大家现在可以看到在预览窗口中出现了我们的模型,可以按方向键自由移动以及按住鼠标右键不放旋转镜头。 ? 如果在预览窗口中未看到任何东西,那么我们可以在视图中点鼠标右键,“添加”、“添加摄像机”,这一步我们必须得做。再将视图中的摄像机放在整个模型的中央,镜头对准我们的模型,并移动至合适的地方,切勿移动到模型里面。为了使我们的场景更好看,我们添加一个光源,操作方法和摄像机的添加基本上是一样的。大家选中光源后,可以在窗口左下方设定光源的一些具体属性,这里就不详细说明了。再选中各个模型,在窗口左下方属性面板中打勾“阴影”和“投射”。最后建造关卡,运行,这样看起来就棒多了。 ? 不知道大家有没有注意到,当我们建造关卡了之后,在game2文件夹下会生成一个wmb格式的文件,实质上,它只是一个经过渲染处理后的模型。而运行关卡实际上就是结合脚本(如果有)并调用scene.wmb ? 现在保存,关闭Wed关卡编辑器,打开game2路径下的main脚本文件。 ? 我们在主函数中添加这一句代码: ? level_load(scene.wmb); ? 这句代码的意思是,加载game2根路径下的scene.wmb格式关卡文件并引用到引擎中。 ? 我们测试运行一下,如果你的机器性能较弱的话,预览框可能会黑屏一段时间等待载入。我们看到,预览窗口中呈现出了经过渲染处理、并且有投影特效的关卡模型。 ? 我现在有一个想法,当脚本运行时,我们移动鼠标可以控制镜头,即摄像机旋转,我们该怎么做呢? ? 我们在主循环中添加下面一段代码: ? camera.pan -= 0.5 * mouse_force.x; camera.tilt += 0.25 * mouse_force.y; ? 要读懂这段代码,首先我们来认识几个概念:pan,tilt和roll,pan指的是物体绕竖坐标,即Z轴转动的欧拉角度,tilt指的是物体绕Y轴纵坐标旋转,roll不用说,当然表示物体绕横坐标X轴旋转。 ? 如果你认真学过高中的数学,相信我

文档评论(0)

jdy261842 + 关注
实名认证
文档贡献者

分享好文档!

1亿VIP精品文档

相关文档