docs: add `v shader` section, add help text (#12594)
parent
969e0dce20
commit
5deb56fc79
|
@ -90,7 +90,7 @@ fn main() {
|
|||
show_help: fp.bool('help', `h`, false, 'Show this help text.')
|
||||
force_update: fp.bool('force-update', `u`, false, 'Force update of the sokol-shdc tool.')
|
||||
verbose: fp.bool('verbose', `v`, false, 'Be verbose about the tools progress.')
|
||||
slangs: fp.string_multi('slang', `l`, 'Shader dialects to generate code for. Default is all. Available: $supported_slangs')
|
||||
slangs: fp.string_multi('slang', `l`, 'Shader dialects to generate code for. Default is all.\n Available dialects: $supported_slangs')
|
||||
}
|
||||
if opt.show_help {
|
||||
println(fp.usage())
|
||||
|
|
|
@ -0,0 +1,17 @@
|
|||
Usage:
|
||||
v shader [options] [DIRECTORY / FILE]
|
||||
|
||||
Examples:
|
||||
v shader .
|
||||
v shader examples/sokol/02_cubes_glsl/cube_glsl.glsl
|
||||
|
||||
Compile shaders in sokol's annotated GLSL format to C headers for use with sokol based apps.
|
||||
Sokol based apps include all apps using V's gg module.
|
||||
|
||||
Options:
|
||||
-h, --help Show this help text.
|
||||
-v, --verbose Be verbose about the tools progress.
|
||||
-u, --force-update Force update of the sokol-shdc tool.
|
||||
-l, --slang <multiple strings> Shader dialects to generate code for. Default is all.
|
||||
Available: 'glsl330', 'glsl100', 'glsl300es', 'hlsl4', 'hlsl5', 'metal_macos', 'metal_ios', 'metal_sim', 'wgpu'
|
||||
|
14
doc/docs.md
14
doc/docs.md
|
@ -124,6 +124,7 @@ For more details and troubleshooting, please visit the [vab GitHub repository](h
|
|||
* [Writing documentation](#writing-documentation)
|
||||
* [Tools](#tools)
|
||||
* [v fmt](#v-fmt)
|
||||
* [v shader](#v-shader)
|
||||
* [Profiling](#profiling)
|
||||
* [Package Management](#package-management)
|
||||
* [Publish package](#publish-package)
|
||||
|
@ -4121,6 +4122,19 @@ A vfmt run is usually pretty cheap (takes <30ms).
|
|||
|
||||
Always run `v fmt -w file.v` before pushing your code.
|
||||
|
||||
### v shader
|
||||
|
||||
You can use GPU shaders with V graphical apps. You write your shaders in an
|
||||
[annotated GLSL dialect](https://github.com/vlang/v/blob/1d8ece7/examples/sokol/02_cubes_glsl/cube_glsl.glsl)
|
||||
and use `v shader` to compile them for all supported target platforms.
|
||||
|
||||
```shell
|
||||
v shader /path/to/project/dir/or/file.v
|
||||
```
|
||||
|
||||
Currently you need to include a header and declare a glue function before
|
||||
using the shader in your code.
|
||||
|
||||
### Profiling
|
||||
|
||||
V has good support for profiling your programs: `v -profile profile.txt run file.v`
|
||||
|
|
Loading…
Reference in New Issue