美利坚:游戏制作教父 第615节

  游戏的辅助系统也基本都定了下来。

  ……

  既然文的搞定了,那接下来就是理的环节了。

  可想法很美好,现实也同样骨感。

  怎么做?

  就不说别的了,单单把披萨上的一大堆配料都做出来,这资源量就有多少了?

  简单估算一下,整款游戏最终的资源量甚至要奔几十个MB去了。

  放在主机游戏上来说,这个容量对于现在CD-ROM快速推广的时代来说,的确算不得什么。

  可这是网页游戏。

  那问题就大了。

  简单推算一下,哪怕是你住在机房旁边,用着最贵的商业化一代ADSL顶配网络,也得花上几分钟才能加载完。

  “光是一个标准厚底披萨的饼底贴图,就需要几百KB……”

  基钦在开发机上操作了一番,望着文件的占用,一时间有些头疼。

  披萨能自由拼搭,就意味着他们需要把披萨上的每一个配料都单独准备好贴图。

  甚至还要有不同角度和形状的变体,确保不容易审美疲劳。

  但这得用多少带宽?

  哪怕是用上了时下最激进的压缩算法,在不损失像素的情况下这个数字也只能再减少几十KB,量级上根本没有拉出差异。

  这还没有算上帧动画呢。

  要是再把这些角色的移动效果都给一一做出来,那占用得膨胀到什么程度?

  如果要保证最基本的可玩性,那他们计划书上的内容有一大半都得砍去。

  但这肯定是不对的。

  如果真的做不到,那林立新也不可能放任他们一股脑地往计划里塞东西。

  既然林先生认同,最起码在他的脑袋里,是装着完整的实现思路的。

  事已至此……

  “快去请林先生!”

  ……

  “减少占用?喔,也对,你们从来没有过网站开发的经验。”

  简单听大卫描述了一下问题,林立新迅速便明白了过来到底是怎么一回事。

  动视这帮人的主要技术栈还是主机和PC端。

  他们非常擅长跟底层的硬件打交道,代码能优化到寄存器操作的级别。

  但对于高级语言的编写却缺少相关的经验。

  同样也没有网页端开发的积累。

  这个问题放在后世,其实是非常好解决的。

  但对现在念头不通达的他们来说,那就是无论如何都绕不过去的坎。

  “事实上这方面的技术GAMENOVA已经用过很多次了,只不过全部放在一个项目里的确是头一回。”

  林立新说着,快速跑到楼下,在动视的游戏博物馆里找到了自己要的东西,这才返回屋内。

  《心跳回忆》、《危险节奏》以及……《PokePal》。

  看似几款作品天上一脚地上一脚。

  但解决这个问题的终极答案,早就已经藏在它们之中了。

  “咱们先来解决最简单的问题,资源复用。”

  林立新拿起PokePal宠物机,

  “这个项目就是你负责的,我相信这一点你应该并不陌生。”

  资源复用,旧时代主流的优化手段。

  核心思想就是把一个素材通过变换做成不同的物件,达到用少量资源制造大量内容的目的。

  这里面的核心代表,自然就是老任的《超级马力欧》了。

  无论什么时代,但凡提到数据压缩的艺术,一定都绕不开这款惊人的作品。

  在《超马》里,整个1-1在卡带中的实际占用其实仅有131字节。

  所有的32个关卡加在一起,占用也才只有仅仅7KB。

  能有如此夸张的表现,离不开它的核心技术,色板复用以及贴图复用。

  同样的一张贴图,涂上蓝白色,就可以摆在天上当云朵。

  改成绿色嵌在地上,就可以是一丛灌木。

  同样的管道,换成不同配色,就可以在不同地图使用。

  放在《老爹披萨店》里,这个技术同样可以照常应用。

  “我明白。”

  大卫点点头,跟着拿起《心跳回忆》的卡盒。

  GAMENOVA的每一款游戏,都是天然的完美教材。

  任何一位开发者,只要愿意踏踏实实地去钻研,一定都会有所收获。

  尤其是他这种核心成员,更是能直接拿到部分源码。

  大卫曾研究过《心跳回忆》里如此灵动的角色立绘到底是怎么做的。

  “预制一套组件库,只要数量足够多,自由组合就可以做出各种不同的客人,这样一来可以用更少的贴图做出更多的客人,从而大幅减少占用……”

  这就是GAMENOVA在《心跳回忆》里用的技巧。

  拆分L2D。

  把角色拆成碎片,程序化地动态控制。

  一个角色动画甚至只需要字节级别的占用。

  至于《危险节奏》,它带来的是音频压缩的技术。

  如何把一个几十甚至数百MB的CD级音频压缩到游戏可以承受的范围,它给出了完美的答案。

  但……

  大卫将《心跳回忆》放回桌上。

  “可这还不够,大多数玩家的网络仍然是KB级,它还是太大了。”

  这些技术毫无疑问是有用的,而且效果非常好。

  理想状态下把占用直接砍半都能做得到。

  但这还是不够。

  如果不能确保绝大部分人都能玩得到,那他们还不如卖软盘版呢。

  起码普及度有保障。

  “当然,接下来才是重点。”

  网络开发跟单机游戏完全是两个领域。

  对于互联网工作者们来说,他们同样是一群手法高超的魔术师。

  但他们所擅长的并不是榨干硬件里的每一分机能,而是带宽的利用。

  “如果我说,我只需要一项技术,就能把游戏的体积压缩到原本的十分之一,你信吗?”

  “啊?”

  “在设计NovaScript和HTML技术之初,事实上我跟卡马克就已经解决了这个问题。”

  林立新在电脑上操作了一番,随后刷新了一下网页。

  空白网页上便多了一个圆形。

  随后又是一番操作。

  圆形的中间被掏空,闭合处断开,成了一个不完整的圈。

  接着圈被分成了内外两层。

  最后一次刷新。

  外侧变成了深紫色,而内侧则是带着些许淡粉色的白色。

  “洋葱圈。”

  “……?”

  林立新全程没有画任何东西,只是手写了几行代码。

  但偏偏他还就真的画出了一个像模像样的洋葱圈。

  而这个文件的占用是……711字节。

  不到1KB!

  但林立新像是还不满意似的,又开始在电脑上操作起来。

  不多时,萨拉米、辣椒圈、蘑菇片、培根等各种配料便就都被画了出来。

  十分之一的占用?

  这特么百分之一都有了吧!

  如此鬼畜的优化能力,怪不得之前大家讨论游戏机制的时候他表现得那么游刃有余。

  “矢量图技术,我们不描述像素,而是描述路径,NEXUS浏览器会自动解释并渲染的,它有完整的Canvas系统。”

第598章 街角开了家新披萨店

  不同于主机游戏和街机。

  网页游戏有个最大问题,便是它面对的玩家,根本无法确定硬件条件,也无法确定网络基础。

  开发者完全是两眼一抹黑下进行开发的。

  于是优化的目标,便跟黄金时代的开发者们走出了不同的道路。

  一个玩家,有可能用的是i486这种顶级U,也有可能用几年前的破烂。

  与其针对不同硬件做极限优化,倒不如把精力放在……下载时间上。

首节 上一节 615/757下一节 尾节 目录