Skip to content

Improve debug rendering for trigger volumes - #114

Open
ccp-zoetrope wants to merge 1 commit into
mainfrom
trigger-volume-fill
Open

ccp-zoetrope wants to merge 1 commit into
mainfrom
trigger-volume-fill

Conversation

@ccp-zoetrope

Copy link
Copy Markdown
Member

Summary

Wireframe-only outlines are hard to read from inside a volume. This PR adds a translucent fill to all three volume shapes (box, sphere, ellipsoid) and a text label showing the trigger's name, state, and intensity. Both pick up the volume's existing debug color, which turns green once the tracked position enters the trigger.

The debug renderer culls back faces, so each shape draws its fill twice, the second time through a mirrored transform that flips the winding to render the inner faces. Shared via helpers in IEveVolume.h so all three shapes behave the same way.

Linked issue (optional)

EF-19776

Testing

I added a box shaped trigger volume to a dungeon and it was much easier to tell if I was entering it or not. It was also much easier to tell what space it filled up. Before this, the wireframe only rendering made it very hard to actually see what area of space a trigger volume actually took up.

AI assistance

Most of the code was generated by Claude Fable 5.1

Copilot AI balanced review requested due to automatic review settings October 1, 2026 18:59

Copilot AI 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.

Copilot review overview

🟢 Approval recommended

The focused debug-rendering changes are consistent across all volume shapes and no correctness issues were identified.

Review effort: Balanced
Findings: None

What changed in this PR

Adds clearer debug visualization for trigger volumes through translucent fills, visible occluded outlines, and state labels.

Changes:

  • Adds shared debug color and inside-face rendering helpers.
  • Adds translucent two-sided fills to box, sphere, and ellipsoid volumes.
  • Displays trigger name, state, and intensity.
File Description
trinity/​Eve/​Volume/​IEveVolume.h Adds shared debug-rendering helpers.
trinity/​Eve/​Volume/​EveSphereVolume.cpp Adds sphere fill and occluded outlines.
trinity/​Eve/​Volume/​EveEllipsoidVolume.cpp Adds ellipsoid fill and occluded outlines.
trinity/​Eve/​Volume/​EveBoxVolume.cpp Adds box fill and occluded outlines.
trinity/​Eve/​EveTriggerVolume.cpp Adds the trigger state label.

💡 Add a code-review agent skill or configure MCP servers for context-aware, tailored reviews. Learn more in the docs.

Wireframe-only outlines are hard to read from inside a volume. Add a translucent fill to all three volume shapes (box, sphere, ellipsoid)
and a text label showing the trigger's name, state, and intensity.
Both pick up the volume's existing debug color, which turns green
once the tracked position enters the trigger.

The debug renderer culls back faces, so each shape draws its fill
twice, the second time through a mirrored transform that flips the winding to render the inner faces. Shared via helpers in
IEveVolume.h so all three shapes behave the same way.
@ccp-zoetrope
ccp-zoetrope force-pushed the trigger-volume-fill branch 2 times, most recently from 59981b8 to 3ab6110 Compare October 1, 2026 19:02
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.

2 participants