V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
爱意满满的作品展示区。
TechArtLife
V2EX  ›  分享创造

[从零开始制作游戏] Devlog #001: 序言

  •  
  •   TechArtLife · 178 天前 · 1686 次点击
    这是一个创建于 178 天前的主题,其中的信息可能已经有所发展或是发生改变。

    Devlog #001: 序言

    一个游戏开发爱好者的追梦之旅~

    持续更新: https://techartlife.com/gamedev/devlog/day-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

    参考资料

    备注

    14 条回复    2024-05-31 07:43:30 +08:00
    terrytang1
        1
    terrytang1  
       178 天前
    学习下
    terrytang1
        2
    terrytang1  
       178 天前
    不过,还是不要从引擎开始吧,或者你可以试试云风他们那个引擎
    TechArtLife
        3
    TechArtLife  
    OP
       178 天前
    @terrytang1 ANT 引擎是一个很好的参考,但是,一方面,Lua&C 不适合我这个 Hobby Project 技术栈。另一方面,用第三方引擎就不符合 [从零开始] 的设定了 hh 。
    lian3204321
        4
    lian3204321  
       177 天前
    为啥不用现成的引擎呢?快速的实现游戏玩法和内容才是最重要的吧
    vipqiudaoyu
        5
    vipqiudaoyu  
       177 天前
    标记学习
    TechArtLife
        6
    TechArtLife  
    OP
       177 天前
    @lian3204321 作为一个 Hobby 项目,主要目的是学习研究,所以更强调从零开始的这个过程。如果目标是要做个注重销量的游戏项目,使用成熟的引擎确实更方便些。
    terrytang1
        7
    terrytang1  
       176 天前
    我想知道 op 是业余时间搞这个嘛
    cs3230524
        8
    cs3230524  
       176 天前
    改成:开发一个完整的游戏项目并盈利。op 感觉如何
    pipixiarwksb
        9
    pipixiarwksb  
       176 天前
    文档挺好看的,用什么做的啊
    batyu
        10
    batyu  
       176 天前
    关注一下,静待更新
    TechArtLife
        11
    TechArtLife  
    OP
       176 天前
    @terrytang1 是的,抽空搞搞
    TechArtLife
        12
    TechArtLife  
    OP
       176 天前
    @cs3230524 做一个完整的项目容易,再进一步就太难了。
    TechArtLife
        13
    TechArtLife  
    OP
       176 天前
    @pipixiarwksb VitePress
    louise135
        14
    louise135  
       174 天前
    我劝 OP 技术选型要慎重,主流的 Unity 或者 Cocos 要不再考虑下.
    有什么问题我们可以多交流
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   2463 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 21ms · UTC 16:01 · PVG 00:01 · LAX 08:01 · JFK 11:01
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.