Repository navigation
Conversation
|
Important Review skippedAuto reviews are disabled on this repository. Please check the settings in the CodeRabbit UI or the ⚙️ Run configurationConfiguration used: Organization UI Review profile: ASSERTIVE Plan: Advanced Run ID: You can disable this status message by setting the Use the checkbox below for a quick retry:
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
Codex Review SummaryThis comment shows the latest Codex review activity on this pull request.
ℹ️ About Codex in GitHubYour team has set up Codex to review pull requests in this repo. Reviews are triggered when you
Codex reacts with 👀 while any review is running, comments if it has suggestions, and reacts with 👍 once all reviews finish with no findings. |
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: 99f35efe50
ℹ️ About Codex in GitHub
Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you
- Open a pull request for review
- Mark a draft as ready
- Comment "@codex review".
If Codex has suggestions, it will comment; otherwise it will react with 👍.
Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".
| if (mixinClassName.substring(mixinClassName.lastIndexOf('.') + 1).startsWith("Iris")) { | ||
| return BestFlashlightMixinPlugin.class.getClassLoader() | ||
| .getResource("net/irisshaders/iris/Iris.class") != null; |
There was a problem hiding this comment.
Gate Iris mixins to the supported API version
When an Iris version other than the tested 1.8.14-beta.1 is installed, this presence-only check still applies all three mixins to Iris internals. For example, IrisProgramSourceMixin has a required @Shadow for the private name field, so a version that changes that field can fail mixin application during startup before ShaderBeamBridge's reflection-based fallback can retain LDL lighting. Check the Iris version or validate the required target structure here before enabling these mixins.
Useful? React with 👍 / 👎.
The local first-person flashlight now uses per-pixel lighting with LambDynamicLights 4.8.11, Iris 1.8.14-beta.1 and Complementary Reimagined r5.9.3. It produces a bright, soft circular spot, follows vertical camera movement and scales its surface footprint with distance. The default cone widens from 35° to 50°.
The optional adapter patches loaded programs in memory, activates only after compilation and removes only the duplicate local LDL cone. Other players and unsupported renderers retain existing lighting. Shader reload, camera handoff and logout clear the beam state. The version remains 1.0.0; no distance-adaptive screen sizing is included.
Validation: 68 unit tests, 52 GameTests, 45 Python tests and build/package validation pass. Real LDL + Complementary captures pass 25 acceptance cases plus three 50° distance cases. No-Iris clients with/without LDL, mixed multiplayer, and two/four simultaneous LDL-source fixtures pass. Regressions reproduced before fixes: block-shaped spot, handoff double lighting and retained state after leaving a world. Captures and metrics stay outside Git.