32个版本
0.7.7 | 2021年9月22日 |
---|---|
0.7.6 | 2021年3月27日 |
0.7.5 | 2020年9月30日 |
0.7.3 | 2020年2月24日 |
0.4.3 | 2018年11月19日 |
#134 在 渲染 中
在 2 crate 中使用
135KB
395 行
描述
此库提供了一种缓冲区类型 RenderBuffer
,可将其用作Piston图形库的渲染目标。此缓冲区可以从磁盘上的文件加载或保存。这允许在游戏中进行截图等操作。
还有一个可选功能,允许将 RenderBuffer
转换为 G2dTexture
,以便可以使用 piston_window
进行渲染。要启用此功能,请在 cargo.toml
中的 graphics_buffer
依赖项中添加 features = ["piston_window_texture"]
。
用法
将其添加到您的 cargo.toml
graphics_buffer = "0.6.0"
piston2d-graphics = "0.30.0"
或者,如果您想使用 piston_window
在窗口中绘制纹理
graphics_buffer = { version = "0.6.0", features = ["piston_window_texture"] }
piston2d-graphics = "0.30.0"
piston_window = "0.89.0"
以下是一个简单的示例,它绘制了三个圆并保存到文件中
use graphics::ellipse;
use graphics_buffer::*;
fn main() {
// Create a new RenderBuffer
let mut buffer = RenderBuffer::new(100, 100);
buffer.clear([0.0, 0.0, 0.0, 0.0]);
// Big red circle
ellipse(
[1.0, 0.0, 0.0, 0.7],
[0.0, 0.0, 100.0, 100.0],
IDENTITY,
&mut buffer,
);
// Small blue circle
ellipse(
[0.0, 0.0, 1.0, 0.7],
[0.0, 0.0, 50.0, 50.0],
IDENTITY,
&mut buffer,
);
// Small green circle
ellipse(
[0.0, 1.0, 0.0, 0.7],
[50.0, 50.0, 50.0, 50.0],
IDENTITY,
&mut buffer,
);
// Save the buffer
buffer.save("circles.png").unwrap();
}
贡献
如果您想贡献,请随时打开一个问题或PR。肯定有改进的地方,特别是在渲染代码方面。
依赖项
~7–15MB
~155K SLoC