7个版本 (4个重大更新)
0.5.0 | 2022年7月25日 |
---|---|
0.4.0 | 2022年7月23日 |
0.3.1 | 2022年7月23日 |
0.2.1 | 2022年7月20日 |
0.0.1 | 2022年5月31日 |
#844 in 图形API
每月28次下载
用于 egui_pigeon
1MB
2.5K SLoC
鸽子
一个简单、灵活、跨平台的2D渲染库。
为什么
鸽子的发展主要是由AVN图形后端的需求驱动的。然而,我也想将其与AVN分开,以便在其他项目中使用。
设计
我希望它简单、小巧、可移植和灵活。鸽子不是为了管理你的应用和创建窗口而设计的,它只是在屏幕上很好地绘制形状(或者尽可能好)。
你可以在示例文件夹中看到一些示例
目标
- 简单:你创建形状,并将它们交给相应的管道函数
- 灵活:允许添加自定义管道和图形,并让鸽子自动渲染它们
- 可移植: 待办事项 使用Web Assembly和其他平台进行测试。
非目标
- 图形引擎:鸽子设计为一个可以修改以满足你需求的组件
- 超级闪电4并行宇宙优化:我还在学习图形编程,我没有这方面的知识。我已经做了我认为是合理程度的优化,并且不打算进一步扩展它
鸽子实现了一种形式的自动批处理,将使用同一管道渲染的所有图形组合成一个大的顶点和索引数组。然后根据纹理进行排序,以最小化渲染期间纹理绑定组的交换。
鸽子设计得尽可能少内置功能,但具有使用parrot扩展自己的管道和使用鸽子扩展自己的图形的能力。
未来计划
探索Web Assembly
免责声明
我非常新于图形编程,这更多或更少是我增加理解的努力。自行承担风险。此外,API仍然不稳定,容易发生变化
依赖关系
~9–22MB
~298K SLoC