diff --git a/.gitignore b/.gitignore index 11253e7..29d7af0 100644 --- a/.gitignore +++ b/.gitignore @@ -17,4 +17,6 @@ classes/ .metadata .vscode .settings -*.launch \ No newline at end of file +*.launch + +.DS_Store \ No newline at end of file diff --git a/common/build.gradle b/common/build.gradle index e6a05b2..e36be91 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.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: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: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 b42c573..02366c7 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,16 +3,13 @@ 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.gui.FogTypeConfig; -import me.flashyreese.mods.sodiumextra.client.gui.SodiumExtraGameOptions; +import me.flashyreese.mods.sodiumextra.client.config.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 { @@ -50,8 +47,10 @@ public class SodiumExtraLoader { SodiumExtraClientMod.options().detailSettings.biomeColors = configuration.detail_settings.biome_colors; SodiumExtraClientMod.options().detailSettings.skyColors = configuration.detail_settings.sky_colors; - SodiumExtraClientMod.options().renderSettings.globalFog = configuration.render_settings.global_fog; - SodiumExtraClientMod.options().renderSettings.fogTypeConfig = configuration.render_settings.fog_type_config; + 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.lightUpdates = configuration.render_settings.light_updates; SodiumExtraClientMod.options().renderSettings.itemFrame = configuration.render_settings.item_frame; SodiumExtraClientMod.options().renderSettings.armorStand = configuration.render_settings.armor_stand; @@ -121,8 +120,10 @@ public class SodiumExtraLoader { } public static class RenderSettings { - public boolean global_fog; - public EnumMap fog_type_config; + public int fog_distance; + public int fog_start; + public boolean multi_dimension_fog_control; + public Map dimensionFogDistance; 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 791c4e8..b1f4cba 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,10 +1,11 @@ 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.SodiumGameOptions; +import net.caffeinemc.mods.sodium.client.gui.SodiumOptions; import java.io.FileReader; import java.io.IOException; @@ -23,8 +24,8 @@ public class SodiumLoader { } private static void apply(Configuration configuration) { - 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.weatherQuality = SodiumOptions.WeatherQuality.valueOf(configuration.quality.weather_quality); + SodiumClientMod.options().quality.leavesQuality = SodiumOptions.LeavesQuality.valueOf(configuration.quality.leaves_quality); SodiumClientMod.options().quality.enableVignette = configuration.quality.enable_vignette; SodiumClientMod.options().advanced.enableMemoryTracing = configuration.advanced.enable_memory_tracing; @@ -32,7 +33,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.alwaysDeferChunkUpdates = configuration.performance.always_defer_chunk_updates_v2; + SodiumClientMod.options().performance.chunkBuildDeferMode = configuration.performance.chunk_build_defer_mode; 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; @@ -45,7 +46,7 @@ public class SodiumLoader { SodiumClientMod.options().debug.terrainSortingEnabled = configuration.debug.terrain_sorting_enabled; try { - SodiumGameOptions.writeToDisk(SodiumClientMod.options()); + SodiumOptions.writeToDisk(SodiumClientMod.options()); } catch (IOException e) { OptionsProfilesMod.LOGGER.error("An error occurred when loading Sodium's configuration", e); } @@ -72,7 +73,7 @@ public class SodiumLoader { public static class Performance { public int chunk_builder_threads; - public boolean always_defer_chunk_updates_v2; + public DeferMode chunk_build_defer_mode; public boolean animate_only_visible_textures; public boolean use_entity_culling; public boolean use_fog_occlusion;