所有需要在屏幕上高效率显示复杂实时图形的软件都离不开这两个接口,这也是学习计算机图形学绕不开的东西。
但是直接操作显卡门槛太高,而且计算机图形学是门科学,单纯开发游戏并不需要这么全面深入,开发游戏只是计算机图形学的一个小分支。
因此后来就有人把操作显卡的常用功能打包封装,做成了专供开发者使用图形框架,也就是Monogame这样的东西,虽然实际上Monogame和OpenGL这样的底层之间还隔着微软的另外一套框架。
封装得再高级一点,加上软件编辑界面,各种组件,各种调试工具,就是Unity或者Unreal这样的专供游戏制作的引擎。
Monogame并没有提供开发游戏所需要的组件,譬如AABB碰撞检测,完备的场景组件管理,还有物理系统等等。
Monogame只是放在那里,告诉来者,你这样写代码就能让图片动起来,快去开发你的游戏吧……
而Nez,则是在Monogame的基础上的一个2D游戏开源框架。
它提供了很多开发游戏所需要的组件,而不像Monogame那么高冷,虽然它在业内也很清冷,冷到几乎没有游戏公司用……
李佑宣知道木晨曦学习Monogame之后不久就发现了Nez,然后关注了这个项目,他自己在开发的时候遇到的诸多问题,有很多都是在Nez的源代码里找到的答案。
后来他开始给Monogame和Nez贡献文档,再往后,他试着往Nez项目推送一些他贡献的代码,有点闲钱的时候,他还不忘去捐个款。
毕竟,所有的开源项目主页上,都有一个巨大的‘捐款’按钮,要么靠捐款活着,要么就是靠基金会活着。
曦木老哥这个人啊,身上没有冷气,而且还饮水思源。虽然他常常感慨没钱,穷,但在李佑宣看来,其实曦木老哥的内心世界从来没穷过。
他常常就一边自嘲着一边抠脑壳皮说,“哎呀,写了好多代码了呀,可是没有钱,我得去想个办法挣点钱……”
有一回沈少爷就开玩笑说,“谁能想到开源社区里某个造福千万人的东西,作者现实中是个搬砖的呢?”
阿锤接茬,“上一个造福了几千万个资本家的开源项目,因为作者公寓失火,在线求助无人应答,作者一怒之下删库跑路还植入恶意代码。”
小满嗤笑一声,“为众人抱薪者,你要是使他冻毙于风雪,那就别怪他把你家的火炉子灭了。”
地铁到站了,两个人随着人群往软件园地铁站的出口走去,整整齐齐,像几队蚂蚁。
平凡啊。
李佑宣想,平凡且伟大着。