Parse PNG files (RGB and RGBA, 8-bit) with full filter reconstruction (None, Sub, Up, Average, Paeth). Uses the self-contained deflate decompressor for IDAT chunk decompression. Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
57 lines
2.1 KiB
Rust
57 lines
2.1 KiB
Rust
pub mod deflate;
|
|
pub mod png;
|
|
pub mod gpu;
|
|
pub mod light;
|
|
pub mod obj;
|
|
pub mod pipeline;
|
|
pub mod texture;
|
|
pub mod vertex;
|
|
pub mod mesh;
|
|
pub mod camera;
|
|
pub mod material;
|
|
pub mod sphere;
|
|
pub mod pbr_pipeline;
|
|
pub mod shadow;
|
|
pub mod shadow_pipeline;
|
|
pub mod brdf_lut;
|
|
pub mod ibl;
|
|
pub mod gbuffer;
|
|
pub mod fullscreen_quad;
|
|
pub mod deferred_pipeline;
|
|
pub mod ssgi;
|
|
pub mod rt_accel;
|
|
pub mod rt_shadow;
|
|
pub mod hdr;
|
|
pub mod bloom;
|
|
pub mod tonemap;
|
|
|
|
pub use gpu::{GpuContext, DEPTH_FORMAT};
|
|
pub use light::{CameraUniform, LightUniform, LightData, LightsUniform, MAX_LIGHTS, LIGHT_DIRECTIONAL, LIGHT_POINT, LIGHT_SPOT};
|
|
pub use mesh::Mesh;
|
|
pub use camera::{Camera, FpsController};
|
|
pub use texture::{GpuTexture, pbr_texture_bind_group_layout, create_pbr_texture_bind_group};
|
|
pub use material::MaterialUniform;
|
|
pub use sphere::generate_sphere;
|
|
pub use pbr_pipeline::create_pbr_pipeline;
|
|
pub use shadow::{ShadowMap, ShadowUniform, ShadowPassUniform, SHADOW_MAP_SIZE, SHADOW_FORMAT};
|
|
pub use shadow_pipeline::{create_shadow_pipeline, shadow_pass_bind_group_layout};
|
|
pub use ibl::IblResources;
|
|
pub use gbuffer::GBuffer;
|
|
pub use fullscreen_quad::{create_fullscreen_vertex_buffer, FullscreenVertex};
|
|
pub use deferred_pipeline::{
|
|
create_gbuffer_pipeline, create_lighting_pipeline,
|
|
gbuffer_camera_bind_group_layout,
|
|
lighting_gbuffer_bind_group_layout, lighting_lights_bind_group_layout, lighting_shadow_bind_group_layout,
|
|
ssgi_gbuffer_bind_group_layout, ssgi_data_bind_group_layout, create_ssgi_pipeline,
|
|
rt_shadow_gbuffer_bind_group_layout, rt_shadow_data_bind_group_layout, create_rt_shadow_pipeline,
|
|
bloom_bind_group_layout, create_bloom_downsample_pipeline, create_bloom_upsample_pipeline,
|
|
tonemap_bind_group_layout, create_tonemap_pipeline,
|
|
};
|
|
pub use ssgi::{SsgiResources, SsgiUniform, SSGI_OUTPUT_FORMAT};
|
|
pub use rt_accel::{RtAccel, RtInstance, BlasMeshData, mat4_to_tlas_transform};
|
|
pub use rt_shadow::{RtShadowResources, RtShadowUniform, RT_SHADOW_FORMAT};
|
|
pub use hdr::{HdrTarget, HDR_FORMAT};
|
|
pub use bloom::{BloomResources, BloomUniform, mip_sizes, BLOOM_MIP_COUNT};
|
|
pub use tonemap::{TonemapUniform, aces_tonemap};
|
|
pub use png::parse_png;
|