理论无限!
再没有比这更振奋人心的消息了。
这意味着只要带宽允许,他们可以完全放肆地尽可能嚣张地挥洒艺术细胞。
在游戏里塞入那些过去想都不敢想的花哨贴图。
只要确保在大众普遍的带宽下,加载速度在容忍范围内,一切都由他们自主决定。
大卫这帮人,那是真的从穷日子里走过来的。
知道性能的宝贵,也知道容量的宝贵。
对他们来说,穷了一辈子哪见过这么多容量?
就这种项目,别说是能赚大钱了,就算是完全用爱发电,他们也高低得来试试咸淡。
在这样的环境下开发本就是一种享受。
“先不要着急,大卫,这项技术只是基础,它的目的才是这次项目的关键。”
林立新随手拿起一张纸,在上面画了个矩形。 意思很简单嘛,这就是一张游戏地图。
随后他在左下点了个点,又在右上点了个点。
从起点开始,弯弯绕绕地一路到右上的终点。
“这才是塔防游戏的灵魂。”
“这是?”
“路径。”
“呃?”
《rapart》虽然是塔防之祖,但它仍然没敢走出这关键的一步。
因为它看起来就象是一个巨大的陷阱。
在传统rts游戏和诸多2d游戏里,自由移动本就是卖点的一部分。。
大军团多兵种作战。 比起《战地》里那种扮演大兵的感觉,虽然视觉效果天差地别,但这种指挥军团作战的控制感,是一种别的游戏类型都难以体会到的快乐。
而路径
它不难实现。
事实上当林立新提出这个概念的时候,大卫心中就已经有了映射的代码。
无非是在地图上再额外保存一组或是几组坐标数据。
让敌人沿着坐标移动就够了。
只要配合地图贴图本身,敌人就会呈现出沿着地图上的道路上移动的效果。
几乎不需要多少额外的容量开销,一组数字的占用对于现在的带宽来说大概就是一瞬间的事。
但问题是
why???
这样的改动并不会带来什么性能提升。
理论上来说,完全随机路径也并不是难事。 在大量的肉鸽游戏里其实都有映射的设计,尤其是幸存者类。
已知圆心、半径和角度,只需要代入公式x=x0+rs(api/180)和y=y0+rs(api/180)就够了。
以玩家所在位置,或者是基地所在位置为圆心。
通过‘安全距离’和‘最远距离’求一个随机数作为圆的半径,再0~360随机生成一个角度。
只需要一个函数,就能轻而易举地得到需要的怪物生成坐标。
再将双方的坐标相减得到的矢量归一化,就能让怪物朝着基地移动。
这套玩意儿对于做游戏的开发者们来说就是基本功中的基本功,根本用不了什么功夫。
它需要的计算其实也可以被大幅优化。
如果真的是担心处理器性能不够导致的卡顿的话,完全可以改成查表。
只要预存一组数据,搭配基地本身的坐标进行偏移,也可以仅用加法器来实现这一切。
它根本就没有所谓的‘浪费性能’的情况存在。
那为什么要砍掉? 如果改成路径,性能没有任何变化,自由度却大幅下降了。
玩家布置所有的‘塔’,都必须要围绕着路径进行设计
“oh做减法?right?”
想到这儿,大卫一拍脑门,猛掉了几撮头发。
他看向林立新,忽然就把事情想通了。
“本质解谜?”
“本质解谜。”
林立新笑着点点头。
路径是个看似阉割但实际非常巧妙的设计。
在《rapart》这种传统老式塔防游戏里,一直都存在着一个问题。
敌人会从四面八方而来。
玩家需要靠反应来应对。 “”“首”“发”【d】【e】【q】【i】【x】【s】【】【o】【r】【g】
无法确定敌人真正的攻势,无法提前预判情况,只能尽可能地利用空间进行防御。
这种做法很象rts的底子。
但却不适合塔防。
“塔防游戏需要的不是随机,而是确定性,大卫。只有路径确定了,甚至是敌人规模都确定了,游戏才有了真正的‘策略