#抗锯齿 #gfx #图形 #smaa

gfx_smaa

基于SMAA的后处理抗锯齿库

3个不稳定版本

使用旧Rust 2015

0.2.1 2018年10月5日
0.2.0 2018年8月6日
0.1.0 2018年1月28日

#158渲染

MIT 许可协议

1MB
16K SLoC

gfx_smaa crates.io docs.rs Travis

基于gfx-rs图形API的后处理抗锯齿库,基于SMAA参考实现。目前仅支持OpenGL 3+,但计划支持其他图形API。

示例

// create window
let mut window: PistonWindow = WindowSettings::new("SMAA", (640, 480)).build().unwrap();

// create target
let mut target = SmaaTarget::<_>::new(&mut window.factory,
                                      window.output_color.clone(),
                                      640, 480).unwrap();

// main loop
while let Some(e) = window.next() {
    window.draw_3d(&e, |window| {
        // clear depth and color buffers.
        window.encoder.clear_depth(&target.output_depth(), 1.0);
        window.encoder.clear(&target.output_color(), [0.0, 0.0, 0.0, 1.0]);

        // Render the scene.
        ...

        // Perform actual antialiasing operation and write the result to the screen.
        target.resolve(&mut window.encoder);
     });
}

依赖

~2.5MB
~58K SLoC