简记。
8日至10日,我和杨彦君去参加了 HackPKU 2016。黄可嵩大神顾念论文截止日期(杨彦君扔掉了→_→)就没去,最终我们这个报名意义上的队伍只剩下2人。组队的时候发现其实“缺口”还是很少的,最终和两位哈工大的大二学生组成了一个临时队伍。
总体来说,强度比 MCM 要轻一些,不过现场展示要严酷得多。结果是,惨败。队伍编制就十分不平衡——4个程序员,零策划/PM,美工弱,做到半成品demo就已经精疲力尽,更别提优化、美化、宣传了。我们因为擅长领域不同(PHP vs Unity3D),明显地被分成了两个部分,而且还没得到整合。对于 SDK、API 和其他现场技术(如 Kinect for Windows),4个找不到痛点的程序员对如何“不俗地”使用它们感到十分棘手。如村长所言,必须注重团队配置,而且时间非常重要!
我们的半成品被切割成了两部分,一个是拍照登录,一个是 AR 游戏。虽然定了数据交换协议,但是 AR 这边进度一直没达到该通信的程度,所以展示的时候也只好分开来展示,没有衔接过程。反正我是 AR 这边的,能跳《お願い!シンデレラ》并同步音频(问:动作和音乐从哪里来的?答:不说。),但在加入点击操作时被一个问题卡得死死的,从凌晨两点一直到展示都没解决。简要概括这个问题,就是我们实例化(Instantiate()
)物体在 PC 上成功,但手机上一直无法显示,还无法记录调试日志。所以在最后的展示中我们只好砍掉了操作部分,回退到纯观赏 AR。所以只好判定为未完成状态。
在最后的自由展示中,我真是见识到了我的创意缺乏。我选两个最后我觉得挺不错的项目说一下。
第一个是根据喜好标记出剧中出现某人的片段,原理是将视频中的人脸进行聚类(使用面部特征点检测 API),选择一个后再根据时间聚类。这个功能,据这个团队说,是为了方便那些追星(或球赛等等)的家伙去专门看喜爱的明星的镜头的。我反感这些对棒脑残粉和这些追星行为,但是不妨碍我给创意(以及其背后反映的思维方式)打出高分,而且demo的完成度、美观度和易用度都很高。毕竟我这个抵触社交的人和世界中社交狂热分子的思想并不会看到一起,自己往“个性化社交”的方向去想几乎是不可能的,并不理解那些人的需求和价值基础。
第二个是一个多人合作的音游。说是音游,其实说是 Kinect 简单应用还差不多。Paper.js 作页面渲染,Node.js 处理同步数据。令我惊奇的是他们的“分屏”概念,一些节奏音符在轨道上运动,而这些轨道是分布在多个屏幕(你没看错,多个设备屏幕的话,每个屏幕只显示部分轨道)上的,这些轨道的物理尺寸可以无缝衔接。不讨论实用程度如何,这个脑洞开得让人很意外。他们的另一个“亮点”是使用 Kinect 检测的身体动作来生成谱面以“增强合作感”——我觉得这个功能并不好,一群人打歌还要专门配一个生成谱面的?无必要的强制“合作”反而会遭到嫌弃,特别是在玩法限定了不对等的角色的情况下。这个五人小组的开发效率很高,在一天多一点的时间内就完成了从创意到完整的demo和配套环境的过程,而且方案如此优美,让人佩服得五体投地。
然后再概括三个我觉得很失败的、但入围前九的例子。心情日记——自恋的人才用这么麻烦的记事方式,每次记事还得强制自拍,还得联网(人脸校验)。AR 虫族作战游戏——我们和他们仅有的两个差距,第一个是也许他们的 Instantiate()
没诈和,第二个是我们没有四旋翼飞机来执行“从空中扫描纸片”的装X任务。随时随地浏览状态分享插件——这两位老兄写代码时就在我们对面,不怀疑效率、质量和嘴皮子,只不过做的东西一点用都没有,除非你是自曝狂。
这次 HackPKU,应该算是中国高校中举办的第一次黑客马拉松,经验不足是可以理解的。今天展示之前突然说我们的组号是41(由于是唯一临时组成的组,之前我们北航的几个是有固定组号的),然而和旁边展位的哥们儿(就是做插件那两个)的冲突了,弄得访客也混乱了,工作人员来了之后给了我们一个42号——一个根本不存在在展位指引表上的号码,所以也没人“按图索骥”。不过这几天至少伙食和零食(虽然就几种)还是有保证的。晚上禁止使用场地侧门(预防财物/信息安全事故?),因此也就到不了几步路之外的卫生间,必须得从正门出去走600米,拐十几道弯。
Unity3D 自从 Initialize on awake
的选项折腾了4小时之后就对其感到心累了,后面的 Instantiate()
简直是雪上加霜。还有混乱的事务安排!你见过安排屋子内一边坐着专心开发的人,而另一边则举办着赞助商指定的游戏活动(用麦克风的,还喊话)的行径吗?