doc: update librashader::reflect docs
This commit is contained in:
parent
2323b18710
commit
0fde712f3c
|
@ -115,14 +115,13 @@ pub mod preprocess {
|
||||||
/// #![feature(type_alias_impl_trait)]
|
/// #![feature(type_alias_impl_trait)]
|
||||||
/// mod compile {
|
/// mod compile {
|
||||||
/// use std::error::Error;
|
/// use std::error::Error;
|
||||||
/// use librashader_preprocess::ShaderSource;
|
/// use librashader::preprocess::ShaderSource;
|
||||||
/// use librashader_presets::ShaderPreset;
|
/// use librashader::presets::ShaderPreset;
|
||||||
/// use librashader_reflect::back::{CompileReflectShader, FromCompilation};
|
/// use librashader::reflect::{CompileReflectShader, FromCompilation, CompilePresetTarget, ShaderPassArtifact};
|
||||||
/// use librashader_reflect::back::targets::SPIRV;
|
/// use librashader::reflect::targets::SPIRV;
|
||||||
/// use librashader_reflect::front::SpirvCompilation;
|
/// use librashader::reflect::SpirvCompilation;
|
||||||
/// use librashader_reflect::reflect::cross::SpirvCross;
|
/// use librashader::reflect::cross::SpirvCross;
|
||||||
/// use librashader_reflect::reflect::presets::{CompilePresetTarget, ShaderPassArtifact};
|
/// use librashader::reflect::semantics::ShaderSemantics;
|
||||||
/// use librashader_reflect::reflect::semantics::ShaderSemantics;
|
|
||||||
///
|
///
|
||||||
/// type Artifact = impl CompileReflectShader<SPIRV, SpirvCompilation, SpirvCross>;
|
/// type Artifact = impl CompileReflectShader<SPIRV, SpirvCompilation, SpirvCross>;
|
||||||
/// type ShaderPassMeta = ShaderPassArtifact<Artifact>;
|
/// type ShaderPassMeta = ShaderPassArtifact<Artifact>;
|
||||||
|
@ -141,27 +140,20 @@ pub mod preprocess {
|
||||||
/// on `Artifact` is required.
|
/// on `Artifact` is required.
|
||||||
///
|
///
|
||||||
/// ```
|
/// ```
|
||||||
/// use librashader_reflect::back::CompileReflectShader;
|
/// use librashader::reflect::CompileReflectShader;
|
||||||
/// use librashader_reflect::back::targets::SPIRV;
|
/// use librashader::reflect::targets::SPIRV;
|
||||||
/// use librashader_reflect::front::SpirvCompilation;
|
/// use librashader::reflect::SpirvCompilation;
|
||||||
/// use librashader_reflect::reflect::cross::SpirvCross;
|
/// use librashader::reflect::cross::SpirvCross;
|
||||||
/// use librashader_reflect::reflect::presets::ShaderPassArtifact;
|
/// use librashader::reflect::ShaderPassArtifact;
|
||||||
///
|
///
|
||||||
/// type Artifact = Box<dyn CompileReflectShader<SPIRV, SpirvCompilation, SpirvCross> + Send>;
|
/// type Artifact = Box<dyn CompileReflectShader<SPIRV, SpirvCompilation, SpirvCross> + Send>;
|
||||||
/// type ShaderPassMeta = ShaderPassArtifact<Artifact>;
|
/// type ShaderPassMeta = ShaderPassArtifact<Artifact>;
|
||||||
/// ```
|
/// ```
|
||||||
///
|
///
|
||||||
/// ## What's with all the traits?
|
/// ## What's with all the traits?
|
||||||
/// librashader-reflect is designed to be frontend and backend agnostic.
|
/// librashader-reflect is designed to be compiler-agnostic. [naga](https://docs.rs/naga/latest/naga/index.html),
|
||||||
///
|
/// a pure-Rust shader compiler, as well as SPIRV-Cross via [SpirvCompilation](crate::front::SpirvCompilation)
|
||||||
/// Currently [SpirvCompilation](crate::reflect::SpirvCompilation),
|
/// is supported.
|
||||||
/// which does compilation of GLSL to SPIR-V via [glslang](https://github.com/KhronosGroup/glslang/) is the only
|
|
||||||
/// supported frontend.
|
|
||||||
///
|
|
||||||
/// In the future, we will allow [Naga](https://docs.rs/naga/latest/naga/index.html), a pure-Rust shader compiler,
|
|
||||||
/// as a frontend, when it has matured enough to support [the features librashader needs](https://github.com/gfx-rs/naga/issues/1012).
|
|
||||||
///
|
|
||||||
/// Both naga and SPIRV-Cross are supported as backends depending on the target.
|
|
||||||
pub mod reflect {
|
pub mod reflect {
|
||||||
/// Supported shader compiler targets.
|
/// Supported shader compiler targets.
|
||||||
pub mod targets {
|
pub mod targets {
|
||||||
|
|
Loading…
Reference in a new issue