From f30c6e3b0c4f4f4e79bc50382ce54b0faa15ff51 Mon Sep 17 00:00:00 2001 From: Tim Foley Date: Tue, 30 Mar 2021 12:31:06 -0700 Subject: 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. --- examples/README.md | 13 +++++++++++++ 1 file changed, 13 insertions(+) create mode 100644 examples/README.md (limited to 'examples/README.md') 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 -- cgit v1.2.3