#![allow(clippy::cast_possible_truncation)]
#![allow(clippy::cast_sign_loss)]
#![allow(clippy::cast_precision_loss)]
#![allow(clippy::cast_possible_wrap)]
#![allow(clippy::missing_errors_doc)]
#![allow(clippy::missing_panics_doc)]
#![allow(clippy::too_many_lines)]
#![allow(clippy::unused_self)]
#![allow(clippy::similar_names)]
#![allow(clippy::needless_pass_by_value)]
#![allow(clippy::ptr_arg)]
#![allow(clippy::field_reassign_with_default)]
#![allow(clippy::default_trait_access)]
#![allow(clippy::needless_lifetimes)]
#![allow(clippy::manual_let_else)]
#![allow(clippy::too_many_arguments)]
pub mod buffer;
pub mod camera;
pub mod color_maps;
pub mod curve_network_render;
pub mod depth_peel_pass;
pub mod dual_quat;
pub mod engine;
pub mod error;
pub mod ground_plane;
pub mod materials;
pub mod pick;
pub mod point_cloud_render;
pub mod reflection;
pub mod reflection_pass;
pub mod screenshot;
pub mod shader;
pub mod shadow_map;
pub mod slice_mesh_render;
pub mod slice_plane_render;
pub mod ssaa_pass;
pub mod ssao_pass;
pub mod surface_mesh_render;
pub mod tone_mapping;
pub mod vector_render;
pub mod volume_grid_render;
pub use camera::{AxisDirection, Camera, NavigationStyle, ProjectionMode};
pub use color_maps::{ColorMap, ColorMapRegistry};
pub use curve_network_render::{CurveNetworkRenderData, CurveNetworkUniforms};
pub use depth_peel_pass::DepthPeelPass;
pub use engine::RenderEngine;
pub use error::{RenderError, RenderResult};
pub use ground_plane::{GroundPlaneRenderData, GroundPlaneUniforms};
pub use materials::{Material, MaterialRegistry, MaterialUniforms};
pub use pick::{
MeshPickUniforms, PickElementType, PickResult, PickUniforms, TubePickUniforms, color_to_index,
index_to_color,
};
pub use point_cloud_render::{PointCloudRenderData, PointUniforms};
pub use reflection::{ground_reflection_matrix, reflection_matrix};
pub use reflection_pass::{ReflectionPass, ReflectionUniforms};
pub use screenshot::{ScreenshotError, ScreenshotOptions, save_image, save_to_buffer};
pub use shader::{ShaderBuilder, ShaderProgram};
pub use shadow_map::{LightUniforms, SHADOW_MAP_SIZE, ShadowMapPass};
pub use slice_mesh_render::SliceMeshRenderData;
pub use slice_plane_render::{
PlaneRenderUniforms, SlicePlaneRenderData, create_slice_plane_bind_group_layout,
create_slice_plane_pipeline,
};
pub use ssaa_pass::SsaaPass;
pub use ssao_pass::{SsaoPass, SsaoUniforms};
pub use surface_mesh_render::{MeshUniforms, SurfaceMeshRenderData};
pub use tone_mapping::{ToneMapPass, ToneMapUniforms};
pub use vector_render::{VectorRenderData, VectorUniforms};
pub use volume_grid_render::{
GridcubePickUniforms, GridcubeRenderData, GridcubeUniforms, IsosurfaceRenderData,
SimpleMeshUniforms,
};
pub struct RenderContext<'a> {
pub device: &'a wgpu::Device,
pub queue: &'a wgpu::Queue,
pub encoder: &'a mut wgpu::CommandEncoder,
pub view: &'a wgpu::TextureView,
pub depth_view: &'a wgpu::TextureView,
pub camera: &'a Camera,
pub materials: &'a MaterialRegistry,
pub color_maps: &'a ColorMapRegistry,
}
impl polyscope_core::structure::RenderContext for RenderContext<'_> {}