Skip to content

Dimension types now indicated by skybox and cardinal_light, not effects #2999

@cacology

Description

@cacology

What happened?

My issue

Using a Multiverse-core PaperMC server, my nether-type levels/worlds trigger the overworld shaders instead of nether shaders Complementary Shaders running in Iris. (1.21.11, 25w45a, with the Fabulously Optimised modpack through Modrinth, which relies on Iris + Sodium)

The problem, I think

The Iris code for NamespacedId here checks the removed effects field to guess at the shader to use, rather than the new skybox and cardinal_light. The effects field for dimension types has been removed as of 1.21.11 (25w45a) in favour of skybox and cardinal_light.

Temporary solution

One can customise the dimension.properties in the client's shaderpack to explicitly list the levels. I don't think this is a good permanent solution because servers cannot distribute hints to a particular shader. (Hint to inexperienced people like me, all lowercase seems to be expected in dimension.properties and altering your shaders in the client seems to revert the client to built-in shaders until you select your altered shader.)

My suggested fix, use skybox and cardinal_light

I think the Iris method for NamespacedId above should check skybox and cardinal_light instead of effects. I think it should check both so that it doesn't accidentally recognise some other sort of custom dimension and makes the best guess possible based on the information it can get.

Perhaps it should check effects still too for backwards compatibility.

Another possible fix, refactor for wildcards

I briefly thought dimension.properties supported wildcards. But it does not. I'm not sure if this would be a better approach, because it would require shader developers to tweak their dimension.properties to represent the current consensus on naming style, which may change.

I hope this report is helpful.

Respectfully submitted,

Screenshots

No response

Log output

No response

Minecraft Version

1.21.11 (25w45a)

Iris Version

iris-fabric-1.10.4+mc1.21.11.jar

Operating System

MacOS 26.2

What is your GPU?

integrated Apple M3 Max

Additional context

No response

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions