Skip to content
This repository has been archived by the owner on Feb 17, 2024. It is now read-only.

v0.0.1

Pre-release
Pre-release
Compare
Choose a tag to compare
@ShenMian ShenMian released this 27 Jul 05:27

概述

该版本的框架和 v0.0.0 版本相比有着较大的改变, 变得更加现代和灵活. 添加了窗体, 不再仅支持终端窗口.

架构

  • Entity-Component-System. 前期使用第三方库 EnTT, 后期使用自带的 ECS.

构建

  • 使用 'CMake' 构建可执行文件.
  • 使用 'Premake5' 构建项目工程文件, 包括 gmake, Xcode, Visual Studio.
  • 在 'Script/' 中提供了若干脚本方便用户快速构建.

音频

  • 使用了第三方 OpenAL 添加了音频相关实现.
  • 支持 WAV 格式音频文件.
  • 支持 2D 空间音频, 多普勒效应.

渲染

  • 使用了第三方 OpenGL 作为渲染 API.
  • 使用了第三方 GLAD 作为多渲染 API 加载器.
  • 使用了第三方 GLFW 作为多平台窗口 API.
  • 使用了第三方 Dear ImGui 作为支持多渲染 API 的 GUI.

重大改变

  • 文件/文件夹命名规范改为大写字母开头.
  • 命令行下的实现被转移到了 Source/Clem/Rendering/Console 中.
  • Application 中大部分职责被分配到 Main 中, 只保留了应该具有的功能.
  • Entity 操作的实现都被分配到了 System 的派生类中, 由 Registry 统一管理.
  • 组件有新 ECS 系统管理, 不再继承于 Component.

详情请查看 Compare.