基于Unity3D的关卡触发器系统的设计与实现
发布时间:2017-07-02 15:20
本文关键词:基于Unity3D的关卡触发器系统的设计与实现,由笔耕文化传播整理发布。
【摘要】:在游戏开发过程中,关卡设计是一个非常重要的部分,而与关卡设计密切相关的就是关卡触发器系统,使用关卡触发器系统在游戏中可以触发各种各样的响应事件,增强游戏的可玩性和趣味性,同时随着游戏内容和功能的不断增加,游戏的交互越来越多,游戏中会出现大量需要处理的响应事件。根据关卡设计师对系统的易用性和可扩展性需求,本文设计并实现了一个可扩展的关卡触发器系统。本系统是基于Unity游戏引擎进行开发的,在Unity中游戏开发者使用了实体组件系统的方式来进行开发,大大降低了各个功能模块之间的耦合,此外为了集中化处理关卡中的事件,降低事件与对象之间的耦合关系,本文基于观察者模式、委托设计了一个具有优先级的事件管理器,可以灵活的处理游戏中的各种事件。结合通用触发器的设计思想,本文将关卡触发器系统分为触发器模块、触发条件模块、响应事件模块来进行设计和实现,触发器模块本文设计了两种不同的触发器类型来满足关卡设计的需求,利用Unity物理系统的碰撞检测组件来进行触发检测,触发条件模块本文主要是根据关卡设计师的需求来进行设计,使用了布尔逻辑来进行组合以提高系统的可扩展性,响应事件模块本文定义了各种各样的响应事件类型,并与游戏中其他的子系统进行衔接。本系统可以使用事件管理器来触发响应事件,这大大扩展了本系统的使用范围。本系统满足了关卡设计师在关卡设计方面的大部分需求,同时开发人员可以通过增加响应事件、定义其他触发条件来进行扩展这一系统,使得游戏设计更加便捷,也便于后期的维护。但这一系统也存在不足之处,就是扩展性不够好,触发条件都是写死在代码里,另外本系统对非开发人员不够友好,考虑做成可视化系统进行关卡设计。
【关键词】:Unity C# 观察者模式 委托 事件管理器 触发器系统
【学位授予单位】:南京大学
【学位级别】:硕士
【学位授予年份】:2016
【分类号】:TP317
【目录】:
- 摘要5-6
- Abstract6-12
- 第一章 引言12-16
- 1.1 项目背景与意义12-13
- 1.2 基于事件驱动的关卡触发器技术的发展概况13-14
- 1.3 本文主要研究的工作14-15
- 1.4 本文的组织结构15-16
- 第二章 技术综述16-23
- 2.1 Unity游戏引擎介绍16-18
- 2.2 实体-组件-系统(ECS)概述18-20
- 2.3 C#中的代理(Delegate )20-21
- 2.4 观察者模式(Observer Pattern)概述21-22
- 2.5 本章小结22-23
- 第三章 可扩展的关卡触发器系统总体设计23-47
- 3.1 系统总体规划23-24
- 3.2 系统需求分析24-28
- 3.2.1 系统功能性需求24-27
- 3.2.2 系统非功能性需求27-28
- 3.3 系统总体设计28-31
- 3.3.1 总体结构28-29
- 3.3.2 系统模块图29-30
- 3.3.3 系统流程图30-31
- 3.4 系统模块设计31-46
- 3.4.1 Unity的脚本物件模型31-33
- 3.4.2 资源实例化方式33-34
- 3.4.3 触发器模块设计34-37
- 3.4.4 触发条件模块设计37-38
- 3.4.5 使用布尔逻辑组合条件38-40
- 3.4.6 响应事件模块设计40-44
- 3.4.7 事件管理器44-45
- 3.4.8 一次性触发与载入次数45-46
- 3.5 总体设计的局限性46
- 3.6 本章小结46-47
- 第四章 关卡触发器系统的功能实现47-75
- 4.1 触发器模块的功能实现47-53
- 4.1.1 模块概述47-48
- 4.1.2 触发器模块的代码实现48-53
- 4.2 触发条件模块的功能实现53-57
- 4.2.1 模块概述53-54
- 4.2.2 触发条件模块的代码实现54-57
- 4.3 响应事件模块的功能实现57-64
- 4.3.1 模块概述57-58
- 4.3.2 响应事件模块的代码实现58-64
- 4.4 事件管理器的功能实现64-66
- 4.4.1 事件管理器概述64-65
- 4.4.2 事件管理器的代码实现65-66
- 4.5 关卡触发器系统的具体应用66-74
- 4.5.1 功能需求概述66-68
- 4.5.2 召唤伙伴开启元素门的具体实现68-74
- 4.6 本章小结74-75
- 第五章 总结与展望75-76
- 5.1 总结75
- 5.2 进一步工作展望75-76
- 参考文献76-78
- 致谢78-80
【参考文献】
中国期刊全文数据库 前6条
1 于潇翔;彭月橙;黄心渊;;基于Unity3D的道具系统研究与开发[J];成都理工大学学报(自然科学版);2014年04期
2 胡修远;;计算机游戏中的人工智能探析[J];宁波教育学院学报;2013年06期
3 范振钧;巩小东;王增强;;委托与事件在观察者模式中的应用[J];通化师范学院学报;2013年04期
4 吴清寿;;基于事件机制的观察者模式及应用[J];重庆理工大学学报(自然科学);2012年09期
5 喻金平;刘孝会;;C~#中的委托在Observer设计模式中的应用研究[J];软件导刊;2010年11期
6 黄勇;;游戏中的状态机[J];程序员;2008年12期
本文关键词:基于Unity3D的关卡触发器系统的设计与实现,由笔耕文化传播整理发布。
,本文编号:510471
本文链接:https://www.wllwen.com/kejilunwen/ruanjiangongchenglunwen/510471.html