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. --- docs/README.md | 36 ++++++++++++++++++++++++++++++++++++ 1 file changed, 36 insertions(+) create mode 100644 docs/README.md (limited to 'docs/README.md') diff --git a/docs/README.md b/docs/README.md new file mode 100644 index 000000000..194c08baf --- /dev/null +++ b/docs/README.md @@ -0,0 +1,36 @@ +Slang Documentation +=================== + +This directory contains documentation for the Slang system. +Some of the documentation is intended for users of the language and compiler, while other documentation is intended for developers contributing to the project. + +Getting Started +--------------- + +The Slang [User's Guide](https://shader-slang.github.io/slang/user-guide/) provides an introduction to the Slang language and its major features. + +The [API user's guide](api-users-guide.md) gives information on how to drive Slang programmatically from an application. +There is also documentation specific to using the [`slangc`](command-line-slangc.md) command-line tool. + +Advanced Users +-------------- + +For the benefit of advanced users we provide detailed documentation on how Slang compiles code for specific platforms. +The [target compatibility guide](target-compatibility.md) gives an overview of feature compatibility for targets. + +The [CPU target guide](cpu-target.md) gives information on compiling Slang or C++ source into shared libraries/executables or functions that can be directly executed. It also covers how to generate C++ code from Slang source. + +The [CUDA target guide](cuda-target.md) provides information on compiling Slang/HLSL or CUDA source. Slang can compile to equivalent CUDA source, as well as to PTX via the nvrtc CUDA complier. + +Contributors +------------ + +For contributors to the Slang project, the information under the [`design/`](design/) diretory may help explain the rationale behind certain design decisions and help when ramping up in the codebase. + +Research +-------- + +The Slang project is based on a long history of research work. While understanding this research is not necessary for working with Slang, it may be instructive for understanding the big-picture goals of the language, as well as why certain critical decisions were made. + +A [paper](http://graphics.cs.cmu.edu/projects/slang/) on the Slang system was accepted into SIGGRAPH 2018, and it provides an overview of the language and the compiler implementation. +Yong He's [dissertation](http://graphics.cs.cmu.edu/projects/renderergenerator/yong_he_thesis.pdf) provided more detailed discussion of the design of the Slang system. -- cgit v1.2.3