- model_release(model) frees each primitive's mesh, and each texture once no other model uses it: the glTF texture cache counts the primitives using each texture (a path loaded again, and a LOD chain borrowing its LOD0's material, each take a reference); the last one frees the texture and forgets it along with any remembered material naming it, so a later load is a fresh one - a scatter layer's instance and sort arrays start at 256 and double as layer_add or a stream fills them, to the layer's cap, instead of the whole cap up front (0.4 GB in Maroon Lake) - gvk_tex_read's copy struct comes from the scratch ring - examples/rendering/release.ludic holds it (RELEASE OK on Vulkan and OpenGL), in the suite smooth renders pixel-identical before and after (max |d| 0). ludic-dev test 306/306. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
39 lines
1.2 KiB
Text
39 lines
1.2 KiB
Text
# ============================================================================
|
|
# ludic.render3d — a physically based 3D renderer on Gl.* (OpenGL 4.1 core).
|
|
# Import this one file, and register what a frame draws: r3d_on_draw, r3d_on_casters and, for a
|
|
# streamed layer, r3d_on_stream_fill (hooks.ludic).
|
|
# ============================================================================
|
|
numbers float # the renderer's numbers are floats whoever imports it
|
|
import "env.ludic"
|
|
import "hooks.ludic"
|
|
import "fmath.ludic"
|
|
import "gpu.ludic"
|
|
import "gpu_manifest.ludic"
|
|
import "gpu_vk.ludic"
|
|
import "gpu_vk_res.ludic"
|
|
import "prof.ludic"
|
|
import "drawstats.ludic"
|
|
import "programs.ludic"
|
|
import "texture.ludic"
|
|
import "mesh.ludic"
|
|
import "gpu_vk_draw.ludic"
|
|
import "camera.ludic"
|
|
import "sky.ludic"
|
|
import "daylight.ludic"
|
|
import "terrain.ludic"
|
|
import "overlay.ludic"
|
|
import "shadow.ludic"
|
|
import "post.ludic"
|
|
import "quat.ludic"
|
|
import "gltf.ludic"
|
|
import "gltf_release.ludic"
|
|
import "skin.ludic"
|
|
import "scatter.ludic"
|
|
import "actor.ludic"
|
|
import "stream.ludic"
|
|
import "grass.ludic"
|
|
import "grass_gpu.ludic"
|
|
import "water.ludic"
|
|
import "streamline.ludic"
|
|
import "render.ludic"
|
|
import "safe_api.ludic"
|