1 个不稳定版本
0.1.0 | 2023年10月25日 |
---|
#1060 in 图形API
18KB
479 行
SoftTri
一个软件三角形渲染器
待办事项
- 抗锯齿
- 向量指令集(SIMD)
lib.rs
:
概述
一个软件三角形渲染器
示例
let width = 1280;
let height = 720;
let v0 = Vertex::new(
[width as f32 / 2.0, 1.0].into(),
[1.0, 0.0, 0.0, 1.0].into(),
[0.0, 0.0].into(),
);
let v1 = Vertex::new(
[1.0, height as f32 - 1.0].into(),
[0.0, 1.0, 0.0, 1.0].into(),
[1.0, 0.0].into(),
);
let v2 = Vertex::new(
[width as f32 - 1.0, height as f32 - 1.0].into(),
[0.0, 0.0, 1.0, 1.0].into(),
[1.0, 1.0].into(),
);
let mut canvas = SoftTriCanvas::new(width, height, TextureFormat::RGBA);
canvas.draw_tri(v0, v1, v2, None);
// draw to a window/image using canvas.buffer
依赖项
~2.5MB
~45K SLoC