Compare commits

..

3 commits

Author SHA1 Message Date
8e469b4554
Merge pull request #50 from Alfakynz/1.21.1
Compat for Sodium 0.8.12 and Sodium Extra 0.8.7
2026-06-22 22:03:00 +01:00
Alfakynz
c742223985 Some changes
- Add fog_distance
- Rename global_fog with multi_dimension_fog_control
- Replace fog_type_config with dimensionFogDistance
- Add .DS Store in the gitignore (just an annoying file created by macOS)
2026-06-20 15:33:06 +02:00
Alfakynz
a58b4c39aa Compat for Sodium 0.8.12 2026-06-19 17:29:24 +02:00
4 changed files with 22 additions and 18 deletions

4
.gitignore vendored
View file

@ -17,4 +17,6 @@ classes/
.metadata
.vscode
.settings
*.launch
*.launch
.DS_Store

View file

@ -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
}

View file

@ -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<FogType, FogTypeConfig> fog_type_config;
public int fog_distance;
public int fog_start;
public boolean multi_dimension_fog_control;
public Map<ResourceLocation, Integer> dimensionFogDistance;
public boolean light_updates;
public boolean item_frame;
public boolean armor_stand;

View file

@ -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;