DreamShader documentation
DreamShader documentation
DreamShader documentation
This directory is the English source for the DreamShader manual. Tutorials and reference pages live together by topic and can be read here on GitHub or in a local Markdown reader. The documentation site publishes these English sources and the reviewed Chinese translations maintained in this plugin.
Start here
- About DreamShader — the plugin, its modules and supported engines.
- Installation — install, enable and check the plugin.
- Your first material — author and find a generated material.
- Project layout — source roots, folders and files.
- Daily workflow — save, compile, regenerate and diagnose.
The compact getting-started reference remains available for a quick setup.
Topics
| Topic | Guides and reference |
|---|---|
| Language | DreamShaderLang 2.0; 1.x reference, blocks, sections, functions |
| Graphs | Statements, expressions and calls |
| Nodes and parameters | Builtins, parameters, settings |
| Generation | Pipeline and asset lifecycle, output bindings, source control |
| Examples | Reference examples, patterns, recipes, Custom Pass examples |
| Tools | Editor tools, VSCode and Rider, commandlet |
| Custom Pass | Runtime, HLSL passes, pipeline language |
| Diagnostics | Error and warning lookup, limitations |
| Development | C++ API, contributing, testing, release |
| Release history | Version notes with explanations, repository changelog |
The complete reference index lists the individual technical reference pages.
Maintaining the manual
Edit the English Markdown in the relevant topic directory. Keep examples, identifiers and relative links usable in the plugin repository; website presentation belongs to the documentation site.
The site's docs-sync/config.json maps source paths to published page IDs. Moving a source file
requires updating that mapping and incoming relative links, while retaining its page ID to keep
existing URLs stable. English pages are generated from these sources; AI-generated Chinese updates
are reviewed in a pull request before publication.
A release also updates the release notes page: it is written for readers of
the manual — what changes for them, with links into the pages — and is not a copy of CHANGELOG.md, so
neither file is generated from the other. Bump its Current release row and add the version's section
when CHANGELOG.md gets one; pages that name the current release, such as
Limitations, are reviewed at the same time.
The zh-CN/ tree mirrors English source paths. Imported translations are unreviewed; the initial migration snapshot preserves the original imported and missing translation lists. For current status, run python -B Docs/translation-status.py or check the translation status issue in the website repository. .translations/ records source versions without treating an import as approval. Website-only notes remain in the website repository.
Check translation status locally with python -B Docs/translation-status.py; add --all to include every source or --json for structured output. This read-only tool does not need the website repository or a Git checkout.