#图形 #wgpu #truck #utility #shader #applications #sample

truck-platform

基于 wgpu 的图形实用库

6 个版本 (破坏性更新)

0.5.0 2022 年 12 月 21 日
0.4.0 2022 年 5 月 24 日
0.3.0 2021 年 12 月 4 日
0.2.1 2021 年 2 月 28 日
0.1.0 2020 年 12 月 28 日

#896图形 API

每月 39 次下载
用于 truck-rendimpl

Apache-2.0

135KB
2K SLoC

truck-platform

Crates.io Docs.rs

基于 wgpu 的图形实用库。

示例代码

wgsl-sandbox

通过在新的结构体中实现 "Rendered" 来创建渲染对象的示例。

可以使用以下方式使用 xyr WGSL 着色器

  • 在执行程序时将着色器路径作为参数输入。
  • 将着色器拖放到窗口中。

着色器的规则

  • 可以通过实现以下函数来绘制图像
vec4<f32> main_image(coord: vec2<f32>, env: Environment);
  • 参数 coord 是片段坐标。原点是左下角。
  • 参数 env 包含环境信息。结构的声明如下
struct Environment {
    resolution: vec2<f32>;  // the resolution of the image
    mouse: vec4<f32>;       // the mouse information behaving the same as `iMouse` in Shadertoy.
    time: f32;              // the number of seconds since the application started.
};

还可以参考 examples 中的示例 newton-cuberoot.wgsl,默认着色器。

依赖项

~6–20MB
~285K SLoC