Incompatibility with Create/Flywheel (Fabric versions)
AeiouEnigma opened this issue ยท 16 comments
Copy of Fabricators-of-Create/Create#53
Extraordinary rendering issues occur when looking through an Immersive Portal while the Fabric version of Create is installed. This issue is presumably caused by interaction with Create's rendering dependency, Flywheel (which is included in builds of Create for Fabric).
Example:
Although sodium/indium/other mods were in use when capturing this screenshot, the issue is reproducible with only Create (which again includes Flywheel), Fabric API, and Immersive Portals.
Link to Flywheel's fabric branch on GitHub, for convenience
Can you explain the screenshot? Are you in overworld in the screenshot? Is the nether fog color normal? Does it render normal when you are not looking any portal?
I'm in a snowy slopes biome in the overworld. This rendering issue occurs when a portal is being rendered. Everything is normal when a portal isn't in view.
Are you having night vision or things that affect nether sky color? Is the nether sky color normal?
Yes, I did have night vision on for unrelated reasons when capturing the screenshot. Please disregard that ๐
Try using command /imm_ptl_client_debug render_mode_compatibility
and report what happens
The problem persists after aae5373
Also, here's another, better screenshot of the issue:
The differing effects for water vs solid blocks in the player's current dimension probably means... something ๐
I cannot reproduce the issue with only flywheel without create
Maybe because it's not rendering any create thing
With another testing, it crashes. Possibly because that it destroy all GL resources when ImmPtl create another client world
This cannot be fixed on ImmPtl's side. Flywheel can make that event triggered in Minecraft.clearLevel
so that it won't trigger when ImmPtl creates secondary client world and secondary world renderer.
You can open an issue on Flywheel
try "/flywheel backend off"
That has no effect of any kind on the problem whatsoever.
The Flywheel backend is disabled in the original screenshot of the issue.
In immptl 1.3.7 the crash and portal rendering issue is fixed. but the create things in remote dimensions may still not get rendered correctly until F3+A.
I wasn't getting this particular rendering issue, but I do get this thing (v1.4.8), which just makes portal-in-portal not render:
[10:43:34] [Render thread/ERROR]: uniform imm_ptl_ClippingEquation not found in transformed iris shader
I assume this is something along the lines of Flywheel changing the names of shaders, so that now Immersive Portal doesn't do its transformation magic to those shaders?
I did some investigation adding more debugging to try and figure out which shader it is, but whatever it is, it isn't going via MixinProgram.compileShaderInternal
.
[13:11:09] [Render thread/INFO]: Shader Transform Skipping shadow_text_intensity
[13:11:09] [Render thread/INFO]: Created transformed shader id 389 name = shadow_text_intensity
[13:11:09] [Render thread/INFO]: Shader Transform Skipping shadow_text_intensity
[13:11:09] [Render thread/INFO]: Created transformed shader id 390 name = shadow_text_intensity
[13:11:09] [Render thread/ERROR]: uniform imm_ptl_ClippingEquation not found in transformed iris shader id = 394
[13:11:09] [Render thread/ERROR]: uniform imm_ptl_ClippingEquation not found in transformed iris shader id = 397
Reading Flywheel's code, it seems that they have their own shader compilation code, and maybe these aren't being hooked yet.