As of right now, I am currently trying to implement a lighting system in my game that uses per vertex lighting. Because this is a voxel engine, each chunk is composed of a large amount of blocks each containing their own light value (Used to store sunlight and torchlight). When I “remesh” the entire chunk I have a vbo for vec3 vert positions, vec2 uv positions, and finally int lighting value which get computed while the mesh is being constructed (Does this by looking at neighboring blocks).
While this works for non changing static lighting, it does not seem efficient for dynamic lighting. For example sunlight values will be changing throughout gameplay and torches will be placed and in order to update the lighting values I must remesh the entire thing. I suppose I could lower sunlight in discrete steps rather than continuously lowering the value, however I was wondering if there was a different approach to this?