Skip to content

Commit 6152b9e

Browse files
Copilotriccardobl
andcommitted
Log warning when maxSinglePassLightBatchSize is clamped below 16 by hardware
Co-authored-by: riccardobl <4943530+riccardobl@users.noreply.github.com> Agent-Logs-Url: https://github.com/jMonkeyEngine/jmonkeyengine/sessions/80c83fa1-19e7-4e6f-a032-3d5fe7be1ff7
1 parent 7e9351f commit 6152b9e

1 file changed

Lines changed: 7 additions & 0 deletions

File tree

jme3-core/src/main/java/com/jme3/renderer/RenderManager.java

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -75,6 +75,7 @@
7575
import java.util.function.Function;
7676
import java.util.function.Predicate;
7777
import java.util.function.Supplier;
78+
import java.util.logging.Level;
7879
import java.util.logging.Logger;
7980

8081
/**
@@ -1148,6 +1149,12 @@ public void setMaxSinglePassLightBatchSize(int maxSinglePassLightBatchSize) {
11481149
if (fragUniformVecs != null && fragUniformVecs > 0) {
11491150
int reservedUniforms = Math.max(fragUniformVecs / RESERVED_UNIFORM_FRACTION, 1);
11501151
int maxByHardware = Math.max((fragUniformVecs - reservedUniforms) / VEC4_UNIFORMS_PER_LIGHT, 1);
1152+
if (this.maxSinglePassLightBatchSize > 16 && maxByHardware < 16) {
1153+
logger.log(Level.WARNING,
1154+
"setMaxSinglePassLightBatchSize({0}) was requested but hardware only supports"
1155+
+ " {1} lights per pass (FragmentUniformVectors={2}); clamping to {1}.",
1156+
new Object[]{maxSinglePassLightBatchSize, maxByHardware, fragUniformVecs});
1157+
}
11511158
this.maxSinglePassLightBatchSize = Math.min(this.maxSinglePassLightBatchSize, maxByHardware);
11521159
}
11531160
if (singlePassLightBatchSize > this.maxSinglePassLightBatchSize) {

0 commit comments

Comments
 (0)