基于Unity3d引擎角色扮演类游戏开发+源代码(4)_毕业论文

毕业论文移动版

毕业论文 > 计算机论文 >

基于Unity3d引擎角色扮演类游戏开发+源代码(4)

在Unity3d开发中,游戏对象(GameObject)是用来作为“组件”的容器,每创建一个游戏对象,就对应一个GameObject。对这个游戏对象添加功能,例如渲染、材质、光照和位置等等,都通过给对应的GameObject添加渲染组件、材质组件、光照组件和位置组件等等来实现。编辑的游戏脚本同样也是“组件”,用来在GameObject中通过控制其他组件的内容来自定义对象的功能。虽然这些组件在物理逻辑上是并列的,但是他们之间还是存在一定的层次关系,一般会被分为以下三个层次[4]:

1。引擎的基础组件

Unity3d引擎自身集成的各种内部常见功能组件。比如渲染组件、位置组件和材质组件等等。这些组件包含了大多数引擎常见的基础功能,这些都可以在游戏脚本中调用编辑使用来组合成自定义的功能。

2。模块功能脚本组件

通过游戏脚本实现的一些相对独立的功能组件,这些组件的设计都是脚本是否可以多次使用的关键,这就需要用户仔细的分析游戏对象中哪些功能可以从GameObject中拿出去组合成一个新的组件,一个可以重复使用的功能组件,同时在功能的实现上能够避免与其他组件的功能出现重叠。比如在设计一个敌人模型对象时,需要为他设计战斗组件功能,战斗组件功能其实就是通过对敌人模型对象的其他组件的部分值和部分组件的激活状态来控制敌人当前的状态。这个功能相对的独立,与其将他放在这一个敌人模型中,不如把它拿出来,编辑成一个可以重复使用的个功能组件,这样以后创建下一个敌人模型时可以直接拿过来使用,大大的节省了开发的时间和简化了开发的复杂度。

3。高层的代码脚本[5]论文网

这些脚本可以用来将Unity3d中的组件模块和GameObject组合到一起,来实现游戏中的一些逻辑判断和物体对象的大规模控制。比如设计一个战斗脚本,模块功能的基本组件定义包括敌人模型的参数、函数和一些基本功能,而高层的代码脚本则可以用来编辑人物和敌人的战斗逻辑和伤害判定等。这些脚本表示的是详细的游戏规则定义和逻辑控制,所以几乎不可以重复使用。

1。3。3  Unity3d引擎特性

1、综合编辑

通过Unity的用户界面,用户可以完成许多工作。这些为用户节省了大量的时间。在编程过程中,可以整体对每个界面进行独立编辑,节约了打开每个界面的时间,并且程序可以在界面享,节约了大量的重复编辑的时间,提高了整体的效率。

2、资源导入

Unity支持很多主要文件格式,并能和大部分应用程序协同工作。本游戏中使用到的所有JPEG格式的图片可以尽数导入Unity3D中进行编辑转换成Unity需要的文件格式,对于游戏的整体实现十分有利。

3、一键部署

Unity可以让作品在多平台上呈现。利用File选项中的Build Setting,可以选择将游戏发布到什么平台上,可供选择的方案十分齐全,完成的作品可以发布到Windows、Android、iOS平台等。   

4、脚本

Unity支持3种脚本语言:JavaScript、C#和Boo。本次游戏主要使用到了C#语言,同时C#也是Unity3D使用最广泛的语言。

5、Unity资源服务器

Unity资源服务器是一个附加的包括版本控制的产品。 使得对于场景的切换更加快捷。

6、帮助文档

Unity为用户提供指导、文档和实例方案。在编辑遇到问题时,可以对所需知识寻求帮助,包括很多函数的使用方法和参数类型个数等。因为本身对于Unity3D这款软件的认识有限,所以当有指导、文档和实例方案作为参考之后,对于编程有了不少的帮助。[6] (责任编辑:qin)