FromWorld

Trait FromWorld 

Source
pub trait FromWorld {
    // Required method
    fn from_world(world: &mut World) -> Self;
}
Expand description

Creates an instance of the type this trait is implemented for using data from the supplied World.

This can be helpful for complex initialization or context-aware defaults.

FromWorld is automatically implemented for any type implementing Default and may also be derived for:

  • any struct whose fields all implement FromWorld
  • any enum where one variant has the attribute #[from_world]

#[derive(Default)]
struct A;

#[derive(Default)]
struct B(Option<u32>)

struct C;

impl FromWorld for C {
    fn from_world(_world: &mut World) -> Self {
        Self
    }
}

#[derive(FromWorld)]
struct D(A, B, C);

#[derive(FromWorld)]
enum E {
    #[from_world]
    F,
    G
}

Required Methods§

Source

fn from_world(world: &mut World) -> Self

Creates Self using data from the given World.

Dyn Compatibility§

This trait is not dyn compatible.

In older versions of Rust, dyn compatibility was called "object safety", so this trait is not object safe.

Implementations on Foreign Types§

Source§

impl FromWorld for BlitPipeline

Source§

fn from_world(render_world: &mut World) -> BlitPipeline

Source§

impl FromWorld for CasNode

Source§

fn from_world(world: &mut World) -> CasNode

Source§

impl FromWorld for CasPipeline

Source§

fn from_world(render_world: &mut World) -> CasPipeline

Source§

impl FromWorld for DepthOfFieldGlobalBindGroupLayout

Source§

impl FromWorld for DepthPyramidDummyTexture

Source§

impl FromWorld for DownsampleDepthNode

Source§

impl FromWorld for FxaaPipeline

Source§

fn from_world(render_world: &mut World) -> FxaaPipeline

Source§

impl FromWorld for MotionBlurPipeline

Source§

fn from_world(render_world: &mut World) -> MotionBlurPipeline

Source§

impl FromWorld for OitResolvePipeline

Source§

impl FromWorld for OitBuffers

Source§

impl FromWorld for PostProcessingPipeline

Source§

impl FromWorld for SmaaPipelines

Source§

impl FromWorld for TonemappingPipeline

Source§

fn from_world(render_world: &mut World) -> TonemappingPipeline

Source§

impl FromWorld for AtmosphereSamplers

Source§

impl FromWorld for GlobalClusterableObjectMeta

Source§

impl FromWorld for DeferredLightingLayout

Source§

impl FromWorld for RenderLightmaps

Source§

impl FromWorld for FallbackBindlessResources

Source§

impl FromWorld for EarlyGpuPreprocessNode

Source§

impl FromWorld for EarlyPrepassBuildIndirectParametersNode

Source§

impl FromWorld for LateGpuPreprocessNode

Source§

impl FromWorld for LatePrepassBuildIndirectParametersNode

Source§

impl FromWorld for MainBuildIndirectParametersNode

Source§

impl FromWorld for PreprocessPipelines

Source§

impl FromWorld for EarlyShadowPassNode

Source§

impl FromWorld for LateShadowPassNode

Source§

impl FromWorld for ShadowPassNode

Source§

impl FromWorld for ShadowSamplers

Source§

impl FromWorld for MeshPipeline

Source§

impl FromWorld for MeshPipelineViewLayouts

Source§

impl FromWorld for SkinUniforms

Source§

impl FromWorld for ScreenSpaceReflectionsPipeline

Source§

impl FromWorld for Wireframe3dPipeline

Source§

fn from_world(render_world: &mut World) -> Wireframe3dPipeline

Source§

impl FromWorld for GpuPreprocessingSupport

Source§

impl FromWorld for MeshAllocator

Source§

impl FromWorld for FallbackImage

Source§

impl FromWorld for FallbackImageCubemap

Source§

impl FromWorld for FallbackImageZero

Source§

impl FromWorld for ViewUniforms

Source§

impl FromWorld for ScreenshotToScreenPipeline

Source§

impl FromWorld for SceneLoader

Source§

impl FromWorld for Mesh2dPipeline

Source§

impl FromWorld for Wireframe2dPipeline

Source§

fn from_world(render_world: &mut World) -> Wireframe2dPipeline

Source§

impl FromWorld for SpritePipeline

Source§

impl FromWorld for BoxShadowPipeline

Source§

impl FromWorld for UiPipeline

Source§

impl FromWorld for UiTextureSlicePipeline

Source§

impl<M> FromWorld for MaterialBindGroupAllocator<M>
where M: Material,

Source§

impl<M> FromWorld for MaterialPipeline<M>
where M: Material,

Source§

impl<M> FromWorld for PrepassPipeline<M>
where M: Material,

Source§

impl<M> FromWorld for Material2dPipeline<M>
where M: Material2d,

Source§

impl<M> FromWorld for UiMaterialPipeline<M>
where M: UiMaterial,

Source§

impl<N> FromWorld for ViewNodeRunner<N>
where N: ViewNode + FromWorld,

Implementors§