Skip to content

Commit 27f874b

Browse files
authored
Fix biome texture being empty if any chunk has no blocks that are affected by the biome. (#1901)
1 parent de4904a commit 27f874b

1 file changed

Lines changed: 6 additions & 22 deletions

File tree

  • chunky/src/java/se/llbit/chunky/renderer/scene

chunky/src/java/se/llbit/chunky/renderer/scene/Scene.java

Lines changed: 6 additions & 22 deletions
Original file line numberDiff line numberDiff line change
@@ -1353,14 +1353,6 @@ public synchronized void loadChunks(TaskTracker taskTracker, World world, Map<Re
13531353
dryFoliageTexture,
13541354
waterTexture);
13551355
}
1356-
1357-
// TODO we could skip blending the grass, foliage and dry foliage textures in this case
1358-
if (!biomeUsed) {
1359-
grassTexture = biomeStructureFactory.create();
1360-
foliageTexture = biomeStructureFactory.create();
1361-
dryFoliageTexture = biomeStructureFactory.create();
1362-
// the water texture is still used to check for loaded chunks and tint the water plane
1363-
}
13641356
} else {
13651357
BiomeBlendingUtility.chunk2DBlur(
13661358
cp,
@@ -1374,14 +1366,6 @@ public synchronized void loadChunks(TaskTracker taskTracker, World world, Map<Re
13741366
foliageTexture,
13751367
dryFoliageTexture,
13761368
waterTexture);
1377-
1378-
// TODO we could skip blending the grass, foliage and dry foliage textures in this case
1379-
if (!biomeUsed) {
1380-
grassTexture = biomeStructureFactory.create();
1381-
foliageTexture = biomeStructureFactory.create();
1382-
dryFoliageTexture = biomeStructureFactory.create();
1383-
// the water texture is still used to check for loaded chunks and tint the water plane
1384-
}
13851369
}
13861370
} else {
13871371
if(use3dBiomes) {
@@ -1396,12 +1380,12 @@ public synchronized void loadChunks(TaskTracker taskTracker, World world, Map<Re
13961380
int id = biomePaletteIdxStructure.get(wx, wy, wz);
13971381

13981382
Biome biome = biomePalette.get(id);
1399-
if (biomeUsed) {
1400-
grassTexture.set(cp.x * 16 + x - origin.x, sectionY * 16 + y - origin.y, cp.z * 16 + z - origin.z, biome.grassColorLinear);
1401-
foliageTexture.set(cp.x * 16 + x - origin.x, sectionY * 16 + y - origin.y, cp.z * 16 + z - origin.z, biome.foliageColorLinear);
1402-
dryFoliageTexture.set(cp.x * 16 + x - origin.x, sectionY * 16 + y - origin.y, cp.z * 16 + z - origin.z, biome.dryFoliageColorLinear);
1403-
}
1404-
// the water texture is used to check for loaded chunks and tint the water plane, so we always need that one
1383+
if (biomeUsed) {
1384+
grassTexture.set(cp.x * 16 + x - origin.x, sectionY * 16 + y - origin.y, cp.z * 16 + z - origin.z, biome.grassColorLinear);
1385+
foliageTexture.set(cp.x * 16 + x - origin.x, sectionY * 16 + y - origin.y, cp.z * 16 + z - origin.z, biome.foliageColorLinear);
1386+
dryFoliageTexture.set(cp.x * 16 + x - origin.x, sectionY * 16 + y - origin.y, cp.z * 16 + z - origin.z, biome.dryFoliageColorLinear);
1387+
}
1388+
// the water texture is used to check for loaded chunks and tint the water plane, so we always need that one
14051389
waterTexture.set(cp.x * 16 + x - origin.x, sectionY * 16 + y - origin.y, cp.z * 16 + z - origin.z, biome.waterColorLinear);
14061390
}
14071391
}

0 commit comments

Comments
 (0)