一个基于二维与三维间视错觉的解谜游戏。
上图是一个涂有三种颜色的二维图形,人眼可以将其识别为一个三维图形。这种视错觉是我们游戏的核心。
按A键让整个图形逆时针旋转60度后可得到上图,此时人眼会认为图形是一个不同的三维图形。在这个情况下,按S键可以使小红点沿着重力方向下落到下图的位置。
此时,按X键使地图褪色,人眼将不再受到视错觉的影响,可以看到真实的二维图形。
图中标黄的小六边形表示可以通过鼠标点击将其转化至下图的另一种状态。
此时再按X键,图形会恢复颜色。游戏的目标就是通过旋转时和二维与三维切换时的视错觉,在小红点的下落次数与改变小六边形状态次数最少的情况下,使小红点到达目标的橙色位置。
上面的内容是游戏的基本功能,也是我们已经实现的功能。下面是我们尚未实现的功能。
为了增加游戏的趣味性与难度,我们后续还打算添加下面这些特殊元素:
-
小红点会拥有一个分身,分身一开始和小红点的位置重合,但分身的重力方向与小红点相反。在游戏中,小红点不能与分身重合,且小红点与分身需要同时到达两个不同的目标位置。
-
地图中会有一些固定的或会与小红点一起随重力下落的死亡点,小红点或其分身碰到这些点会死亡。
-
地图中会有一些传送门,小红点或其分身进入传送门后会被传送到另一个传送门。
-
地图中会有一些奖励点,小红点或其分身碰到这些点后会获得额外的下落次数或改变小六边形状态的次数。
-
地图中会出现奇迹宝珠,奇迹宝珠打开时会更改地图中一部分地区的重力(如将重力方向旋转60度)。重力方向的改变会同时影响小红点和其分身。
此外,目前我们只完成了教学关卡以及前两关(后续的关卡暂时不可进入),后续我们还会添加更多的关卡,以及游戏界面、剧情、美工等元素。
提交的文件夹中,doc文件夹中包含了我们最初的设计文档(和现在有所区别),以及分工表;src文件夹中包含了我们的所有代码、资源、场景等文件;bin文件夹中包含了我们的可执行文件。
本项目采用Windows平台下的Unity引擎进行开发,使用C#语言编写代码。Windows版本为Windows 11 24H2,Unity版本为2022.3.53f1。构建步骤如下:
- 下载Unity Hub,安装Unity 2022.3.53f1。
- 使用Unity Hub打开src文件夹,等待Unity自动导入资源。
- 点击菜单栏的“File” -> “Build Settings”,选择目标平台为Windows,点击“Build”即可构建可执行文件。
当然,也可以直接运行我们已经构建好的可执行文件,双击bin文件夹中的“My project.exe”即可运行游戏。
另外,我们的项目已经在Github上开源,地址为:[https://github.com/sqzr2319/Tuozhu-Software]
游戏的操作说明如下:
- 在任何界面下,按下ExitButton即可直接退出游戏。
- 在任何关卡内(包括教学关卡与已经完成开发的前两关),按下A键与D键可以顺时针或逆时针旋转整个图形60度,按下S键可以使小红点沿着重力方向下落。
- 在第二关内,按下X键可以使地图褪色/恢复颜色,在褪色状态下移动鼠标可以看到黄色的闪烁提示,表示可以改变小六边形的状态,按下鼠标左键可以改变小六边形的状态。
- 在教学关卡内,按下ESC键可以返回主界面;在第一关与第二关内,按下ESC键可以返回关卡选择界面。
目前我们还没有做通关后的星级判定,所以只要小红点到达目标位置即可通关。我们会在后续的版本中添加星级判定。这里给出第一关与第二关的星级设计初稿:
-
第一关:第一颗星表示小红点到达目标位置;第二颗星表示小红点下落次数不超过7次;第三颗星表示小红点下落次数不超过5次。
-
第二关:第一颗星表示小红点到达目标位置;第二颗星表示不改变小六边形的状态,且小红点下落次数不超过6次;第三颗星表示小六边形状态更改次数不超过1次,且小红点下落次数不超过4次。
注意,不同的星级要求之间可能互斥,因为可以分开获得,比如在一次游玩中获得第一与第三颗星,另一次游玩中获得第一与第二颗星,即视作获得了所有星级。




