Skip to content

Commit 9637b05

Browse files
committed
docs: usage on readme
1 parent d2f33dc commit 9637b05

File tree

1 file changed

+61
-0
lines changed

1 file changed

+61
-0
lines changed

README.md

Lines changed: 61 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,2 +1,63 @@
11
# lilgpu
22
Lil wrapper to toy with WebGPU
3+
4+
## Usage
5+
See [examples](/example/).
6+
7+
### Browser
8+
```js
9+
import { initCanvas, d } from "https://esm.sh/gh/gnlow/lilgpu/browser.ts"
10+
11+
const g = await initCanvas({
12+
vertShader: `
13+
@vertex
14+
fn vs_main(@builtin(vertex_index) in_vertex_index: u32) -> @builtin(position) vec4<f32> {
15+
let x = f32(i32(in_vertex_index) - 1);
16+
let y = f32(i32(in_vertex_index & 1u) * 2 - 1);
17+
return vec4<f32>(x, y, 0.0, 1.0);
18+
}
19+
`,
20+
fragShader: `
21+
@fragment
22+
fn fs_main() -> @location(0) vec4<f32> {
23+
return vec4<f32>(1.0, 0.0, 0.0, 1.0);
24+
}
25+
`,
26+
canvas: document.querySelector("canvas"),
27+
})
28+
29+
g.draw(3)
30+
```
31+
32+
### Deno
33+
```ts
34+
import { initDeno } from "https://esm.sh/gh/gnlow/lilgpu/deno.ts"
35+
36+
const g = await initDeno({
37+
vertShader: `
38+
@vertex
39+
fn vs_main(@builtin(vertex_index) in_vertex_index: u32) -> @builtin(position) vec4<f32> {
40+
let x = f32(i32(in_vertex_index) - 1);
41+
let y = f32(i32(in_vertex_index & 1u) * 2 - 1);
42+
return vec4<f32>(x, y, 0.0, 1.0);
43+
}
44+
`,
45+
fragShader: `
46+
@fragment
47+
fn fs_main() -> @location(0) vec4<f32> {
48+
return vec4<f32>(1.0, 0.0, 0.0, 1.0);
49+
}
50+
`,
51+
width: 200,
52+
height: 200,
53+
})
54+
55+
g.draw(3)
56+
57+
await Deno.writeFile("./triangle.png", await g.getImage())
58+
```
59+
60+
#### Jupyter
61+
```ts
62+
await g.getImage() // Uint8Array
63+
```

0 commit comments

Comments
 (0)