一.前言
最近再做一个VR项目,里面有大量的剧情和VR操作任务。
比如:
1.张三说了什么话,干了什么事,然后,李四又说了什么,做了什么动画,完了之后,场景中某个物体高亮,让我们触摸或者射线点击(pc的话鼠标点击)和其发生交互。
2.我们使用VR手柄或者鼠标与场景中的一个物体或者仪器,进行频繁的交互。
3.VR场景中出现一些选择性的操作,不同操作进入不同的剧情分支。比如UI选择是|否,物体选择A|B等,当你选了是或者触摸了A,就会进入A分支剧情。相反如果选择了B就会进入B分支。
4.剧情推动到中间,有一些操作如果做错了,可以支持回滚操作,重新进行选择。
5.开始任务,可以选择不同的模式,比如教学模式,练习模式,考核模式等
基于这样一个需求,我开发了一个任务系统或者说剧情系统吧TaskFramework,让我们可以基于数据驱动去完成这个剧情,说的直白一些就是我们配置一下数据,这个项目就跑起来了。文章来源:https://www.toymoban.com/news/detail-441077.html
二.框架结构
下面简单说一下TaskFramwork(下面简称TF)的基本结构。
首先来说一下TF的核心控制类,TaskManager,就是我们的整个任务系统的总控制,我又将他拆分了一个Model出来,方便控制数据的读取,其实核心代码就是一个对TaskData的List进行按步骤执行的过程。每一步Task中可能包含1到多个目标Goal,Goal就是实际执行的操作,比如激活物体,播放动画动,Goal的指令是通过命令模式来驱动的,文章来源地址https://www.toymoban.com/news/detail-441077.html
到了这里,关于Unity之如何实现一个VR任务(剧情)系统的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!