pub struct Renderer {Show 37 fields
pub surface: Surface<'static>,
pub device: Device,
pub queue: Queue,
pub config: SurfaceConfiguration<Vec<TextureFormat>>,
pub size: PhysicalSize<u32>,
pub depth_texture_view: TextureView,
pub scene: SceneState,
pub post: PostProcessState,
pub gpu_particles: Option<GpuParticleSystem>,
pub gpu_physics: Option<GpuPhysicsSystem>,
pub gpu_fluid: Option<GpuFluidSystem>,
pub deferred: Option<DeferredState>,
pub gpu_cull: Option<GpuCullState>,
pub ssao: Option<SsaoState>,
pub ssr: Option<SsrState>,
pub ssgi: Option<SsgiState>,
pub volumetric: Option<VolumetricState>,
pub decal: Option<DecalState>,
pub taa: Option<TaaState>,
pub fxaa: Option<FxaaState>,
pub debug_renderer: Option<GizmoRendererSystem>,
pub asset_manager: RwLock<AssetManager>,
pub web_profile: WebProfile,
pub shading_mode: u32,
pub environment_preset: u32,
pub environment_preset_2: u32,
pub environment_blend_t: f32,
pub bloom_intensity: f32,
pub bloom_threshold: f32,
pub exposure: f32,
pub dof_enabled: bool,
pub dof_focus_dist: f32,
pub dof_focus_range: f32,
pub dof_blur_size: f32,
pub chromatic_aberration: f32,
pub film_grain_intensity: f32,
pub point_shadows_enabled: bool,
}Fields§
§surface: Surface<'static>§device: Device§queue: Queue§config: SurfaceConfiguration<Vec<TextureFormat>>§size: PhysicalSize<u32>§depth_texture_view: TextureView§scene: SceneState§post: PostProcessState§gpu_particles: Option<GpuParticleSystem>§gpu_physics: Option<GpuPhysicsSystem>§gpu_fluid: Option<GpuFluidSystem>§deferred: Option<DeferredState>§gpu_cull: Option<GpuCullState>§ssao: Option<SsaoState>§ssr: Option<SsrState>§ssgi: Option<SsgiState>§volumetric: Option<VolumetricState>§decal: Option<DecalState>§taa: Option<TaaState>§fxaa: Option<FxaaState>§debug_renderer: Option<GizmoRendererSystem>§asset_manager: RwLock<AssetManager>§web_profile: WebProfile§shading_mode: u32§environment_preset: u32§environment_preset_2: u32§environment_blend_t: f32§bloom_intensity: f32§bloom_threshold: f32§exposure: f32§dof_enabled: bool§dof_focus_dist: f32§dof_focus_range: f32§dof_blur_size: f32§chromatic_aberration: f32§film_grain_intensity: f32§point_shadows_enabled: boolImplementations§
Source§impl Renderer
impl Renderer
pub fn load_shader( device: &Device, file_path: &str, fallback_src: &str, label: &str, ) -> ShaderModule
pub async fn new(window: Arc<Window>) -> Renderer
pub fn rebuild_shaders(&mut self)
pub fn ensure_instance_capacity(&mut self, needed: usize) -> bool
pub fn resize(&mut self, new_size: PhysicalSize<u32>)
Sourcepub fn create_cube(&self) -> Mesh
pub fn create_cube(&self) -> Mesh
Küp mesh oluşturur.
Sourcepub fn create_sphere(&self, radius: f32, stacks: u32, slices: u32) -> Mesh
pub fn create_sphere(&self, radius: f32, stacks: u32, slices: u32) -> Mesh
Küre mesh oluşturur.
Sourcepub fn create_plane(&self, size: f32) -> Mesh
pub fn create_plane(&self, size: f32) -> Mesh
Düzlem mesh oluşturur.
Sourcepub fn create_checkerboard_texture(&self) -> Arc<BindGroup>
pub fn create_checkerboard_texture(&self) -> Arc<BindGroup>
Dama dokusu (checkerboard) oluşturur — test materyalleri için idealdir. Cache’lenir: aynı doku tekrar oluşturulmaz.
Sourcepub fn create_white_texture(&self) -> Arc<BindGroup>
pub fn create_white_texture(&self) -> Arc<BindGroup>
Düz beyaz doku — varsayılan materyal için. Cache’lenir: aynı doku tekrar oluşturulmaz.
Sourcepub fn load_texture(&self, path: &str) -> Result<Arc<BindGroup>, String>
pub fn load_texture(&self, path: &str) -> Result<Arc<BindGroup>, String>
Diskten doku yükler (BC7 pipeline dahil). Cache’lenir: aynı dosya yolu tekrar yüklenmez.
Sourcepub fn load_gltf(&self, path: &str) -> Result<GltfSceneAsset, String>
pub fn load_gltf(&self, path: &str) -> Result<GltfSceneAsset, String>
Diskten bir GLTF (veya GLB) modelini senkron olarak yükler.
pub fn create_skeleton(&self, hierarchy: Arc<SkeletonHierarchy>) -> Skeleton
pub fn run_post_processing( &self, encoder: &mut CommandEncoder, output_view: &TextureView, )
pub fn update_post_process(&self, queue: &Queue, params: PostProcessUniforms)
pub fn create_mesh(&self, vertices: &[Vertex]) -> Buffer
pub fn create_texture( &self, rgba_bytes: &[u8], width: u32, height: u32, ) -> BindGroup
Auto Trait Implementations§
impl !Freeze for Renderer
impl !RefUnwindSafe for Renderer
impl Send for Renderer
impl Sync for Renderer
impl Unpin for Renderer
impl UnsafeUnpin for Renderer
impl !UnwindSafe for Renderer
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
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.Source§impl<T> DowncastSync for T
impl<T> DowncastSync for T
Source§impl<S> FromSample<S> for S
impl<S> FromSample<S> for S
fn from_sample_(s: S) -> S
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
Source§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more