summaryrefslogtreecommitdiffstats
path: root/examples/README.md
diff options
context:
space:
mode:
authorTim Foley <tfoleyNV@users.noreply.github.com>2021-03-30 12:31:06 -0700
committerGitHub <noreply@github.com>2021-03-30 12:31:06 -0700
commitf30c6e3b0c4f4f4e79bc50382ce54b0faa15ff51 (patch)
tree5157e2bb0d50b3992dc0a24831c885734c4f18f3 /examples/README.md
parent9fed1f30e20991768858a8b2fd87ca00756d0a42 (diff)
Organize landing page (#1769)
The landing page (`README.md`) has been growing larger and less tidy over time as we try to cram more and more information into it. This change makes a few edits to try to make the landing page shorter and more to the point: * Streamline the opening lines and try to make them focus on the credibility of the system * Break off the list of major features into its own subsection and try to highlight the ones that our current users say they benefit from the most * Move a lot of the information about documentation, examples, Shader Playground, etc. into their own sub-pages to avoid clutter * Break out the list of dependencies in the `License` section to make sure we are being accurate With this change the landing page links to the User's Guide directly, so we probably need to get that rendering nicely ASAP.
Diffstat (limited to 'examples/README.md')
-rw-r--r--examples/README.md13
1 files changed, 13 insertions, 0 deletions
diff --git a/examples/README.md b/examples/README.md
new file mode 100644
index 000000000..579794be1
--- /dev/null
+++ b/examples/README.md
@@ -0,0 +1,13 @@
+Slang Examples
+==============
+
+This directory contains small example programs showing how to use the Slang language, compiler, and API.
+
+* The [`hello-world`](hello-world/) example shows a minimal example of using Slang shader code more or less like HLSL.
+
+* The [`shader-object`](shader-object/) example shows how Slang's support for interface types can be used to implement shader specialization with simpler logic than preprocessor-based techniques.
+
+* The [`gpu-printing`](gpu-printing/) example shows how Slang's support for string literals can be used to implement a cross-API "GPU `printf`" solution
+
+Most of the examples presented here use a software layer called `gfx` (exposed via `slang-gfx.h`) to abstract over the differences between various target APIs/platforms (D3D11, D3D12, OpenGL, Vulkan, CUDA, and CPU).
+Using `gfx` is not a requirement for using Slang, but it provides a concrete example of how tight integration of Slang's features into a GPU abstraction layer can provide for a clean and usable application programming model. \ No newline at end of file