V3 improvements. Check README.md. Mod for Apple Silicon (ARM Mac) that automatically improves broken/pink materials caused by mod shaders that were compiled without Metal GPU support.
Sweep triggered by the console command now shows a center-screen HUD notification when complete
New Harmony patches
DungeonGenerator.GenerateDungeon postfix — sweeps after dungeon rooms are instantiated on zone load
VisEquipment.AttachItem postfix — sweeps immediately when weapons/armour/items are equipped
AssetBundle.LoadAsset postfix — intercepts materials the moment a bundle is loaded, eliminating first-frame pink flicker
Shader fixes
TextMeshPro/Distance Field (Surface) — swapped to the non-Surface variant at runtime; fixes pink text on noticeboards and signs
Hidden/InternalErrorShader — now correctly receives the fallback shader instead of being left unchanged
Bug fixes
Explicit mat: rules now correctly override the _forceReplacedMaterialIds guard (fixes cases where a material couldn't be moved between transparent and fallback)
initmod no longer emits suffix rules for materials using canonical Valheim shaders (e.g. draugr_eyes_elite)
initmod no longer emits entries in [fallback]/[transparent] for shaders covered by built-in defaults (e.g. Legacy Shaders/Particles/)
shaderhelper nearby uses transform.position instead of bounds.center — fixes incorrect distances for TextMeshPro sub-mesh renderers whose bounds are uninitialized
Configuration changes
Default All Transparent now defaults to false — mods must be explicitly configured
Removed Mod Enabled toggle (shader replacements are in-memory and cannot be undone without a restart)
Config entries renamed for clarity: Default All Transparent, Force Transparent Shader Prefixes, Force Fallback Shader Prefixes, Periodic Sweep Interval
Assembly version updated to 2.0.0
v1.2.0
Sweep interval made configurable via BepInEx config
Periodic sweep skips when no local player is present (main menu, loading screen)
v1.1.0
Added usefallbackshader.txt — replaces broken shaders with a solid visible placeholder instead of making objects invisible
Added shaderhelper scan and shaderhelper dumpmod console commands
ZNetScene.Awake postfix patch — catches Jotunn mod prefabs registered after startup sweep