当前位置:首页 > 每日看点 > 正文内容

不用游戏引擎做游戏有多难?

卡卷网1年前 (2024-12-22)每日看点198

取决于几个问题。

一个是你从哪开始,同样是不用引擎。从OpenGL+平台窗口api,和从SDL,和从ogre,和从MonoGame。完全不是一个概念。

一个是你到底要做什么规模的游戏。这也完全不是一个概念。

比如你从MonoGame这个档开始,做一个小规模的2D平台游戏。对比游戏引擎,其实就多了自己把碰撞系统,关卡瓦片系统,动画系统,简单物理系统,实体管理系统,如果想让画面和玩法更丰富些,可以再写个粒子系统和路径搜索,这些附加功能写完就可以开始了。没比从Unity/Unreal开始难太多太多。这一层叫做游戏框架,一般不称为游戏引擎,因为只提供给开发者游戏循环和非常简单的显示,资源,音频部分,其余的支持很少。

如果你从ogre这一档开始,你仅仅拥有你的场景,你可以添加你的灯光相机,添加你的地形天空,你拥有网格,拥有阴影,作为一个图形引擎,你方便的拥有了渲染部分。但是额外的你一无所有,你得考虑音频如何播放的方案,各种游戏设备输入检测的方案,物理碰撞检测的方案。另外还有游戏的专属类,例如游戏循环,组件模式,更新方法。这一层叫做图形库或者叫渲染引擎,一般提供对象图和3D渲染部分,其余的关于游戏的部分不会提供。

如果你从SDL这一档开始,你连你的世界都不存在了,你要考虑一切显示的东西,例如图像如何显示,纹理如何加载,GUI如何显示。游戏类,游戏循环,游戏对象类,场景图等依然要编写。这一层的叫法有很多,比如窗口库,多媒体库,游戏库,通常是OpenGL的携带库,自带上下文环境,便于直接使用OpenGL。这一层和游戏框架的显著区别是,游戏框架是框架调用你的代码,而库是你调用库的代码。

如果你从OpenGL这一档开始,你甚至连你的程序窗口都没有了,你要考虑你的平台窗口API,你要从你的GPU驱动中检索OpenGL函数,在这个级别,你相当于一个孤单的画家,你只有你的画笔,其余什么都没有。OpenGL甚至不会记住你画的是什么,你要自己记住它,自己更新它,不断的做绘制,擦除的循环。这一切包括,顶点缓冲区,正交透视相机,材质系统,纹理渲染,帧缓冲区等等等等。这一层叫做图形api规范,一般由GPU厂商开发者编写,根据委员会规范提供api供开发者使用。

如果你连GPU都不想用,可以直接考虑 Ray casting+ASCII 在控制台应用程序中渲染游戏画面,就像《Doom》那样。或者借鉴任天堂早期的SNES的Model7,用 Affine transformation 来伪造3D,就算没有图形卡也能跑的起来的伪3D世界。

就好比你把提问换成了,不去火锅店的话,吃一顿重庆火锅有多难。

你可以买一盒自热火锅,只需倒上水即可。(Construct)

你可以买一包火锅底料回家自己煮。(Unity/Unreal)

你可以买牛油和干辣椒回家自己炒火锅料。(MonoGame,经典案例有:《蔚蓝》《星露谷物语》《泰拉瑞亚》《盗贼遗产》)

你可以买牛肉和辣椒回家自己熬制牛油自己晾制干辣椒。(ogre,经典案例有:《火炬之光》《废品机械师》《Kenshi》《Roblox》)

你可以买个牛犊子和辣椒种子,自己养牛自己种植辣椒开始。(SDL,经典案例有:《神界原罪》《消逝的光芒》《博德之门3》《群星》《哈迪斯》《矮人要塞》)

你可以自己培育牛的品种和辣椒的品种,从牛的配种和辣椒的嫁接开始。(OpenGL)

你可以完全抛弃人类社会的购买途径,去自然界追寻牛和辣椒是如何进化演化的,是如何演变成我们如今吃到的品种的。到这层的时候我想已经不是为了单纯做游戏产品了,已经是在品味历史了,因为游戏从2D到伪3D到真3D就是这么过来的。(Ray casting / 仿射变换 + ASCII)

不用游戏引擎做游戏有多难?  第1张

1982年登录Atari8bit的《Wayout》,是世界上最早的利用Ray casting的FPS游戏,比《Doom》要早11年。

不用游戏引擎做游戏有多难?  第2张

超级任天堂中用仿射变换伪造的3D视觉效果,在视觉上是3D的,技术上依然是2D的。在官方手册中被称为Model7背景模式。

射线投射的初步原理可以看我另外一篇文章:

用最直观的gif解释毁灭战士(Doom)的渲染原理

所以说,越到底层,你的自由度越大,就像你可以养出油脂更高的牛,培育出更辣的辣椒。直接买火锅料的话,什么口味你都得依从火锅料了。比如人家给你用了劣质的原材料(源代码)造成你吃完了拉稀(游戏卡顿),也得忍着。

扫描二维码推送至手机访问。

版权声明:本文由卡卷网发布,如需转载请注明出处。

本文链接:https://www.kajuan.net/ttnews/2024/12/5153.html

分享给朋友:

相关文章

请问什么软件支持看电视直播?

请问什么软件支持看电视直播?

2024年9月6日最新更新:本文列举的所有看电视直播、或流媒体影视资源点播的软件,我这两天又重新梳理成最新版本,最大程度保证可用性。获取方式见文末图片,或见评论。后续我也将持续更新,文章是旧的软件也会是新的,保证你拿到的都是最新可用版本。作...

自媒体如何快速起步?

自媒体如何快速起步?

有两种经验,可供参考。第一种是:现象级的爆火、爆款,这种情况捞到钱,实现财务自由的人并不多,但确实存在。只不过非要说清楚为什么这个账号可以火、可以短时间内赚到普通人一辈子赚不到的钱,他们自己也不一定能说清楚,因为赶上了风口(内外部情况)。举...

为什么有人觉得华为mate60只值2000?

为什么有人觉得华为mate60只值2000?

你以为买Mate60的人真的傻?真的那么爱国?国庆前,我家那傻子加价800多买了一台Mate60,当时还被我骂他是傻子。可是他说一回到公司就被老板同事朋友看到,拿去反复查看,都在惊叹他这么快就买到新机。跟亲戚朋友聚会,别人一看就知道他买的是...

如何进行 Elasticsearch 调优实践?

如何进行 Elasticsearch 调优实践?

面试官心理分析这个问题是肯定要问的,说白了,就是看你有没有实际干过 es,因为啥?其实 es 性能并没有你想象中那么好的。很多时候数据量大了,特别是有几亿条数据的时候,可能你会懵逼的发现,跑个搜索怎么一下 5~10s ,坑爹了。第一次搜索的...

MacOS真的比Windows流畅吗?

我现在公司配的机器,配置是绝对的大古董了惠普z230sff薄塔cpu只是个4770,没错不是4790k,4770全核睿频只有3.8g显卡更是古董,k600,已经结束驱动更新支持了,显存仅1g,跑分跑不过13代uhd核显内存是加到16g得,但...

OLED、QLED还是Mini LED?如何在今年双十一选购一款最适合自己的电视?

OLED、QLED还是Mini LED?如何在今年双十一选购一款最适合自己的电视?

我家旧电视用了好几年了,最近毛病越来愈多,动不动就黑屏,让人特别扫兴。这阵子和家人商量着,趁着现在国家有家电补贴,再加双11大促,不如换一台好一点的新电视,而现在MiniLED技术成熟,很多电视都升级MiniLED了,无论在画面亮度、细节、...

发表评论

访客

看不清,换一张

◎欢迎参与讨论,请在这里发表您的看法和观点。