[Immersive Portals] Audit references to Iris from Immersive Portals
coderbot16 opened this issue ยท 0 comments
It would be preferable to see if all references to internal Iris code can either be handled within Iris or be replaced with proper APIs. This would avoid having Immersive Portals break with internal Iris refactors.
This reference is because Immersive Portals tries to patch the shaders that Iris provides (see #805):
These references are only needed since Iris updates SystemTimeUniforms in GameRenderer#render instead of GameRenderer#renderWorld, this should be fixable within Iris:
- https://github.com/qouteall/ImmersivePortalsMod/blob/f918113eed2f58289f5f4c0474542ff05762cf02/imm_ptl_core/src/main/java/qouteall/imm_ptl/core/compat/iris_compatibility/IrisCompatibilityPortalRenderer.java#L114
- https://github.com/qouteall/ImmersivePortalsMod/blob/f918113eed2f58289f5f4c0474542ff05762cf02/imm_ptl_core/src/main/java/qouteall/imm_ptl/core/compat/iris_compatibility/IrisPortalRenderer.java#L293
This reference is needed to save/restore the WorldRenderer.pipeline object cached by Iris during world rendering:
This reference helps with saving/restoring the pipeline field, but also allows Immersive Portals to check if Iris is using shaders for rendering.