1 00:00:00,000 --> 00:00:06,050 你好,我是马克,正在开发一款叫《磁力智胜》的游戏 2 00:00:06,050 --> 00:00:11,500 这部有趣的横版解迷游戏,主题如你所想正是磁铁 3 00:00:11,500 --> 00:00:15,400 总之,当我从圣诞节的短暂休憩回到游戏的开发时 4 00:00:15,400 --> 00:00:21,475 我在自己的 Steam 开发者主页注意到以了个有趣的按钮 5 00:00:21,475 --> 00:00:24,225 保密协议不允许展示这个页面 6 00:00:24,225 --> 00:00:29,125 简单说,这个按钮会把游戏提交给下次新品节 7 00:00:29,125 --> 00:00:36,731 「新品节」是 V 社发起的,让开发者们公开分享自己新游戏 Demo 的盛会  8 00:00:36,731 --> 00:00:40,800 其作为营销策略的效果已经得到多次证明 9 00:00:40,800 --> 00:00:41,200 就比如令人上瘾的德州扑克 + 爬塔肉鸽游戏《小丑牌》的火爆 10 00:00:41,200 --> 00:00:46,450 就比如令人上瘾的德州扑克 + 爬塔肉鸽游戏《小丑牌》的火爆 肉鸽扑克游戏《小丑牌》在 10 天内售出 50 万份 掌声响起来. 11 00:00:46,450 --> 00:00:48,275 也来自 2 月的上届新品节 肉鸽扑克游戏《小丑牌》在 10 天内售出 50 万份 掌声响起来. 12 00:00:48,275 --> 00:00:53,725 于是我确信自己需要将《磁力智胜》提交到 6 月的下届新品节 13 00:00:53,725 --> 00:00:57,700 我只需要拍摄预告片,制作 DEMO 14 00:00:57,700 --> 00:01:06,525 以及修好这部游戏的一个已经困扰我数月之久的恼人问题即可 15 00:01:06,525 --> 00:01:07,525 且听我细说 16 00:01:07,700 --> 00:01:16,375 开发之旅 17 00:01:17,450 --> 00:01:23,575 众所周知,我的游戏使用了像素风,但图片很大 18 00:01:23,575 --> 00:01:27,725 磁格力斯比马里奥、玛德琳大多了 19 00:01:27,725 --> 00:01:33,700 因此游戏中房间的尺寸通常为 1280 * 720 像素 20 00:01:33,700 --> 00:01:38,975 于是,在 720p 的老显示器上玩它就是像素完美的 21 00:01:38,975 --> 00:01:43,575 对于我用的 1440p 屏,像素完美效果也很好 22 00:01:43,575 --> 00:01:45,850 所有像素的尺寸 × 2 即可 23 00:01:45,850 --> 00:01:51,625 对于高贵的 4K 显示器,所有像素 × 3 也能保持像素完美 24 00:01:51,625 --> 00:02:00,625 但对于在 V 社用户调研中最常见的 PC 屏幕分辨率,1080p,又如何呢? 25 00:02:00,625 --> 00:02:06,750 这就有些难办了 —— 它是 720p 尺寸的 1.5 倍 26 00:02:06,750 --> 00:02:11,575 「半个像素」这种东西可不存在  27 00:02:11,575 --> 00:02:15,925 要解决这个问题,通常有几种常用的不同方法 28 00:02:15,925 --> 00:02:19,250 首先,你可以让 Unity 解决 29 00:02:19,250 --> 00:02:23,656 在这边添加一颗像素、在那边减少一颗像素 30 00:02:23,656 --> 00:02:28,400 让所有「半像素」作为一整颗像素呈现 31 00:02:28,400 --> 00:02:30,725 一听就知道,这并不完美 32 00:02:30,725 --> 00:02:33,600 图像会不再整洁、显得丑陋 33 00:02:33,600 --> 00:02:37,875 那些弯曲表面、或折角的问题尤为明显 34 00:02:37,875 --> 00:02:43,675 除此之外,还可以使用抗锯齿来虚化所有折角 35 00:02:43,675 --> 00:02:49,575 但这会让画面模糊,不再有像素艺术那种锐利、复古的感觉 36 00:02:49,575 --> 00:02:55,450 第三个选择,或者说选项 C,则是依旧保留像素原有的尺寸 37 00:02:55,450 --> 00:02:58,725 但与此同时,将画面周围的边框加大 38 00:02:58,725 --> 00:03:02,425 营造拉远距离、画面变小的感觉 39 00:03:02,425 --> 00:03:05,175 所有这些方法我都试了 40 00:03:05,175 --> 00:03:11,800 我在设置菜单中加了个会放大屏幕周围的边框「像素完美模式」选项 41 00:03:11,800 --> 00:03:17,675 我专门写了一个自动识别并添加抗锯齿的系统 42 00:03:17,675 --> 00:03:21,875 检测那些无法被整除的像素、添加抗锯齿 43 00:03:21,875 --> 00:03:27,150 我还曾抱持过「玩家也许不会注意丑陋半像素」的侥幸心理 44 00:03:27,150 --> 00:03:29,150 万一只有我在意呢? 45 00:03:29,150 --> 00:03:34,200 但到最后,我其实就是在找「相对不遭的妥协」罢了 46 00:03:34,200 --> 00:03:38,750 我浪费了大量的时间,在这些方法之间踌躇不定 47 00:03:38,750 --> 00:03:45,700 试图从这三种解法中找到一个对游戏也许、大概、差不多能用的选项 48 00:03:45,700 --> 00:03:51,275  不过当然,其实还有一个我根本不愿意去想的「4 号方案」 49 00:03:51,275 --> 00:03:54,875 它肯定能解决问题,但我根本就不想提它 50 00:03:54,875 --> 00:03:56,175 唉好吧,我说 51 00:03:56,175 --> 00:03:59,375 我可以放弃所有像素画 52 00:03:59,375 --> 00:04:05,725 用全新的 4k 高清图来替换游戏中现有的所有美术素材 53 00:04:05,725 --> 00:04:08,450 但这可真是……太疯狂了,对吧? 54 00:04:08,450 --> 00:04:13,175 我用全新的 4k 高清图替换了游戏中现有的所有美术素材 55 00:04:13,175 --> 00:04:16,225 我把每个素材都放大三倍 56 00:04:16,225 --> 00:04:21,525 然后再使用 Photoshop 的钢笔、形状等矢量工具将它们重绘 57 00:04:21,525 --> 00:04:28,750 包括了每个按钮、每个门、每个装饰物、每个磁铁、每个 UI 元素 58 00:04:28,750 --> 00:04:32,650 你猜怎么着?这样做花费的时间并没有我想象得多 59 00:04:32,650 --> 00:04:38,800 毕竟,我的像素图本身就比较粗旷、由基本的形状和色块组合而成 60 00:04:38,800 --> 00:04:44,225 我也没有借这次高清化的机会为图片添加更丰富的信息 61 00:04:44,225 --> 00:04:47,125 因为即使在 Steam Deck 这种小屏上 62 00:04:47,125 --> 00:04:50,125 我也想确保画面能够保持极高的清晰可度性 63 00:04:50,125 --> 00:04:54,375 同时,我也没有重绘背景使用的图片 64 00:04:54,375 --> 00:05:01,450 实际上,我保留了像素图,然后丢了个景深滤镜把它虚化掉 65 00:05:01,450 --> 00:05:03,250 只有天知地知,你知我知,对吧? 66 00:05:03,250 --> 00:05:04,875 这是咱俩的小秘密 67 00:05:04,875 --> 00:05:09,200 在完成这一切后,我对游戏现在的画面表现实际相当满意 68 00:05:09,200 --> 00:05:12,475 磁格力斯的魅力与个性更胜以往 69 00:05:12,475 --> 00:05:17,275 游戏也有了特色,不再像是又一部像素独游大众脸 70 00:05:17,275 --> 00:05:19,625 它就这样好起来了 71 00:05:19,625 --> 00:05:28,588 无论是 4K 还是 1080p 显示器、亦或者是 Steam Deck 的小屏幕都好起来了 72 00:05:28,588 --> 00:05:30,575 就 是 行 了 陶德:你再这样我要告你了 73 00:05:30,575 --> 00:05:36,825 说来有趣,到最后,我花在用来「尝试寻找一个好妥协方案」的时间 74 00:05:36,825 --> 00:05:40,075 比我重制美术素材的时间还多 75 00:05:40,075 --> 00:05:43,900 总之,我学到了宝贵的一课,啊不,宝贵的两课 76 00:05:43,900 --> 00:05:45,900 首先,提前计划 77 00:05:45,900 --> 00:05:52,000 我在完成相机系统的很久前,就已经在绘制素材了 78 00:05:52,000 --> 00:05:55,600 那时的我侥幸地希望一切都能运作良好 79 00:05:55,600 --> 00:05:56,675 并不能 80 00:05:56,675 --> 00:06:01,150 要说的话,Unity 有个「像素完美相机」组件 81 00:06:01,150 --> 00:06:06,029 我之前一直默认只要后面用上了它,一切就都没问题 82 00:06:06,029 --> 00:06:07,825 但这又傻又天真 83 00:06:07,825 --> 00:06:11,175 知道它并非我所想时,为时已晚 84 00:06:11,175 --> 00:06:12,150 而另一节课则是 85 00:06:12,150 --> 00:06:20,050 有时候,似乎寻找一个妥协、漏洞、或者变通的方案好像是个好主意 86 00:06:20,050 --> 00:06:21,950 但这说穿了就是在偷懒 87 00:06:21,950 --> 00:06:25,575 但有时,最好的做法就是硬着头皮、埋头苦干 88 00:06:25,575 --> 00:06:31,300 去遵从那个真正有效的方案,哪怕它代表着要做艰难的工作 89 00:06:31,300 --> 00:06:39,150 往后,我会停止浪费时间,直接从那个真正有效的解决方案开始工作 90 00:06:39,150 --> 00:06:45,975 好的,既然最恼人的问题已经圆满解决,是时候开始下一项工作了 91 00:06:45,975 --> 00:06:47,475 —— 拍预告片 92 00:06:47,475 --> 00:06:53,225 这件事我已经拖延了很久,而原因也很简单:这部游戏还没做完呢 93 00:06:53,225 --> 00:06:55,800 能在预告片展示的内容还远远不够 94 00:06:55,800 --> 00:06:59,975 我做完了世界 1,但不能只展示它 95 00:06:59,975 --> 00:07:06,625 否则的话,整个预告片将会被绿松色下水道的单调片段完全填满 96 00:07:06,625 --> 00:07:08,600 一遍遍单调的循环两分钟 97 00:07:08,600 --> 00:07:12,075 这可没法给玩家留下我游戏的真实印象 98 00:07:12,075 --> 00:07:17,200 所以我决定遵循「弄假直到成真」的古老艺术 99 00:07:17,200 --> 00:07:19,900 真的自然是留到后面做 100 00:07:19,900 --> 00:07:23,900 因为我还有大量并没有彻底完成的内容 101 00:07:23,900 --> 00:07:26,275 比如这些未完成的关卡 102 00:07:26,275 --> 00:07:31,375 它们还未经过游玩测试,且外观仍使用开发时的蓝图背景设计 103 00:07:31,375 --> 00:07:33,451 我有些做了一半的背景美术 104 00:07:33,451 --> 00:07:36,225 以及一些还未彻底实现的,各种不同的机制 105 00:07:36,225 --> 00:07:37,550 如果我把它们组合起来 106 00:07:37,550 --> 00:07:41,587 就能做出些虽然不一定会出现在游戏最终版本中 107 00:07:41,587 --> 00:07:45,800 但能很好展示这部游戏完成时样子的内容 108 00:07:45,800 --> 00:07:49,450 顺带一提,我实际上可能做得有点太好了 109 00:07:49,450 --> 00:07:51,525 因为在我发布预告片后 110 00:07:51,525 --> 00:07:55,895 有好些人都在评论区回复,祝贺我终于把这部游戏做完了 111 00:07:55,895 --> 00:07:58,325 心意我领了,非常感谢大家 112 00:07:58,325 --> 00:08:01,225 但我没做完,都是假滴! 113 00:08:01,225 --> 00:08:06,150 有了些新内容后,我便录制了自己闯过这些关卡的视频 114 00:08:06,150 --> 00:08:11,875 我没有开背景音乐,但仍保留了音效,让它们能出现在预告片中 115 00:08:11,875 --> 00:08:17,700 同时,为了避免我又得聊一次分辨率,视频全部在 4K 下录制 116 00:08:17,700 --> 00:08:19,900 虽然预告只有 1080p 117 00:08:19,900 --> 00:08:25,975 这让我可以在裁切出有趣部分时,无需将画面放大、丢失质量 118 00:08:25,975 --> 00:08:29,300 然后,我将录制的片段丢进 Pr 中 119 00:08:29,300 --> 00:08:32,750 剪辑出那些最有意思的片段 —— 120 00:08:32,750 --> 00:08:39,475 比如有趣的动画、对机制的体现、或者剧情中的演出,诸如此类 121 00:08:39,475 --> 00:08:40,400 而在音乐方面 122 00:08:40,400 --> 00:08:48,525 我已经成功为游戏寻得了作曲家,这个超长的谷歌问卷也可以关掉了 123 00:08:48,525 --> 00:08:51,350 感谢每一位提交了自己姓名的人,感谢大家 124 00:08:51,350 --> 00:08:53,425 目前游戏的音乐还没有完全定下来 125 00:08:53,425 --> 00:08:59,625  所以预告片使用了我最喜欢的音源库「Epidemic Sound」 126 00:08:59,625 --> 00:09:01,375 Epidemic Sound 的一大优势在于 127 00:09:01,375 --> 00:09:03,850 —— 它们没有花钱在视频里打广告 128 00:09:03,850 --> 00:09:09,275 但如果你能点击简介下的邀请链接,它们会给我钱 —— 129 00:09:09,275 --> 00:09:10,725 优势在于当你下载音乐时 130 00:09:10,725 --> 00:09:14,850 不仅能得到完整曲子,还获得了拆分的音轨 131 00:09:14,850 --> 00:09:18,125 比如旋律、贝斯、鼓点等 132 00:09:18,125 --> 00:09:20,850 这意味着我能可以拆出鼓点 133 00:09:20,850 --> 00:09:25,475 然后根据鼓点的节拍来剪辑片段间的专场 134 00:09:30,650 --> 00:09:34,025 至于预告片的叙事弧线方面 135 00:09:34,025 --> 00:09:40,075 我选择从最简单的元素开始,比如用磁力光束升起方块 136 00:09:40,075 --> 00:09:44,875  然后我放慢节奏,引入新角色「磁格力斯」 137 00:09:44,875 --> 00:09:48,450 接着,展示磁格力斯作为机制的能力 138 00:09:48,450 --> 00:09:54,500 然后是一个快速的蒙太奇,展示你在游戏后半段会碰到的内容 139 00:09:54,500 --> 00:09:57,875 比如新磁铁、新机制、以及其他的世界 140 00:09:57,875 --> 00:10:02,600 然后用让大家把游戏加入 Steam 愿望单的号召结束 141 00:10:02,600 --> 00:10:07,875 这当然算不上多么惊艳的预告片 —— 毕竟剪辑只花了大约一天时间 142 00:10:07,875 --> 00:10:10,875 我也没有那么大量的片段可以用 143 00:10:10,875 --> 00:10:13,200 而且我又不是 Derek Lieu 144 00:10:13,200 --> 00:10:17,475 那个把各种独立游戏预告片剪出花来的预告片领域大神 145 00:10:17,475 --> 00:10:19,700 但我觉得它目前已经够用了 146 00:10:19,700 --> 00:10:23,300 然后我把它发上 YouTube 和其他网站 147 00:10:23,300 --> 00:10:30,575 让我的游戏在新品节开始前就拿到了三万多愿望单,这成绩已经很好了 148 00:10:30,575 --> 00:10:32,725 最后,是游戏的 DEMO 149 00:10:32,725 --> 00:10:37,675 我并不能完全确定自己该往 DEMO 中放多少内容 150 00:10:37,675 --> 00:10:42,125 与预告类似,如果 DEMO 只有世界 1 151 00:10:42,125 --> 00:10:46,025 显然并不足以很好地传达出完整游戏能够带来的体验 152 00:10:46,025 --> 00:10:51,625 所以也许还要包含世界 2,或者半个世界 2 之类的 153 00:10:51,625 --> 00:10:53,625 我还需要制作这部分内容 154 00:10:53,625 --> 00:10:59,400 但总而言之,我想接下来要干的就是把游戏给做完 155 00:10:59,400 --> 00:11:01,900 还是以《小丑牌》为例 156 00:11:01,900 --> 00:11:06,525 众所周知,这部游戏在 Steam 新品节期间掀起了极大的玩家热潮 157 00:11:06,525 --> 00:11:10,225 接着,在几周后它就真的发售了 158 00:11:10,225 --> 00:11:12,000 《电钻少女》也类似: 159 00:11:12,000 --> 00:11:17,900 在 Steam 新品节亮相大约一个月后,它也正式发售了 160 00:11:17,900 --> 00:11:22,075 因此,如果我计划在 6 月新品节展示我的游戏 161 00:11:22,075 --> 00:11:26,875 那我就该准备好在 7 月或 8 月发售它 162 00:11:26,875 --> 00:11:32,150 这日子离今天已经不远了,所以我最好全力开工制作! 163 00:11:32,150 --> 00:11:39,825 在过去几周里,我发现了一个不错的 —— 虽然听起来有点夸张 164 00:11:39,825 --> 00:11:43,425 「用来将游戏完成的生产流水线」 165 00:11:43,425 --> 00:11:47,975 它大幅上借鉴了 V 社制作《传送门》的流程 166 00:11:47,975 --> 00:11:52,050 我在「V 社的游玩测试哲学」视频中提到过 我还没更新到 167 00:11:52,050 --> 00:11:53,800 简单说就是这样: 168 00:11:53,800 --> 00:11:58,525 在周二到周四期间,我会专注为游戏开发新内容 169 00:11:58,525 --> 00:12:03,500 新关卡、好看的新背景、或新过场动画 170 00:12:03,500 --> 00:12:05,750 总之就是扩充游戏 171 00:12:05,750 --> 00:12:08,475 在周五,我专门修 BUG 172 00:12:08,475 --> 00:12:12,975 我会从日益增长的 Trello 待办事项挑几条 173 00:12:12,975 --> 00:12:16,725 试图想个好办法来修复这些 BUG 174 00:12:16,725 --> 00:12:19,100 就这样尽量多修些 BUG 175 00:12:19,100 --> 00:12:25,050 在这一天结束时,我会做些收尾和测试,将游戏导出打包 176 00:12:25,050 --> 00:12:27,275 然后将它交给游玩测试者 177 00:12:27,275 --> 00:12:33,300 通常是在推特上抽几个人,总之挑最多三位测试者 178 00:12:33,300 --> 00:12:39,525 然后到周一,我会检查推特私信,回收游玩测试时的录像 179 00:12:39,525 --> 00:12:46,075 我会完整看完这些录像,然后尽可能针对那些我想做的改动做好笔记 180 00:12:46,075 --> 00:12:54,900 比如 BUG、需要额外打磨的部分、亦或难度失调、太过繁琐的关卡 181 00:12:54,900 --> 00:13:00,975 又或者是某些我在进行游戏开发时,并没有预测到的设计漏洞 182 00:13:00,975 --> 00:13:06,050 在我过去的开发中,就已经能初见这种开发流程的雏形了 183 00:13:06,050 --> 00:13:08,800 但我感觉它如今正臻至完美 184 00:13:08,800 --> 00:13:13,050 比如过去,我会把游戏包一次发给太多人测试 185 00:13:13,050 --> 00:13:16,100 这会导致最后我拿到太多的录像要观看 186 00:13:16,100 --> 00:13:18,150 实在是难以承受 187 00:13:18,150 --> 00:13:22,621 而且,如果某个人碰到了 BUG 或漏洞 188 00:13:22,621 --> 00:13:30,025 接着在其他片段中无数次地重复看到这段,既让人痛苦又没什么用 189 00:13:30,025 --> 00:13:33,675 此外,我之前总在每周中段发放测试游戏包 190 00:13:33,675 --> 00:13:39,875 然后我的进度就被卡住了,只能干等着测试录像,什么都做不了 191 00:13:39,875 --> 00:13:43,350 与此同时,周五测试意味着大家可以在周末玩游戏 192 00:13:43,350 --> 00:13:47,300  这时我刚好可以休息一下,玩玩《小丑牌》 193 00:13:47,300 --> 00:13:51,625 借由这个过程,游戏也逐渐变得越来越有样 194 00:13:51,625 --> 00:13:55,150 实验性的新内容以粗糙的状况被生产出来 195 00:13:55,150 --> 00:13:57,025 然后很快经历游玩测试 196 00:13:57,025 --> 00:13:59,425 而那些早就出现在游戏中的老内容 197 00:13:59,425 --> 00:14:03,025 那些早期的关卡已经被无数的测试者体验过 198 00:14:03,025 --> 00:14:06,175 从而得到了大量打磨和 BUG 修复 199 00:14:06,175 --> 00:14:09,825 完成度逐渐变得相当之高,质量愈发优秀 200 00:14:09,825 --> 00:14:11,550 而借助于这个过程 201 00:14:11,550 --> 00:14:19,350 我也有了自信,相信自己能够在下次新品节时,让游戏接近完成 202 00:14:19,350 --> 00:14:25,325 但继续在这里和大家聊我做了什么时,可没人帮我做完游戏 203 00:14:25,325 --> 00:14:29,625 因此是时候离开,继续完成我的开发了 204 00:14:29,625 --> 00:14:33,350 接下来还要发放测试、观看游玩录像 205 00:14:33,350 --> 00:14:37,850 或者为游戏做新内容、修 BUG、或者玩小丑牌呢 206 00:14:37,850 --> 00:14:43,225 回忆前面的时间安排,看一眼今天的日期,你就知道我在做什么了 207 00:14:43,225 --> 00:14:47,375 一如既往,GMTK 的 Patreon 赞助者们可以玩到最新的包 208 00:14:47,375 --> 00:14:49,750 但如果你不愿意在金钱上支持本节目 209 00:14:49,750 --> 00:14:51,025 虽然强烈推荐 —— 210 00:14:51,025 --> 00:14:53,775 你也可以去 Steam 把游戏加入愿望单 211 00:14:53,775 --> 00:14:59,025 当下个新品节,游戏 DEMO 发布时,你就能得到通知了 212 00:14:59,025 --> 00:15:02,475 非常感谢你的观看,我们下期再见