How do I get a custom crosshair in Minecraft?
Minecraft draws the crosshair from a texture, so a resource pack can replace it. Pick or draw one here, download the pack, put it in your resourcepacks folder (or open the .mcpack on Bedrock) and turn it on. No mods needed.
Why does my crosshair change colour over different blocks?
The game doesn't paint the crosshair on top of the world: it flips the colours underneath it. White turns into the opposite of whatever you're looking at, which is why it's always visible. A coloured crosshair is flipped the same way, and black doesn't show at all. The preview does the same maths, so what you see here is what you'll get.
Which Minecraft versions does it work with?
Java Edition 1.21 and newer, where every HUD icon is its own file, and 1.8.9, where the HUD lives in one icons.png picture — the pack builds that picture for you. Bedrock Edition gets an .mcpack with Bedrock's own file names.
Is everything the same on Bedrock?
Nearly. Bedrock has the same crosshair, hearts, hunger, armor, bubbles and hotbar, and the pack uses Bedrock's own names for them. Bedrock builds its XP bar from stretchy pieces, so a hand-drawn XP bar can't carry over — a colour or style can. Bedrock also has no off-hand slot frame and no separate hardcore empty heart. Its boss bars are one grey bar the game paints in each boss's colour, so a boss bar shape or See-through carries over but a colour of your own doesn't.
How do I make a custom boss bar?
Pick Boss bar, choose a shape for every bar, then a colour for one bar — the Ender Dragon's pink, the Wither's purple, the raid's red — or for all of them, and download. Java 1.21+ gets all seven colours and the raid notches; 1.8.9 has a single boss bar, the pink one.
Will it change anything else in my game?
No. The pack only contains the parts you changed, so it works on top of any other resource pack. (On 1.8.9 the whole HUD is one picture, so put this pack above any other pack that changes hearts or the hotbar.)