SetLightmap took a raw Lightmap* and just held onto it for the frame swapped it for a small value type the renderer copies out immediately instead… this sometimes caused crashes but seemingly only on windows?.. just my luck..
LightingSystem had the same issue, was writing back into ECS memory through a raw pointer from a GL init task. now creates the framebuffer/vao up front and just calls Invalidate() on them
SubmitPersistent was also holding a raw pointer into caller-owned memory, now copies into the staging buffer like everything else does
RenderBatch used to just silently not draw anything if a batch went over MAX_INSTANCES. now it chunks into multiple draw calls instead of dropping the whole thing
InvalidateGLCache wasn’t resetting the dynamic instance buffers, only the VAO cache, so they could point at dead GL objects after a context loss
actual windows fixes
opening files tries to open via already existing file associationg, otherwise falls back to the “open with” dialog if there’s no default handler
also the paths get normalized to backslashes now
asset import for scripts and so just does a file copy now instead of going through the old import path
Comments 0
No comments yet. Be the first!
Sign in to join the conversation.