The reel through your own eyes: first-person replay (stage two)
Sight now runs THROUGH the warps as the rules say: a ray reaching a mouth re-enters at its pair and marches on, the far side swimming in violet haze. The floor's furniture joins the scene — bushes stand tall, safes squat, slime and tacks and pits lie low, dropped daggers glint. And the replay reel gains a 👁 toggle: relive the catch-up or the whole tale through your wizard's eyes, the camera turning before it strides, easing between cells, cutting on teleports, and turning toward whoever acted while you stood still. The /?fpv workshop grows &demo=1 — two automatons play a stretch and the real Replay component reruns it. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
This commit is contained in:
co-authored by
Claude Fable 5
parent
dae01969b0
commit
65092f50af
@@ -89,6 +89,11 @@
|
||||
const swirl = 0.75 + 0.25 * Math.sin(time / 240 + hit.u * 9);
|
||||
[cr, cg, cb] = [cr * swirl, cg * swirl, cb * (0.9 + 0.3 * swirl)];
|
||||
}
|
||||
if (hit.warped) {
|
||||
// Seen through a warp: the far side swims in violet haze.
|
||||
const haze = 0.82 + 0.08 * Math.sin(time / 300 + col * 0.05);
|
||||
[cr, cg, cb] = [cr * 0.7 * haze, cg * 0.6 * haze, Math.min(255, cb * 1.1 + 26)];
|
||||
}
|
||||
ctx.fillStyle = `rgb(${cr | 0},${cg | 0},${cb | 0})`;
|
||||
ctx.fillRect(col, half - wallH / 2, 1, wallH);
|
||||
// Doors wear a lintel and panel seam so they read as doors.
|
||||
|
||||
Reference in New Issue
Block a user