MaxUnityX 2.0

基于Unity Timeline与URP,为风格独特的饭制提供强大的工具

探索文档
01

开始使用

MaxUnity X2.0完全基于Unity Timeline系统构建,提供了一套完整的交互解决方案。主要架构包括:

  • LineMover - 线的移动
  • GameFramework-GameController - 游戏架构与控制
  • Visualization - 编辑关卡时的可视化处理
  • Customized Timeline Track - 动画等自定义效果的实现

重要提示:禁止将本模板所制作的关卡用于商业用途,或者未经过任何授权地在其他地方使用MUX2.0中的任何代码。MaxUnity拥有对模板代码的所有权,但您仍然可以对其进行修改和个人非商业使用。

本模板在版本更新的同时会提供扩展包(例如对多人游戏的扩展,对特定作者发的关卡统一格式的支持、DLRS GAS系统等)

场景设置

主要场景在MainScene下。若您新建了一个场景,您仍然可以通过MaxUnity/Welcome/Setup一键生成最简单的场景预设。

Welcome窗口未Setup
Welcome窗口未Setup
Welcome窗口已经Setup
Welcome窗口已经Setup
编辑器主题自定义区域
编辑器主题自定义区域

您可以直接按照Welcome Play中的开始按键开始游戏。Music(音乐)是个可选项,您也可以先不选择任何音乐的情况下Setup(配置)。About中提供了一些支持。

02

前言

本模板旨在提供可玩性的前提下为创作者提供优秀的创造体验,提高创作者的效率,使他们有能力制作出精妙绝伦的关卡。

本模板在版本更新的同时同样会提供扩展包(例如对多人游戏的扩展,对特定作者发的关卡统一格式的支持、DLRS GAS系统等)

本模板基于CC BY-NC-SA 4.0协议。有任何问题请反馈至: mux2report@163.com或者QQ群: 903615252

03

主要脚本功能说明

LineMover - 线移动的脚本

控制线移动和转弯的核心脚本。

LineMover界面
LineMover界面
TurnByData设置
TurnByData设置
Controls
控制线转弯的按键,支持多键
Data
此线的转弯数据
Operational
是否由玩家可以控制
TurnByData
是否由Data的数据自动播放(一般不建议用此功能)
Bias
转弯误差
Speed
线移动的速度
FirDir
当前线的朝向
Forward
下一次线的朝向
Tail
线尾部
HasTail
是否有线尾
ClickEffect
点击特效
PathColor
此线的路劲颜色,和Visualaztion的LinePath连用
ShowLabel
是否显示每次点击的时间,和Visualaztion的LinePath连用
Enable Gravity
是否启用重力
Ph Gravity
全局重力
OnGroundCheckRange
检测是否在地面的检测范围
CheckOnGroundOffset
检测是否在地面的位置偏移
OnGround
线线当前是否在地面上

CameraFollower - 相机跟随脚本

您可以选择使用脚本相机动画或者相机帧动画,两者均支持Timeline对其的控制。

CameraFollower基础设置
CameraFollower基础设置
CameraFollower曲线设置
CameraFollower曲线设置
CameraFollower震动设置
CameraFollower震动设置
ShakePos/RotCurve
震动曲线
Duration
震动持续时间
Noise
震动采样贴图
ShakePos/RotIntensity
震动强度
Pos/RotShakeFrequency
震动频率
Target
跟踪的对象
Shower
预览时跟踪的对象(在非Playing模式下的跟踪对象)
Cam
绑定的相机
FollowerType
当前跟踪的模式: 平滑跟踪 | 正常跟踪 | 顶点观察 | 围绕线旋转
offset
跟踪时与线的距离差
Speed
跟踪速度
Rotation Offset
相机的旋转
[Spanning]Lookat Target
时刻看向线线
[Spanning]SpanSpeed
围绕的速度
PosCurve
位置曲线
RotCurve
旋转曲线
PosCurveSpeed
采样位置曲线的速度
RotCurveSpeed
采样旋转曲线的速度
CurveType
一次循环 | 往返循环 | 循环
曲线实现的效果
曲线实现的效果

GameController - 游戏控制中心

游戏的核心控制脚本,负责管理游戏状态和全局设置。

GameController设置
GameController设置
GameController设置2
GameController设置2
GameController设置3
GameController设置3
GameStatus
游戏状态:准备开始游戏 | 开始游戏 | 游戏结束
SceneID/CurrScnenName
当前关卡场景的名字
Percentage
关卡进度百分比
GemMax
钻石最多数量
CrownMax
皇冠最多数量
HotKey
快捷键设置:重新开始游戏按键、开始游戏的快捷键等

