diff --git a/fabric/src/main/java/com/seibel/distanthorizons/fabric/FabricMain.java b/fabric/src/main/java/com/seibel/distanthorizons/fabric/FabricMain.java
index f714815a9..9dd5c3ca5 100644
--- a/fabric/src/main/java/com/seibel/distanthorizons/fabric/FabricMain.java
+++ b/fabric/src/main/java/com/seibel/distanthorizons/fabric/FabricMain.java
@@ -90,8 +90,8 @@ public class FabricMain extends AbstractModInitializer implements ClientModIniti
{
ModAccessorInjector.INSTANCE.bind(ISodiumAccessor.class, new SodiumAccessor());
- // If sodium is installed Indium is also necessary in order to use the Fabric rendering API
- if (!modChecker.isModLoaded("indium"))
+ // If sodium is installed Indium is also necessary for versions 0.5 and less in order to use the Fabric rendering API
+ if (!modChecker.isModLoaded("indium") && SodiumAccessor.isSodiumV5OrLess)
{
String indiumMissingMessage = ModInfo.READABLE_NAME + " needs Indium to work with Sodium.\nPlease download Indium from https://modrinth.com/mod/indium";
LOGGER.fatal(indiumMissingMessage);
diff --git a/fabric/src/main/java/com/seibel/distanthorizons/fabric/wrappers/modAccessor/SodiumAccessor.java b/fabric/src/main/java/com/seibel/distanthorizons/fabric/wrappers/modAccessor/SodiumAccessor.java
index af64b923a..69741e51c 100644
--- a/fabric/src/main/java/com/seibel/distanthorizons/fabric/wrappers/modAccessor/SodiumAccessor.java
+++ b/fabric/src/main/java/com/seibel/distanthorizons/fabric/wrappers/modAccessor/SodiumAccessor.java
@@ -43,11 +43,22 @@ import net.minecraft.world.phys.AABB;
public class SodiumAccessor implements ISodiumAccessor
{
+ /**
+ * True if sodium 0.5 or less is present.
+ * This field is public because it's also used to check if we need Indium to be present.
+ * We need Indium if Sodium 0.5 or less is present.
+ */
+ public static final boolean isSodiumV5OrLess;
+
#if MC_VER >= MC_1_20_1
private static MethodHandle setFogOcclusionMethod;
private static Object sodiumPerformanceOptions;
#endif
+ static {
+ isSodiumV5OrLess = !classPresent("net.caffeinemc.mods.sodium.client.render.SodiumWorldRenderer");
+ }
+
//======================//
@@ -72,8 +83,7 @@ public class SodiumAccessor implements ISodiumAccessor
{
if (sodiumPerformanceOptions == null)
{
- boolean sodiumV6 = classPresent("net.caffeinemc.mods.sodium.client.render.SodiumWorldRenderer");
- if (!sodiumV6)
+ if (isSodiumV5OrLess)
{
// sodium 0.5