render3d: recycle texture and buffer ids, free a released model whole, actor_release

A freed texture or buffer id goes on a spare list the next one takes; tex_note_size keeps sizes by id.
model_release frees prims, meshes, material names, the skin and leaves gltf_cached. actor_release
takes an actor off the stage and actor_new reuses its record (ECS's Things come and go all day).
steady.ludic: an actor round at 0 bytes over 2000.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
Orkun ÇAKILKAYA 2026-09-28 12:00:53 +03:00
parent 2fe4018d28
commit 9b482d609a
14 changed files with 208 additions and 39 deletions

View file

@ -0,0 +1,7 @@
bump: minor
type: fix
**A handle, a model and an actor let go come round again.** A texture or buffer freed gives its id
back and the next one made takes it, so the per-handle lists stop growing; `model_release` frees a
glTF model whole (its primitives, meshes, names, skeleton) and takes it out of `gltf_cached`'s
cache; and `actor_release` takes an actor off the stage and keeps its record for the next
`actor_new`. `examples/rendering/steady.ludic` holds 2000 actors placed and released at 0 bytes.