health-bars

SKILL.md

Health Bars

Display health bars above characters using CSS styling.

Technique

Use Drei's Html component to render styled health bars in 3D space. Update the health bar width by manipulating the DOM element's transform: scaleX() via a ref in useFrame.

Key Concepts

  • Html from @react-three/drei with center and distanceFactor props
  • Use refs to directly manipulate DOM styles for performance
  • scaleX transform for smooth width changes with CSS transitions
  • Style with CSS (gradients, borders, skew transforms)

Usage

const healthRef = useRef<HTMLDivElement>(null)

useFrame(() => {
  healthRef.current.style.transform = `scaleX(${healthPercent})`
}, { fps: 1 })

<Html center position-y={1.5} distanceFactor={5}>
  <div className="bg-red-500">
    <div ref={healthRef} className="bg-green-500 origin-left transition-transform" />
  </div>
</Html>

This skill is part of verekia's r3f-gamedev.

Weekly Installs
6
GitHub Stars
26
First Seen
Jan 21, 2026
Installed on
claude-code5
windsurf2
codex2
cursor2
mcpjam1
iflow-cli1