Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Incompatibility with Create/Flywheel (Fabric versions) #967

Open
AeiouEnigma opened this issue Jan 20, 2022 · 16 comments
Open

Incompatibility with Create/Flywheel (Fabric versions) #967

AeiouEnigma opened this issue Jan 20, 2022 · 16 comments

Comments

@AeiouEnigma
Copy link

AeiouEnigma commented Jan 20, 2022

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:

image

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.

@AeiouEnigma
Copy link
Author

Link to Flywheel's fabric branch on GitHub, for convenience

@qouteall
Copy link
Member

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?

@AeiouEnigma
Copy link
Author

AeiouEnigma commented Jan 21, 2022

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.

@qouteall
Copy link
Member

Are you having night vision or things that affect nether sky color? Is the nether sky color normal?

@AeiouEnigma
Copy link
Author

Yes, I did have night vision on for unrelated reasons when capturing the screenshot. Please disregard that 🙃

@qouteall
Copy link
Member

Try using command /imm_ptl_client_debug render_mode_compatibility and report what happens

@AeiouEnigma
Copy link
Author

Rendering greatly improves, with some very slight, hard to describe glitchiness about how far away chunks will render on the other side of the portal

2022-01-20_21 14 45

@qouteall qouteall reopened this Jan 22, 2022
@AeiouEnigma
Copy link
Author

AeiouEnigma commented Jan 22, 2022

The problem persists after aae5373

Also, here's another, better screenshot of the issue:

2022-01-22_16 00 06

The differing effects for water vs solid blocks in the player's current dimension probably means... something 😕

@qouteall
Copy link
Member

qouteall commented Jan 23, 2022

I cannot reproduce the issue with only flywheel without create
Maybe because it's not rendering any create thing

@qouteall
Copy link
Member

qouteall commented Jan 23, 2022

With another testing, it crashes. Possibly because that it destroy all GL resources when ImmPtl create another client world

https://github.com/Jozufozu/Flywheel/blob/1.18%2Ffabric%2Fdev/src/main/java/com/jozufozu/flywheel/mixin/LevelRendererMixin.java#L92

https://github.com/Jozufozu/Flywheel/blob/1.18%2Ffabric%2Fdev/src/main/java/com/jozufozu/flywheel/FlywheelClient.java#L47

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

@AeiouEnigma
Copy link
Author

Thanks for investigating! I'll bring it up with Flywheel.

@Specimen-420
Copy link

try "/flywheel backend off"

@AeiouEnigma
Copy link
Author

AeiouEnigma commented Feb 8, 2022

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.

@qouteall
Copy link
Member

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.

@ProGoofster
Copy link

for me it's just outright crashing

@hakanai
Copy link

hakanai commented Jul 12, 2022

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.

https://github.com/Jozufozu/Flywheel/blob/af11d1e78b0b5753bcdd2e87a9875a48d8f52138/src/main/java/com/jozufozu/flywheel/backend/gl/shader/GlShader.java#L19

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

5 participants