25个重大发布

0.27.0 2022年4月23日
0.25.1 2022年3月25日
0.23.0 2021年12月25日
0.22.0 2021年10月19日
0.2.0 2019年3月17日

#1101 in 游戏开发


用于 3 crates

MIT/Apache

505KB
10K SLoC

🐶 KEESHOND游戏引擎 🐶

关于

基什翁德是一个注重简洁、灵活和性能的2D游戏引擎。

还可以查看基什翁德零食,以获取更多有助于您制作游戏更快的额外工具!

基什翁德目前针对Windows、Linux和通过Emscripten的Web。它也应该在macOS上工作,但这一点主要未经测试。

入门

查看基什翁德书籍:https://cosmicchipsocket.com/keeshond_book

项目目标

  • 在2010年的硬件上运行良好
  • 系统间的确定性游戏逻辑,对速跑者很重要
  • 实现游戏所需的功能,而不添加不必要的复杂性
  • 通过SDL2提供一流的Linux支持

当前功能

  • 具有固定时间步同步的游戏循环
  • 专为解耦游戏/绘图逻辑设计的自定义ECS系统
  • 鼠标、键盘和游戏手柄输入系统
  • 高达400k个精灵,每秒60帧(取决于硬件和其他因素)
  • 从文件系统和zip/pk3文件加载资产
  • 通过OpenAL的音频系统
  • 分辨率无关的视口缩放,保持宽高比
  • 可选的像素上采样,带有非整数软化,适用于新复古游戏
  • 可选的imgui集成

keeshond_treats补充功能

  • 精灵动画系统
  • 基于精灵的文本
  • 瓦片地图
  • 具有快速粗略碰撞的对象到对象碰撞
  • 关卡格式和关卡编辑器

即将到来的功能

  • 多人游戏手柄输入
  • 音频流
  • 瓦片地图碰撞

性能说明

在开发过程中,您应该使用至少1级的优化级别构建,否则编译器可能不会生成足够快的代码,以使您的游戏可玩

[profile.dev]
opt-level = 1

[profile.release]
opt-level = 3
lto = true

运行示例

为了使示例加载其资源,请在keeshond目录内运行它们。

cd keeshond
cargo run --example doggymark

许可

以下任一许可下许可

根据您的选择。

贡献

除非您明确声明,否则您根据Apache-2.0许可证定义的任何有意提交以包含在作品中的贡献,应按上述方式双许可,不得添加任何额外的条款或条件。

依赖项

~26–39MB
~684K SLoC