钾

钾

一款面向《我的世界》的平台感知性能优化模组

性能

Potassium

Potassium 是一款轻量级的 Fabric 优化模组,专注于在不替换渲染器或改变游戏玩法的前提下,提升 Minecraft 的客户端渲染、UI 响应速度、着色器兼容性和帧率稳定性。

它并非重写大型系统,而是针对那些虽小却频繁出现的渲染开销:HUD 更新、文本布局、地图渲染、粒子、实体动画、着色器/缓存安全以及平台感知的渲染路径。

该模组旨在与 Sodium、Lithium、FerriteCore、Entity Culling、C2ME、ModernFix 和 Iris 等主流优化模组协同工作。


功能

HUD 渲染状态节流

在玩家状态未发生改变时,减少冗余的 HUD 处理。

  • 在重建 HUD 渲染状态前,会检查生命值、饥饿值、显示生命值、状态效果和刻度状态。
  • 在保留原版游戏反馈的同时,防止不必要的 UI 重新计算。
  • 包含保护机制,避免 GUI 闪烁或 UI 状态过时。

实体动画 LOD

为生物实体添加了基于距离的装饰性动画减少功能。

  • 超出正常视野范围的远处生物会减少行走动画更新。
  • 移动、AI、碰撞箱、战斗、伤害和服务器行为不受影响。
  • 仅减少装饰性动画的工作量。

粒子优化

在保护游戏关键反馈的同时,优化粒子密集的场景。

  • 粒子更新节流是保守且感知密度的。
  • 关键粒子(如方块破坏、红石、下界传送门、药水/状态、振动、幽匿方块和交互反馈)受到保护。
  • 有助于稳定爆炸、营火、特效以及繁忙场景下的帧率。

文本和布局缓存

缓存重复的 UI 文本测量和布局工作。

  • 减少重复的字体宽度计算。
  • 帮助菜单、聊天、计分板、覆盖层和 Mod Menu 屏幕感觉更流畅。
  • 缓存大小有限,防止长时间游戏过程中内存增长。

地图渲染安全与节流

在保持正确性的前提下,优化地图渲染状态更新。

  • 减少冗余的地图纹理/状态刷新。
  • 在地图纹理初始化之前,避免节流,从而保护物品框中的地图。
  • 修复了与物品框中已填充地图相关的崩溃问题。

着色器兼容性修复

提升了与 Iris 着色器包和大型渲染模组包的兼容性。

  • 修复了罕见情况下玩家、怪物、物品框、手持物品或地图渲染为黑色的问题。
  • 禁用了不安全的实体 packed-light 缓存,以保持原版和 Iris 光照的正确性。
  • 为 Iris 添加了安全门,使 Potassium 避免干扰着色器帧缓冲、采样器和程序状态。
  • 已在包括 Complementary 和 Solas 风格在内的着色器密集型场景中进行测试。

专用的 Potassium 着色器缓存文件夹

添加了一个专用的 Potassium 缓存位置: .minecraft/potassium/shader-cache

  • 存储有限的着色器环境元数据,以实现更安全的未来着色器预热和缓存验证。
  • 将 Potassium 的缓存数据与 Iris 自身的着色器缓存分开。
  • 包含自动清理功能,因此缓存数据不会无限增长。
  • 目前不声称能完全复用 GPU 程序二进制文件;这是为未来着色器缓存改进所做的安全基础工作。

超分辨率 UI

通过 Mod Menu 添加了游戏内超分辨率配置。

  • 提供可选的放大模式和状态信息。
  • 显示每个后端是可用、仅回退还是不可用。
  • 包含 Potassium Spatial、类 FSR 路径、类 SGSR 路径、DLSS 和 XeSS 的描述。
  • 为安全起见,帧生成默认禁用。

重要提示:完整的原生 DLSS、XeSS 和 FSR3 帧生成尚未完全实现。不受支持的原生路径会安全回退,而不会崩溃或假装正常工作。

平台感知渲染支持

Potassium 包含平台感知检查,以做出更安全的优化决策。

  • Apple Silicon 保护机制会禁用可能影响水面、透明度或第一人称物品深度的脆弱帧缓冲放大路径。
  • 为更新的 Minecraft 版本包含了 OpenGL/Vulkan 后端检测的基础工作。
  • 对实验性的 26.2-pre-2 的支持是保守的,因为 Minecraft 的 Vulkan 路径尚未稳定。

性能哲学

Potassium 专注于累加式微优化:

  • 减少冗余的 UI 处理。
  • 降低重复的文本/布局工作。
  • 使粒子密集场景更流畅。
  • 避免破坏视觉的、不安全的渲染捷径。
  • 偏好兼容性和原版正确性,而非风险高的 FPS 提升。

目标是在不改变世界生成、AI、战斗、红石或服务器逻辑的情况下,实现更平滑的帧率和更低的 CPU/GPU 开销。


兼容性

Potassium 旨在与主要的 Fabric 优化和渲染模组协同工作。

需求

Minecraft 1.21.11

  • Fabric Loader 0.18.4+
  • 与 Minecraft 1.21.11 兼容的 Fabric API
  • Java 21+

Minecraft 26.1-26.1.2

  • Fabric Loader 0.18.4+
  • 与 Minecraft 26.1.x 兼容的 Fabric API
  • Java 25+

Minecraft 26.2-pre-2 实验性

  • Fabric Loader 0.19.2+
  • Fabric API 0.150.1+26.2
  • Java 25+

请做好遇到 Bug 的准备

报告问题

请使用页面顶部的链接指向的问题追踪器来报告 Bug、崩溃和其他问题。请包含问题描述、Minecraft 版本、模组版本、日志文件以及任何其他可能的信息。


modrinth fabric-api github curseforge