Skip to content
This repository was archived by the owner on Dec 19, 2024. It is now read-only.
This repository was archived by the owner on Dec 19, 2024. It is now read-only.

【功能建议】针对 Modder 的 Shaders 兼容指南 #2

@3TUSK

Description

@3TUSK

模块

「创作指南」、「疑难解答-进阶问题」、或新开一版

简述

针对 Modder(尤其是涉足渲染相关代码的 Modder)在遇到和 Shader 不兼容等类似问题时,或有意为 Shader 用户提供更好体验时,可参考的一份快速入门指南。

文档原址

N/A

具体内容

长久以来,以 OptiFine 为代表的模组在 Modder 群体中的评价普遍不高,主要原因则是因其闭源导致的「遇到兼容问题时,根本无从下手」等诸多问题。Iris 诞生的目标之一也正是在兼容性问题上发力,且业已取得一定成果。

然而,放眼整个 Modded Minecraft 社群,我们至今仍然没有看到一份行之有效的「如何兼容 Shader」的指南。但凡 Modder 们想为各自的 Mod 追加视觉上的全新效果,就很有可能会撞到和 Shaders 的兼容性问题,而此时几乎所有 Modder 都会束手无策,除了要求用户卸载 Shaders 相关模组,恐怕只能提供一配置文件选项以供用户关闭那些「来自 Mod 的视觉效果」。

诚然,直接禁用特性可以解决问题,但这显然是个治标不治本的解决方案。遥想当年 Mod 加载器还未诞生的黑暗时代,两个模组若同时修改一个 class 文件,则这两个模组绝无同时安装之可能。Mod 加载器的出现在解决了这一看似不可解问题的同时,也将 Modded Minecraft 带出了名为 “jar mod” 的蛮荒时代。

我们是否可以为 Modder 提供一份「可以按部就班,一步步操作,然后就能解决兼容问题」的「Shaders 兼容指南」?依 Shader 的实现方式不同,预期该指南可分为如下几大章节:

  • 对 Iris 兼容指南。可能是其中最好写的一个。
    • 对 Oculus 兼容指南。
  • 对 Canvas 兼容指南。考虑到 Canvas 的状态,不知道有无必要。
  • 对 OptiFine 兼容指南。可能是最困难的一个,但有鉴于其悠久的历史,完全不能直接无视。
    • 对 Shadersmod 兼容指南。我指的是合并入 OptiFine 之前的 Shadersmod。因其仅适用 Minecraft 版本过于古老(可能最高仅到 1.7.10 或者 1.8,待查),实际上这一小节可能完全没有实际意义。放在这里也仅供讨论。
  • 对基于原版资源包的 Shader pack 的兼容指南。我甚至不知道这个和上面的「对 OptiFine 兼容」哪个更难。
  • 附加篇:对 Sodium 兼容指南。好像简单多了……

Metadata

Metadata

Assignees

No one assigned

    Labels

    enhancementNew feature or request

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions