跳转至

游戏开发

基本概念

游戏(在本文应该称为电子游戏)是一种带有交互性质的文化艺术产品,通常包含以下几个部分

  • 程序,电子游戏显然应该是一个可以运行的软件应用
  • 资源,包括美术、音乐、文本等各种资源
  • 策划,或者叫游戏性。比如游戏玩法、关卡设计、数值规划等

本文只重点关注 程序 这一部分。

主要技术

图形学

由于实时交互的要求,游戏相当依赖图形技术,通常都要使用底层图形 API。目前主流的图形 API 大概有 OpenGL/Vulkan/DirectX/Metal 这几种。

GUI 应用章节提到过,图形 API 是一种非常低级的抽象,为了提高开发效率我们需要更高级的抽象。传统的 GUI 框架也可以用来开发游戏应用,但考虑性能等各种问题,游戏引擎通常是更好的选择。

如果游戏不存在性能问题,也可以考虑使用基于浏览器的 UI,目前这项技术已经足够成熟了。

游戏引擎

游戏引擎是为游戏开发者提供的集成开发环境,集成了 图形渲染物理模拟资源管理游戏脚本 等核心功能,可以大幅提升开发效率