Skip to content

Render a smooth shader spotlight with wider defaults - #10

Open
LTDigor wants to merge 1 commit into
masterfrom
wider-shader-spotlight
Open

LTDigor wants to merge 1 commit into
masterfrom
wider-shader-spotlight

Conversation

@LTDigor

@LTDigor LTDigor commented Sep 28, 2026

Copy link
Copy Markdown
Owner

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.

@coderabbitai

coderabbitai Bot commented Sep 28, 2026

Copy link
Copy Markdown

Important

Review skipped

Auto reviews are disabled on this repository. Please check the settings in the CodeRabbit UI or the .coderabbit.yaml file in this repository. To trigger a single review, invoke the @coderabbitai review command.

⚙️ Run configuration

Configuration used: Organization UI

Review profile: ASSERTIVE

Plan: Advanced

Run ID: bb525374-b6e9-42a4-9469-79af8151dd3e

You can disable this status message by setting the reviews.review_status to false in the CodeRabbit configuration file.

Use the checkbox below for a quick retry:

  • 🔍 Trigger review

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.

❤️ Share

Comment @coderabbitai help to get the list of available commands.

@chatgpt-codex-connector

chatgpt-codex-connector Bot commented Sep 28, 2026 •

Copy link
Copy Markdown

Codex Review Summary

This comment shows the latest Codex review activity on this pull request.

Review Status Commit Review trigger
📝 Code Review ✅ Completed 2026-09-28T22:12:31.180881Z 99f35ef PR opened
ℹ️ 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" or "@codex security review".

Codex reacts with 👀 while any review is running, comments if it has suggestions, and reacts with 👍 once all reviews finish with no findings.

@chatgpt-codex-connector chatgpt-codex-connector Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

💡 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".

Comment on lines +16 to +18
if (mixinClassName.substring(mixinClassName.lastIndexOf('.') + 1).startsWith("Iris")) {
return BestFlashlightMixinPlugin.class.getClassLoader()
.getResource("net/irisshaders/iris/Iris.class") != null;

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

P2 Badge 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 👍 / 👎.

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

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant