Devlog #001: 序言
一个游戏开发爱好者的逐梦之旅~
作为一个游戏开发爱好者,我一直有个梦想:开发一个完整的游戏项目并上线。
最近刚好有个契机,所以我决定正式开始制作游戏,也就是这个从零开始制作游戏
项目。
作为一个 从零开始
的项目,可想而知,其开发周期会非常长、涉及的领域也会非常多。所以,我打算把开发过程记录下来,整理成一个开发日志专题。我将在这里记录如何从零开始制作一个3D游戏,初步预期游戏类型是生存类模拟经营游戏,可能类似饥荒。
作为一个从零开始的项目,我们会逐渐从2D项目一步步推进,逐渐过渡到3D项目的开发中。另外,作为一个Hobby Project,本项目的开发过程也可能与实际的游戏项目开发流程存在较大差异,望知悉。
🌟欢迎催更🌟
- 本项目是我的爱好项目
(Hobby Project)
,内容选题方向和进度推进主要由个人兴趣驱动。 - 当然,如果你对本项目非常感兴趣,也可以通过订阅 Patreon 支持来催更😛。
主要内容
我将在这里展示游戏在不同阶段的开发结果,预计包含的主题有:
- 游戏引擎开发: Game Engine Development
- 计算机图形学: Computer Graphics
- 多人联机: Multiplayer Online
- PyGame 框架
游戏引擎选择
目前比较流行的游戏引擎有Unity3D/Unreal/Godot/Cocos等,这些游戏引擎一般功能模块都比较全,但是各个模块的封装度比较高、体量比较大,即使有源码也不方便修改。
既然要从零开始制作游戏,干脆直接一点顺便从引擎开始做。为了避免在一些繁琐的操作系统差异(Windows/MacOS)和各种渲染API差异(OpenGL/Vulkan/Direct3D/Metal)上浪费不必要的时间,我选择在PyGame框架的基础上搭建整个项目。如果中途遇到有其他合适的通用系统模块(例如物理引擎模块),到时候也将考虑直接使用。
🌟从引擎开始制作游戏🌟
- 虽然是从制作引擎开始,但并不是要做一个通用的游戏引擎。
- 不同于 Unity/Unreal/Godot
- 引擎的主要定位是为具体的游戏玩法提供底层支持。
游戏类型
常见的热门游戏类型主要有:
- 🌟模拟经营
- 🌟生存建造
- FPS/TPS
- Moba
- 经典游戏
这个项目预计会先从2D游戏开始,逐渐过渡到3D游戏。
脚本语言
- Lua
- 🌟 Python
- JavaScript
- C#
为什么选择 Python ?
- 通用型脚本语言,生态丰富。
- 简单且高效。
- Simple and Efficient.
系统支持
为了简化发布和测试流程,在核心玩法稳定之前,我们的主要目标是保证PC平台可玩。
- Windows 10/11
- MacOS
参考资料
备注
- 微信公众号/知乎/BiliBili: TechArtLife
- 欢迎大家关注~