Collector - 收集系统

皇冠、钻石和复活点都是继承于Collector但设置不同。

钻石或皇冠的设置
钻石或皇冠的设置
复活点设置
复活点设置
Delay
删除特效的延迟
Effect
收集特效
RevivalPos
复活点的位置,不设置默认为触发器的位置(可见红色Gizmos方块)
ItemType
设置收集物类型(皇冠、钻石、复活点等)
04

主要效果实现

引导线系统

帮助玩家预判路径的引导系统。

引导线窗口
引导线窗口
SortGuideTap
根据位置排列GuideTap
LongLine
是否生成长线引导风格
Prefab
引导线预制体
Gap
每个引导线间的间距

注意:避免在曲折路径上使用SortGuideTap

曲折路径示例1
曲折路径示例
曲折路径示例2
曲折路径示例

可视化工具

提供多种可视化调试工具,帮助开发者更好地设计关卡。

可视化主脚本
可视化主脚本
LinePath设置
LinePath设置
LinePath效果
LinePath效果
游戏内调试设置
游戏内调试设置
调试效果
调试效果
AnimPath设置
AnimPath设置
AnimationTrack设置
AnimationTrack的Inspector窗口
AnimPath效果
AnimPath效果
CameraAttachment设置
CameraAttachment设置

启用后Scene窗口的视角将会和Game视角同步。

提示:首先确保LinePath启用

BreakPoint设置
BreakPoint设置
断点选择界面
断点选择

动态路径展示

在时间轴上动态展示路径轨迹。

LinePathShower设置
LinePathShower设置
添加轨道
添加轨道
动态路径效果
动态路径效果

采音系统

根据音乐节奏生成路径点的工具。

静态铺路设置
静态铺路
录制LineData
录制LineData

注意:每次关闭Unity LineData的内容都会被清空,您可以通过LineDataWindow将LineData存储至txt文件中

打开LineDataWindow
打开LineDataWindow
提取LineData
从一个Lindata提取一部分到另一个LineData
合并LineData
将两个LineData合并到一个LineData
读写LineData
读入读出LineData

注意:此功能还在测试阶段,对性能要求较高,不建议拖入音质较高或过长的音频,后续会进行优化

拖入音频
拖入音频
基础设置
基础设置
采音设置
采音设置
Beat检测
Beat检测
BeatThreshold控制
BeatThreshold控制
循环区间设置
循环区间设置
具体操作
具体操作
采音操作
采音操作
LineData设置
LineData设置

场景与动画控制

通过自定义轨道控制场景元素和动画。

创建自定义轨道
创建自定义轨道
通用轨道设置
通用轨道设置
参数启用
参数启用

提示:只有前方的选项勾选,才会对这一项进行改变。

直接混合示例
直接混合
间接混合示例
间接混合
SubtitleTrack设置
SubtitleTrack设置
添加Subtitle轨道
添加Subtitle轨道
获取字幕信息
获取信息
歌词文件格式
歌词文件格式
CameraTrack设置
CameraTrack设置
Viewport控制
控制相机的Viewport
获取帧信息
获取当前帧信息

对于这些Track,您可以通过按钮直接获取当前帧的信息,方便您加快动画设计。

双线的实现

在游戏中实现多条路径线的切换。

创建Signal Emitter
创建Signal Emitter
创建Signal
创建Signal
选择线线
选择线线
选择方法
选择方法 (16_4.png)

提示:新建线时别忘了在GameController的Lines添加

05

更多

游戏结束与快捷键

  1. 若想要线线碰撞到物体死亡,则需给那个物体添加Obstacle标签(可以用此做空气墙)
  2. 若想结束游戏的话,则需添加EndTrigger或者在Timeline上添加一个Signal Emitter选择GameController的GameOver方法(那个Bool选择为true)
  3. Alt+F可以快速启用Camera Attachment
  4. Shift+G可以快速锁定(选中)GameController
  5. Ctrl+L可以快速锁定(选中)MainLine

致谢与协议

衷心感谢您使用MUX2.0制作饭制。希望您能用此创造出无与伦比的关卡,当然创作的质量与模板关系不大,更重要的是创意和能力,冰焰模板、4125、狗带模板等都是极其优秀的模板并且都能实现与此模板同样的效果,唯一的区别在于个人是否能够充分利用他们,相信通过您的努力,您也能创作出和大佬们一样的关卡,加油把!(o゜▽゜)o☆

本模板基于:CC BY-NC-SA 4.0协议

有任何问题请反馈至:mux2report@163.com 或者QQ群: 903615252

MaxUnityX社区