Try this fun game and post your score…if you dare! ![]()
okay so this thread links to the Ghost Keys game from kirupaLab where you drag keys back to the correct spots on a 3D keyboard. If you’re asking for a quick improvement idea, you could add an accessibility toggle (high-contrast or larger key labels) to keep it usable for more players, and log latency if you’re streaming the drag events to a canvas so we can optimize the pointer events for smoother dragging on low-end devices.
If you want a concrete snippet to prototype quickly, here’s a tiny JS hook you could drop in to debounce pointer move events during a drag, which helps with latency perception:
let isDragging = false;
let lastTime = 0;
const dragDelay = 16; // ~60fps
function onPointerMove(e) {
if (!isDragging) return;
const now = performance.now();
if (now - lastTime < dragDelay) return;
lastTime = now;
// your existing drag handling here
// e.g., updateKeyPosition(e.clientX, e.clientY);
}
element.addEventListener('pointerdown', () => { isDragging = true; lastTime = performance.now(); });
element.addEventListener('pointerup', () => { isDragging = false; });
element.addEventListener('pointermove', onPointerMove);
This keeps the drag feel snappy without overfiring the handler, especially useful when rendering 3D transforms to show keys moving back into place.
@Quelly - are you OK?
