You are viewing a potentially older version of this package.
View all versions.
PeakPitchCrosshair
Peak Pitch Crosshair can display world-anchored pitch markers in the game.
By Codaaaaaa
| Date uploaded | 11 months ago |
| Version | 0.3.1 |
| Download link | Codaaaaaa-PeakPitchCrosshair-0.3.1.zip |
| Downloads | 89 |
| Dependency string | Codaaaaaa-PeakPitchCrosshair-0.3.1 |
This mod requires the following mods to function
BepInEx-BepInExPack_PEAK
BepInEx pack for PEAK. Preconfigured and ready to use.
Preferred version: 5.4.2403README
Peak Pitch Crosshair
Peak Pitch Crosshair is a Unity plugin that visually overlays pitch-aligned markers (e.g., musical note ranges) in your 3D scene. Instead of a static HUD, the markers are world-anchored using raycasts—so they “stick” to scene objects (like trees) and move naturally as you look up and down.
Features
- World-anchored pitch ranges: Each note’s angle range is represented by a bracket or label that aligns with whatever world object it hits.
- Corrected angle boundaries: No overlapping ranges; bottom note (“1′”) properly extends toward the horizon edge.
- Edge clamping: Optional extension of first/last ranges up to ±EdgeClampDeg (default is 85°).
- Raycast fallback: Configurable fallback option to render markers even when raycast doesn't hit any object.
- Sharp toggle (F7): Show or hide sharp (
#) note ranges at runtime. - Readable labels: Uses in-game fonts, big bold characters, text outlines, and dark semi-transparent backgrounds for high visibility.
- Configurable styling: Adjust font size, boldness, tick width/thickness, opacity, and more via BepInEx config.
Installation
- Install BepInEx in your Unity game.
- Place
PeakPitchCrosshair.dllinto theBepInEx/plugins/folder. - Launch the game and press F6 to toggle the overlay on/off, or F7 to toggle sharp notes visibility.
Configuration
All settings are accessible in the generated config file (BepInEx/config/PeakPitchCrosshair.cfg). Configurable options include:
EdgeClampDeg: Maximum angle to extend topmost/bottommost note ranges (default: 85).FallbackWhenNoHit: Whether to render markers even when no object is hit (default: true).- Font styling:
FontSize,FontBold,PreferredFontName. - Visual settings:
TickHalfWidthPx,TickThicknessPx,BracketThicknessPx, label opacity settings. - Behavior settings:
InvertPitch,ShowLabels,HighlightActive,ShowSharps.
Usage
- Toggle the marker display with F6.
- Toggle sharp (
#) note ranges with F7. - View and customize appearance and behavior via the config file during runtime.
Compatibility
- Unity 2019+ (IMGUI-based rendering).
- BepInEx plugin framework.
CHANGELOG
Changelog
All notable changes to this project are documented in this file.
The format is based on Keep a Changelog and this project follows Semantic Versioning.
[Unreleased]
Added
- Feature: Option to extend the topmost and bottommost ranges to ±EdgeClampDeg (default 85°).
- Feature: Raycast fallback to render markers at max distance if no collision is detected.
- Configurable:
EdgeClampDeg,FallbackWhenNoHit, font styling updates.
Changed
- Fixed visibility issue where the bottommost range (“1′”) failed to render due to missing scene geometry.
- Preserved label clarity with larger font, outline, and background.
Fixed
- Overlapping angle ranges adjusted so that “1′” now properly appears and spans to the top/bottom edge without overlap.
[0.3.2] - 2025-8-31
Added
- Top and bottom marker bands now extend to ±EdgeClampDeg (configurable, default: 85°).
- Fallback rendering: when Raycast misses, markers are drawn at a far point to guarantee visibility.
- New configuration options:
EdgeClampDeg,FallbackWhenNoHit.
Changed
- Improved font rendering: uses in-game font, increased font size, added bold style, outline, and semi-transparent backdrop for better readability.
- Ensured that “1′” note range is properly displayed at the extremes.
Fixed
- Angle ranges adjusted to eliminate overlap; ensures that all note ranges are rendered correctly in non-overlapping order.
[0.3.3] - 2025-8-31
Added
- icon
- Precise points overlay: render measured anchor notes as crosshair markers at exact angles (labels off by default).
- Hotkey: F8 toggles precise points (ShowPrecisePoints, TogglePrecisePointsKey).
- Sharp-point gating: sharp (#) precise points follow the global ShowSharps (F7) toggle.
New configuration options:
- PrecisePointSizePx
- PrecisePointThicknessPx
- PrecisePointAlpha
- PrecisePointShowLabel (default false)
Fixed
- Precise points now render even when Physics.Raycast misses (respects FallbackWhenNoHit).