diff --git a/.gitignore b/.gitignore index 29d7af0..11253e7 100644 --- a/.gitignore +++ b/.gitignore @@ -17,6 +17,4 @@ classes/ .metadata .vscode .settings -*.launch - -.DS_Store \ No newline at end of file +*.launch \ No newline at end of file diff --git a/common/build.gradle b/common/build.gradle index e36be91..e6a05b2 100644 --- a/common/build.gradle +++ b/common/build.gradle @@ -26,8 +26,8 @@ dependencies { modImplementation "dev.architectury:architectury:$rootProject.architectury_api_version" // Mod implementations - modImplementation "maven.modrinth:sodium:mc1.21.1-0.8.12-beta.1-fabric" // Sodium - modImplementation "maven.modrinth:sodium-extra:mc1.21.1-0.8.7+fabric" // Sodium Extra - modImplementation "maven.modrinth:iris:1.8.14-beta.1+1.21.1-fabric" // Iris + modImplementation "maven.modrinth:sodium:mc1.21.1-0.6.13-fabric" // Sodium + modImplementation "maven.modrinth:sodium-extra:mc1.21.6-0.6.6+fabric" // Sodium Extra + modImplementation "maven.modrinth:iris:1.8.8+1.21.1-fabric" // Iris modImplementation "maven.modrinth:distanthorizons:2.3.4-b-1.21.1" // Distant Horizons } diff --git a/common/src/main/java/net/trafficlunar/optionsprofiles/profiles/loaders/SodiumExtraLoader.java b/common/src/main/java/net/trafficlunar/optionsprofiles/profiles/loaders/SodiumExtraLoader.java index 02366c7..b42c573 100644 --- a/common/src/main/java/net/trafficlunar/optionsprofiles/profiles/loaders/SodiumExtraLoader.java +++ b/common/src/main/java/net/trafficlunar/optionsprofiles/profiles/loaders/SodiumExtraLoader.java @@ -3,13 +3,16 @@ package net.trafficlunar.optionsprofiles.profiles.loaders; import com.google.gson.Gson; import com.google.gson.GsonBuilder; import me.flashyreese.mods.sodiumextra.client.SodiumExtraClientMod; -import me.flashyreese.mods.sodiumextra.client.config.SodiumExtraGameOptions; +import me.flashyreese.mods.sodiumextra.client.gui.FogTypeConfig; +import me.flashyreese.mods.sodiumextra.client.gui.SodiumExtraGameOptions; import net.minecraft.resources.ResourceLocation; +import net.minecraft.world.level.material.FogType; import net.trafficlunar.optionsprofiles.OptionsProfilesMod; import java.io.FileReader; import java.io.IOException; import java.nio.file.Path; +import java.util.EnumMap; import java.util.Map; public class SodiumExtraLoader { @@ -47,10 +50,8 @@ public class SodiumExtraLoader { SodiumExtraClientMod.options().detailSettings.biomeColors = configuration.detail_settings.biome_colors; SodiumExtraClientMod.options().detailSettings.skyColors = configuration.detail_settings.sky_colors; - SodiumExtraClientMod.options().renderSettings.fogDistance = configuration.render_settings.fog_distance; - SodiumExtraClientMod.options().renderSettings.fogStart = configuration.render_settings.fog_start; - SodiumExtraClientMod.options().renderSettings.multiDimensionFogControl = configuration.render_settings.multi_dimension_fog_control; - SodiumExtraClientMod.options().renderSettings.dimensionFogDistanceMap = configuration.render_settings.dimensionFogDistance; + SodiumExtraClientMod.options().renderSettings.globalFog = configuration.render_settings.global_fog; + SodiumExtraClientMod.options().renderSettings.fogTypeConfig = configuration.render_settings.fog_type_config; SodiumExtraClientMod.options().renderSettings.lightUpdates = configuration.render_settings.light_updates; SodiumExtraClientMod.options().renderSettings.itemFrame = configuration.render_settings.item_frame; SodiumExtraClientMod.options().renderSettings.armorStand = configuration.render_settings.armor_stand; @@ -120,10 +121,8 @@ public class SodiumExtraLoader { } public static class RenderSettings { - public int fog_distance; - public int fog_start; - public boolean multi_dimension_fog_control; - public Map dimensionFogDistance; + public boolean global_fog; + public EnumMap fog_type_config; public boolean light_updates; public boolean item_frame; public boolean armor_stand; diff --git a/common/src/main/java/net/trafficlunar/optionsprofiles/profiles/loaders/SodiumLoader.java b/common/src/main/java/net/trafficlunar/optionsprofiles/profiles/loaders/SodiumLoader.java index b1f4cba..791c4e8 100644 --- a/common/src/main/java/net/trafficlunar/optionsprofiles/profiles/loaders/SodiumLoader.java +++ b/common/src/main/java/net/trafficlunar/optionsprofiles/profiles/loaders/SodiumLoader.java @@ -1,11 +1,10 @@ package net.trafficlunar.optionsprofiles.profiles.loaders; -import net.caffeinemc.mods.sodium.client.render.chunk.DeferMode; import net.trafficlunar.optionsprofiles.OptionsProfilesMod; import com.google.gson.Gson; import com.google.gson.GsonBuilder; import net.caffeinemc.mods.sodium.client.SodiumClientMod; -import net.caffeinemc.mods.sodium.client.gui.SodiumOptions; +import net.caffeinemc.mods.sodium.client.gui.SodiumGameOptions; import java.io.FileReader; import java.io.IOException; @@ -24,8 +23,8 @@ public class SodiumLoader { } private static void apply(Configuration configuration) { - SodiumClientMod.options().quality.weatherQuality = SodiumOptions.WeatherQuality.valueOf(configuration.quality.weather_quality); - SodiumClientMod.options().quality.leavesQuality = SodiumOptions.LeavesQuality.valueOf(configuration.quality.leaves_quality); + SodiumClientMod.options().quality.weatherQuality = SodiumGameOptions.GraphicsQuality.valueOf(configuration.quality.weather_quality); + SodiumClientMod.options().quality.leavesQuality = SodiumGameOptions.GraphicsQuality.valueOf(configuration.quality.leaves_quality); SodiumClientMod.options().quality.enableVignette = configuration.quality.enable_vignette; SodiumClientMod.options().advanced.enableMemoryTracing = configuration.advanced.enable_memory_tracing; @@ -33,7 +32,7 @@ public class SodiumLoader { SodiumClientMod.options().advanced.cpuRenderAheadLimit = configuration.advanced.cpu_render_ahead_limit; SodiumClientMod.options().performance.chunkBuilderThreads = configuration.performance.chunk_builder_threads; - SodiumClientMod.options().performance.chunkBuildDeferMode = configuration.performance.chunk_build_defer_mode; + SodiumClientMod.options().performance.alwaysDeferChunkUpdates = configuration.performance.always_defer_chunk_updates_v2; SodiumClientMod.options().performance.animateOnlyVisibleTextures = configuration.performance.animate_only_visible_textures; SodiumClientMod.options().performance.useEntityCulling = configuration.performance.use_entity_culling; SodiumClientMod.options().performance.useFogOcclusion = configuration.performance.use_fog_occlusion; @@ -46,7 +45,7 @@ public class SodiumLoader { SodiumClientMod.options().debug.terrainSortingEnabled = configuration.debug.terrain_sorting_enabled; try { - SodiumOptions.writeToDisk(SodiumClientMod.options()); + SodiumGameOptions.writeToDisk(SodiumClientMod.options()); } catch (IOException e) { OptionsProfilesMod.LOGGER.error("An error occurred when loading Sodium's configuration", e); } @@ -73,7 +72,7 @@ public class SodiumLoader { public static class Performance { public int chunk_builder_threads; - public DeferMode chunk_build_defer_mode; + public boolean always_defer_chunk_updates_v2; public boolean animate_only_visible_textures; public boolean use_entity_culling; public boolean use_fog_occlusion;