pub struct ShaderWorkspace {Show 21 fields
pub registry: ShaderProgramRegistry,
pub cache: ShaderCache,
pub library: ShaderLibrary,
pub material_lib: MaterialLibrary,
pub texture_reg: TextureRegistry,
pub buffer_reg: BufferRegistry,
pub pipeline: RenderPipeline,
pub post_process: PostProcessStack,
pub template_lib: ShaderTemplateLibrary,
pub linter: ShaderLinter,
pub formatter: ShaderFormatter,
pub debugger: ShaderDebugger,
pub profiler: ShaderProfiler,
pub hot_reload: HotReloadManager,
pub editor_state: ShaderEditorState,
pub autocomplete: AutoCompleteProvider,
pub linker: ShaderLinker,
pub bundle_reg: ShaderBundleRegistry,
pub feature_flags: RenderFeatureFlags,
pub memory_budget: GpuMemoryBudget,
pub render_stats: RenderStatistics,
}Fields§
§registry: ShaderProgramRegistry§cache: ShaderCache§library: ShaderLibrary§material_lib: MaterialLibrary§texture_reg: TextureRegistry§buffer_reg: BufferRegistry§pipeline: RenderPipeline§post_process: PostProcessStack§template_lib: ShaderTemplateLibrary§linter: ShaderLinter§formatter: ShaderFormatter§debugger: ShaderDebugger§profiler: ShaderProfiler§hot_reload: HotReloadManager§editor_state: ShaderEditorState§autocomplete: AutoCompleteProvider§linker: ShaderLinker§bundle_reg: ShaderBundleRegistry§feature_flags: RenderFeatureFlags§memory_budget: GpuMemoryBudget§render_stats: RenderStatisticsImplementations§
Source§impl ShaderWorkspace
impl ShaderWorkspace
pub fn new() -> Self
pub fn program_count(&self) -> usize
pub fn material_count(&self) -> usize
pub fn texture_count(&self) -> usize
pub fn buffer_count(&self) -> usize
pub fn begin_frame(&mut self)
pub fn has_program(&self, name: &str) -> bool
pub fn tick(&mut self, dt: f32)
Trait Implementations§
Source§impl Clone for ShaderWorkspace
impl Clone for ShaderWorkspace
Source§impl Debug for ShaderWorkspace
impl Debug for ShaderWorkspace
Auto Trait Implementations§
impl Freeze for ShaderWorkspace
impl RefUnwindSafe for ShaderWorkspace
impl Send for ShaderWorkspace
impl Sync for ShaderWorkspace
impl Unpin for ShaderWorkspace
impl UnsafeUnpin for ShaderWorkspace
impl UnwindSafe for ShaderWorkspace
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
impl<ST, DT> CastableFrom<ST, Initialized, Initialized> for DT
impl<ST, DT> CastableFrom<ST, Uninit, Uninit> for DT
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<T> Downcast for Twhere
T: Any,
impl<T> Downcast for Twhere
T: Any,
Source§fn into_any(self: Box<T>) -> Box<dyn Any>
fn into_any(self: Box<T>) -> Box<dyn Any>
Convert
Box<dyn Trait> (where Trait: Downcast) to Box<dyn Any>. Box<dyn Any> can
then be further downcast into Box<ConcreteType> where ConcreteType implements Trait.Source§fn into_any_rc(self: Rc<T>) -> Rc<dyn Any>
fn into_any_rc(self: Rc<T>) -> Rc<dyn Any>
Convert
Rc<Trait> (where Trait: Downcast) to Rc<Any>. Rc<Any> can then be
further downcast into Rc<ConcreteType> where ConcreteType implements Trait.Source§fn as_any(&self) -> &(dyn Any + 'static)
fn as_any(&self) -> &(dyn Any + 'static)
Convert
&Trait (where Trait: Downcast) to &Any. This is needed since Rust cannot
generate &Any’s vtable from &Trait’s.Source§fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
Convert
&mut Trait (where Trait: Downcast) to &Any. This is needed since Rust cannot
generate &mut Any’s vtable from &mut Trait’s.