[LibGDX] Can't add multiple lights

Hi ! I’m making a turn-based game with Libgdx.

I’m trying to create a fog of war for battles by adding a mask on the map and a maplight on each cell in the fight zone.

To do this I have to superimpose lights, but I can’t.

The result in game :

The java render code :

//draw the light to the FBO
fbo.begin();
batch.setProjectionMatrix(cam.combined);
batch.setShader(defaultShader);
Gdx.gl.glClear(GL20.GL_COLOR_BUFFER_BIT);

batch.begin();
float lightSize = lightOscillate? (4.75f + 0.25f * (float)Math.sin(zAngle) + .2f*MathUtils.random()):5.0f;
//Draw light 1
batch.draw(light, 0, 0, lightSize, lightSize);

//Draw light 2
batch.draw(light, 2, 2, lightSize, lightSize);

batch.end();
fbo.end();

//draw the actual scene
Gdx.gl.glClear(GL20.GL_COLOR_BUFFER_BIT);
batch.setProjectionMatrix(cam.combined);
batch.setShader(finalShader);
batch.begin();
fbo.getColorBufferTexture().bind(1); //this is important! bind the FBO to the 2nd texture unit
light.bind(0); //we force the binding of a texture on first texture unit to avoid artefacts
			   //this is because our default and ambiant shader dont use multi texturing...
			   //youc can basically bind anything, it doesnt matter
tilemap.render(batch, dt);
batch.end();

The fragment shader code :

varying LOWP vec4 vColor;
varying vec2 vTexCoord;

//texture samplers
uniform sampler2D u_texture; //diffuse map
uniform sampler2D u_lightmap;   //light map

//additional parameters for the shader
uniform vec2 resolution; //resolution of screen
uniform LOWP vec4 ambientColor; //ambient RGB, alpha channel is intensity 

void main() {
	vec4 diffuseColor = texture2D(u_texture, vTexCoord);
	vec2 lighCoord = gl_FragCoord.xy / resolution.xy;
	vec4 light = texture2D(u_lightmap, lighCoord);
	
	vec3 ambient = ambientColor.rgb * ambientColor.a;
	vec3 intensity = ambient + light.rgb;
 	vec3 finalColor = diffuseColor.rgb * intensity;
	
	gl_FragColor = vColor * light; //vec4(finalColor, diffuseColor.a);
}

Thanks in advance for any help.