21个版本 (破坏性更新)
0.15.0 | 2021年7月27日 |
---|---|
0.13.0 | 2021年1月17日 |
0.12.0 | 2020年2月12日 |
0.11.0 | 2019年7月3日 |
0.1.1 | 2017年2月25日 |
#2 in #vulkano
每月140次下载
在 2 crates 中使用
425KB
266 代码行数(不包括注释)
Vulkano Text
如果你在用Vulkano构建游戏原型并希望快速添加基本的文本渲染,这个库很有用
- 只能使用DejaVu字体
- 文本将渲染在swapchain图像的内容之上(没有深度缓冲区或绘制顺序)
用法
以下是从triangle.rs示例中提取的相关行。
导入库
extern crate vulkano_text;
use vulkano_text::{DrawText, DrawTextTrait};
创建DrawText
let mut draw_text = DrawText::new(device.clone(), queue.clone(), swapchain.clone(), &images);
通过调用queue_text指定要绘制的文本
draw_text.queue_text(200.0, 50.0, 20.0, [1.0, 1.0, 1.0, 1.0], "The quick brown fox jumps over the lazy dog.");
draw_text.queue_text(20.0, 200.0, 190.0, [0.0, 1.0, 1.0, 1.0], "Hello world!");
draw_text.queue_text(x, 350.0, 70.0, [0.51, 0.6, 0.74, 1.0], "Lenny: ( ͡° ͜ʖ ͡°)");
draw_text.queue_text(50.0, 350.0, 70.0, [1.0, 1.0, 1.0, 1.0], "Overlap");
在游戏渲染流程之后调用AutoCommandBufferBuilder上的draw_text
.draw_text(&mut draw_text, image_num)
当你重建swapchain时,例如由于窗口大小调整,也需要重建DrawText
示例渲染
依赖项
~42MB
~1M SLoC