mirror of
https://forgejo.xatacraft.ru/Sunshine/mkxp-sunshine.git
synced 2026-08-22 23:06:18 +00:00
some light fix
This commit is contained in:
parent
83fcae68bc
commit
57673be493
1 changed files with 7 additions and 6 deletions
|
|
@ -309,30 +309,31 @@ void DynamicLightShader::setTileMapOffset(int x, int y){
|
||||||
}
|
}
|
||||||
|
|
||||||
void DynamicLightShader::setLightSources(std::vector<LightSource> sources){
|
void DynamicLightShader::setLightSources(std::vector<LightSource> sources){
|
||||||
gl.Uniform1i(u_lightSourcesCount, sources.size());
|
int count = 0;
|
||||||
for(int i = 0; i < sources.size(); i++) {
|
for(int i = 0; i < sources.size(); i++) {
|
||||||
if (i < 64) {
|
if (count < 64) {
|
||||||
if (!sources[i].hasEffect())
|
if (!sources[i].hasEffect())
|
||||||
continue;
|
continue;
|
||||||
|
gl.Uniform4f(u_lightSources + count,
|
||||||
gl.Uniform4f(u_lightSources + i,
|
|
||||||
sources[i].x,
|
sources[i].x,
|
||||||
sources[i].y,
|
sources[i].y,
|
||||||
sources[i].power,
|
sources[i].power,
|
||||||
sources[i].radius
|
sources[i].radius
|
||||||
);
|
);
|
||||||
gl.Uniform4f(u_lightSourcesColors + i,
|
gl.Uniform4f(u_lightSourcesColors + count,
|
||||||
sources[i].color.red / 255.0,
|
sources[i].color.red / 255.0,
|
||||||
sources[i].color.green / 255.0,
|
sources[i].color.green / 255.0,
|
||||||
sources[i].color.blue / 255.0,
|
sources[i].color.blue / 255.0,
|
||||||
sources[i].color.alpha / 255.0
|
sources[i].color.alpha / 255.0
|
||||||
);
|
);
|
||||||
|
count++;
|
||||||
}
|
}
|
||||||
else {
|
else {
|
||||||
Debug() << "The limit of light sources has been reached! (" << sources.size() << "/ 64 )";
|
Debug() << "The limit of light sources has been reached! (" << sources.size() << "/ 64, clamped" << sources.size() - count << ")";
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
gl.Uniform1i(u_lightSourcesCount, count);
|
||||||
}
|
}
|
||||||
|
|
||||||
void DynamicLightShader::setAmbient(float power){
|
void DynamicLightShader::setAmbient(float power){
|
||||||
|
|
|
||||||
Loading…
Reference in a new issue