中学时代,可能是最好的时代。那是一个人精力最旺盛,也是最开始明确知道自己对什么感兴趣的时代。在中学里,每个人可能或多或少地想过在学业之外做点什么,最简单的,比如召集伙伴来场球赛、在学校活动里出个节目,也可能是办点手绘刊物……
这些事在学生的能力范围内是可以完成的。现在课外班和兴趣班的资源也很丰富,如果课业不是那么繁重,不是被家长以“素质教育”之名强迫参加的话,喜欢画画的孩子可以去上绘画班,喜欢音乐的可以去学乐器,喜欢体育的也可以去踢球,或是练练击剑、射箭和跆拳道。
那么喜欢游戏的孩子能去哪儿呢?这个问题在目前的情形下似乎又变得严酷了一些。当然,我们说的“喜欢”不仅仅是指玩游戏,还有制作游戏,如果把游戏制作人作为未来奋斗的目标,这样的孩子要怎么办呢?
在我上中学的时候,这类问题的讨论度很低。一方面是因为当时社会对游戏的态度应该比现在更严苛,另一方面,那时候电脑和计算机技术还没有现在这么普及,开源的游戏引擎,乃至门槛更低的图形化游戏引擎更是少有。
情况早已发生了变化。某一天我打开B站,发现首页上突然出现了“高中生自制独立游戏”的视频。点进去看了几眼之后,B站就开始猛给我推送类似的东西。出于好奇,我寻找并筛选出了几位作品风格各异的高中生游戏制作者。
客观地说,这些学生作品处在一个比较粗糙的阶段,展示出的片段大多是他们自己上传的记录性的开发者日志。即使有上Steam之类平台的想法,大部分距离实现还遥遥无期。不过,我更想知道,他们为什么制作游戏,以及最重要的——如何学会了制作游戏。即使是成年的、商业化的独立游戏开发者,能获得的资源都往往很有限,这些更年轻的同学们在真正动手做一款游戏的时候,又能从何处获得支持呢?
起始
桃璃、克理斯和_def最开始想在学校里搞一个独立游戏俱乐部,但没有成功。
他们是北京一所国际学校的学生,换算到普通高中应该是上高二。虽然课业也在逐渐变得繁重,和其他高中生相比,他们可以自主支配的时间仍旧相对比较多。平日里,早上七八点上课,下午4点放学。4到6点之间自由活动,可以参加社团,也可以自己回家写作业。
“自由活动”听起来很美好,不过学校对课外活动的时间有强制规定。“高二到高三这两年要达到小时,其中服务型、创造型、体育健康型活动各自要有50小时。”桃璃说,“如果达不到的话,可能在未来申请学校时有劣势,更严重的会拿不到我们学校的证书、文凭之类的。”
桃璃和他的几个朋友懂一些编程,同时也对游戏有兴趣,就想着也许可以在自由活动时间里制作一款游戏。目前,他们的作品已经有了平台跳跃动作游戏的雏形。
现在的学生了解编程不算特别罕见,许多中学都将编程列为必修,初中阶段教授基本的VB语言,再深入的可能会学一些Python。结课的时候,学生们需要利用这些知识写出一些简单的程序。
这些知识对做游戏来说显然还不够。最初,桃璃他们为俱乐部招来了一些同学,打算做一个校园题材的2D动作游戏。他们选用的Godot引擎是以Python为基础开发的,比起以C++语言为主的“虚幻”或者Unity引擎,技术门槛要低一些。“用这个引擎本来就是为了新手考虑,”桃璃说,“当初想的是其他人可以自学一下……后来发现,他们其实不会为这个项目出很多力,最后就剩下我们个自己做。”
个人当中,桃璃是策划和程序,克理斯做美术,_def负责音乐。个人的共同点是“基本靠自学”。克理斯的父母从事舞美设计相关的工作,偶尔会帮忙看看他画的东西,其他人的知识基本上都来自网络。
“我爸是做IT行业的,但他对写代码其实不是很了解,我学编程主要就是上网看视频。”桃璃说,现在B站上比较靠谱的教程动辄好几百集,深度和可靠性方面基本上是够的。“只要你好好学,知识储备肯定是没有问题的。”
虽然有很多东西还未完成,桃璃和朋友们的游戏已经具备了基本的可玩性
如雨的知识储备基本上也靠自学。
如雨是另一位正在学习游戏制作的高中生。他所在的高中没有那么宽松,平时7点半上课,一直到晚上10点半放学,几乎没有课余时间,只能利用周末以及假期空闲陆陆续续用Unity做开发。他打算做一款FPS游戏。
虽然家里人没有人从事IT行业,如雨却很早就有了学编程的意识。“最早我用PPT,里面不是有些超链接动画之类的么,我就模拟着想写一点类似于程序的东西,但是做不出来。后来我开始研究Excel里面的那些公式什么的,但那些只是函数,不算真正的程序,当时就是做些会计表格之类的。小学三年级,我才真正入门学编程。”
如雨跟着学校里的课程学VB,高中时为了信息技术竞赛又学了C++。他还和一个负责美术的同学一起用Python写了一个“坦克大战”类型的小游戏,当作作业交上去。
“那些都很糙,现在不太愿意回想。”如雨说。
在开始制作现在这个FPS游戏之前,编程已经是他生活中非常平常的一部分。动手对他来说是一种爱好和乐趣,就像小时候他十分热衷于《我的世界》和《ThePowderToy》一样,这类能自主建造东西的游戏令他着迷。他很乐于写一些娱乐用或者实用的小程序,比如搭积木、2D打僵尸,或者在上网课时播放平时上下课的铃声。
如雨的自制FPS目前已经开始了多人模式的初期测试
后来,他陆续接触了一些FPS游戏。“主要是竞技类的,也会有少量更硬核的。”不过,那些游戏多多少少在一些细微的方面不太符合他的口味。“《反恐精英:全球攻势》的战斗模式特别丰富,但是本身它没有开镜之类的,手感不算特别好。我个人还是更喜欢‘彩虹六号’的手感,可‘彩虹六号’的游戏模式又很少……”
如雨期待一种折衷方案,能兼具“彩虹六号”的操作手感和《反恐精英》的死斗模式,同时不要太硬核……
后来,他在网上看到一些尝试自行制作FPS游戏的独立开发者。他研究了一下需要的技术,发现“其中的每一步都是我能实现的”。于是,他就自己动手了。
因为本来就有基础,如雨差不多花了一个月的时间顺利入门了UnityD。入门之后,教程的帮助就很小了,大部分时候他都在自己摸索。“FPS的元素其实比较少,第一个是武器系统,第二个是人物移动,第三个是联机。有了这些基本就能玩了。”如雨说,“比起那些剧情、音乐、美术需求特别大的游戏,FPS反而很适合一个人去做。”
在过去一年半多的时间里,如雨一直在搭建和打磨这款游戏。与此同时,他完成了高考,享受了一个难得的没有作业的暑假。“7月份,我基本上每天都要干八九个小时,就坐在那里写游戏。周末可能会给自己放会儿假。这八九个小时里大部分时间在写代码,小部分时间在做优化、测试动画什么的。因为连接系统要从无到有地写出来,我基本上20天没怎么干别的。”
很自然地,我想知道他在整个制作过程中遇到过什么困难——这可是一个人制作FPS,怎么可能没有呢?
他想了想,还是说“没有什么困难”。他从Up主的视频中获得过不少鼓励和启发,也加过一些群,“如果和群里有些人用一样的引擎,讨论起技术问题也很方便”。不过总的来说,他还是觉得“自己摸索最有效”。
如雨在几个月前发布了一些武器演示
以子可能是高中开发者中走得比较远的一位,他在不久前正式推出了自己的作品——像素风文字冒险游戏《凯尔文》。《凯尔文》已经上架Steam一个多月,获得不少好评。
以子在广州一所国际学校读高二。和桃璃他们类似,学校的作息时间相对宽松,因为申请国外大学的缘故,对课外活动有硬性要求,这都为他自制游戏提供了比较有利的环境。
不同的是,以子的学校已经有了一个独立游戏开发俱乐部。他想过加入,并且去“看过一眼”,看过之后他觉得,“那些人都太不专业了”。
“不专业是指?”
“做游戏的话要考虑很多方面,像编程或者美术之类的,对吧?但社团的人都比较技术导向,不怎么考虑剧本和背景设定,甚至对美术也没什么了解,程序也是刚开始学,接触得不深。他们好像也没有天天