render3d + lab: bakes as PNGs, and impostors, the sky's light and the carpet read from their bakes
ludic.lab: lab_png_write / lab_png_write_from (raw 8-bit, 1-4 channels, stored deflate) in png_write.ludic, importable alone with its own LabPngState; png_convert.ludic's previews of float textures (R32F min..max, RG16F x255, HDR x/(1+x) + sRGB); lab_ppm_to_png on the same encoder. render3d: bake_load.ludic - impostor_from_baked / impostor_source / impostor_refill (a fog re-open reads the bake), sky_baked_in and sky_precompute trying the bake at the start yaw (sky_compute is the convolution, and sky_ibl_bytes always uses it), carpet_from_baked / carpet_bytes / carpet_finish, bake_part_count / _len / _off. Compile-only: nothing run. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
parent
f79390838a
commit
6c690c5db6
15 changed files with 396 additions and 107 deletions
|
|
@ -705,6 +705,10 @@ export state Render3dState {
|
|||
sky_p_pre: int = 0
|
||||
sky_p_brdf: int = 0
|
||||
sky_prefilter_w: int = 512
|
||||
sky_bake_dir: string = "" # where the sky's IBL bakes are (sky_baked_in, bake_load.ludic); "" = none
|
||||
sky_bake_key: string = ""
|
||||
sky_bake_version: int = 0
|
||||
sky_bake_said: bool = false # a missing bake said once
|
||||
STREAM_MAX_CHUNKS: int = 4096
|
||||
stream_all: []Stream = null
|
||||
stream_cap_read: bool = false
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue