SkyboxRendererPlugin

Struct SkyboxRendererPlugin 

Source
pub struct SkyboxRendererPlugin;

Trait Implementations§

Source§

impl Default for SkyboxRendererPlugin

Source§

fn default() -> SkyboxRendererPlugin

Returns the “default value” for a type. Read more
Source§

impl RenderFeaturePlugin for SkyboxRendererPlugin

Source§

fn feature_debug_constants(&self) -> &'static RenderFeatureDebugConstants

Source§

fn feature_index(&self) -> RenderFeatureIndex

Source§

fn is_view_relevant(&self, view: &RenderView) -> bool

Returns true if the RenderView should be included in the FramePacket for this RenderFeature. This is normally implemented by checking if the RenderView’s RenderPhaseMask includes the RenderPhases needed by the RenderFeature.
Source§

fn requires_visible_render_objects(&self) -> bool

Returns true if this RenderFeature requires at least one RenderObject associated with this RenderFeature in the RenderViewVisibilityQuery in order to include the RenderView in the FramePacket for this RenderFeature. This is normally true if the RenderFeature defines a RenderObjectSet and false otherwise.
Source§

fn configure_render_registry( &self, render_registry: RenderRegistryBuilder, ) -> RenderRegistryBuilder

Source§

fn initialize_static_resources( &self, renderer_load_context: &RendererLoadContext, asset_manager: &mut AssetManager, asset_resource: &mut AssetResource, _extract_resources: &ExtractResources<'_>, render_resources: &mut RenderResources, _upload: &mut RafxTransferUpload, ) -> RafxResult<()>

Source§

fn new_frame_packet( &self, frame_packet_size: &FramePacketSize, ) -> Box<dyn RenderFeatureFramePacket>

Allocates the memory for the FramePacket.
Source§

fn new_extract_job<'extract>( &self, extract_context: &RenderJobExtractContext<'extract>, frame_packet: Box<dyn RenderFeatureFramePacket>, ) -> Arc<dyn RenderFeatureExtractJob<'extract> + 'extract>

Returns a RenderFeatureExtractJob wrapping the FramePacket.
Source§

fn new_submit_packet( &self, frame_packet: &Box<dyn RenderFeatureFramePacket>, ) -> Box<dyn RenderFeatureSubmitPacket>

Determines the size of the SubmitPacket according to the size of the FramePacket and allocates the memory for it. The SubmitPacket is populated by the RenderFeaturePrepareJob so there is no equivalent to populate_frame_packet.
Source§

fn new_prepare_job<'prepare>( &self, prepare_context: &RenderJobPrepareContext<'prepare>, frame_packet: Box<dyn RenderFeatureFramePacket>, submit_packet: Box<dyn RenderFeatureSubmitPacket>, ) -> Arc<dyn RenderFeaturePrepareJob<'prepare> + 'prepare>

Returns a RenderFeaturePrepareJob wrapping the FramePacket and SubmitPacket.
Source§

fn new_write_job<'write>( &self, write_context: &RenderJobWriteContext<'write>, frame_packet: Box<dyn RenderFeatureFramePacket>, submit_packet: Box<dyn RenderFeatureSubmitPacket>, ) -> Arc<dyn RenderFeatureWriteJob<'write> + 'write>

Returns a RenderFeatureWriteJob wrapping the FramePacket and SubmitPacket.
Source§

fn is_relevant(&self, view_visibility: &RenderViewVisibilityQuery) -> bool

Returns true if the RenderView represented by the RenderViewVisibilityQuery should be included in the FramePacket for this RenderFeature. Most features should only need to implement is_view_relevant and requires_visible_render_objects.
Source§

fn add_asset_paths(&self, _asset_paths: &mut Vec<PathBuf>)

Source§

fn prepare_renderer_destroy( &self, _render_resources: &ResourceMap, ) -> Result<(), RafxError>

Source§

fn add_render_views( &self, _extract_resources: &ResourceRefMap<'_>, _render_resources: &ResourceMap, _render_view_set: &RenderViewSet, _render_views: &mut Vec<RenderView>, )

Source§

fn calculate_frame_packet_size<'extract>( &self, _extract_context: &RenderJobExtractContext<'extract>, visibility_results: &Vec<RenderViewVisibilityQuery>, render_object_instance_object_ids: &mut HashSet<RenderObjectInstance, BuildHasherDefault<FnvHasher>>, frame_packet_size: &mut FramePacketSize, )

Determines the unique set of RenderObjectInstances in FramePacket and the size of each ViewPacket in the FramePacket.
Source§

fn populate_frame_packet<'extract>( &self, _extract_context: &RenderJobExtractContext<'extract>, visibility_results: &Vec<RenderViewVisibilityQuery>, _frame_packet_size: &FramePacketSize, frame_packet: &mut Box<dyn RenderFeatureFramePacket>, )

Creates the mapping of RenderObjectInstance and RenderObjectInstancePerView in the FramePacket. This is done separately from new_frame_packet so that all of the frame packets can be allocated at once and then populated in parallel.

Auto Trait Implementations§

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<T> Downcast for T
where T: Any,

Source§

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>

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)

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)

Convert &mut Trait (where Trait: Downcast) to &Any. This is needed since Rust cannot generate &mut Any’s vtable from &mut Trait’s.
Source§

impl<T> DowncastSync for T
where T: Any + Send + Sync,

Source§

fn into_any_arc(self: Arc<T>) -> Arc<dyn Any + Send + Sync>

Convert Arc<Trait> (where Trait: Downcast) to Arc<Any>. Arc<Any> can then be further downcast into Arc<ConcreteType> where ConcreteType implements Trait.
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<T> Pointable for T

Source§

const ALIGN: usize

The alignment of pointer.
Source§

type Init = T

The type for initializers.
Source§

unsafe fn init(init: <T as Pointable>::Init) -> usize

Initializes a with the given initializer. Read more
Source§

unsafe fn deref<'a>(ptr: usize) -> &'a T

Dereferences the given pointer. Read more
Source§

unsafe fn deref_mut<'a>(ptr: usize) -> &'a mut T

Mutably dereferences the given pointer. Read more
Source§

unsafe fn drop(ptr: usize)

Drops the object pointed to by the given pointer. Read more
Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = Infallible

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.
Source§

impl<T> Resource for T
where T: Downcast + Send + Sync,