refactor: 별 속도 조정

This commit is contained in:
2026-02-14 22:39:44 +09:00
parent 25a4ebd342
commit 2ec2ba4b3a
2 changed files with 20 additions and 15 deletions

View File

@@ -51,7 +51,8 @@ export function FlightStarfieldCanvas({
const setCanvasSize = () => {
const viewportWidth = window.visualViewport?.width ?? window.innerWidth;
const viewportHeight = window.visualViewport?.height ?? window.innerHeight;
const viewportHeight =
window.visualViewport?.height ?? window.innerHeight;
width = Math.max(1, Math.floor(viewportWidth));
height = Math.max(1, Math.floor(viewportHeight));
canvas.style.width = `${width}px`;
@@ -113,12 +114,15 @@ export function FlightStarfieldCanvas({
const deltaX = toX - fromX;
const deltaY = toY - fromY;
const movementLength = Math.hypot(deltaX, deltaY);
const tailLineWidth = clamp(star.radius * 0.9, 0.65, 1.6);
const tailLineWidth = clamp(star.radius * 0.9, 0.78, 1.6);
const canDrawTail =
star.tailLength >= FLIGHT_STARFIELD_TUNING.tail.cleanup.minTailLengthToDraw &&
movementLength >= FLIGHT_STARFIELD_TUNING.tail.cleanup.minMovementToDraw &&
star.tailLength >=
FLIGHT_STARFIELD_TUNING.tail.cleanup.minTailLengthToDraw &&
movementLength >=
FLIGHT_STARFIELD_TUNING.tail.cleanup.minMovementToDraw &&
visibleAlpha >= FLIGHT_STARFIELD_TUNING.tail.cleanup.minAlphaToDraw &&
tailLineWidth >= FLIGHT_STARFIELD_TUNING.tail.cleanup.minLineWidthToDraw;
tailLineWidth >=
FLIGHT_STARFIELD_TUNING.tail.cleanup.minLineWidthToDraw;
if (!canDrawTail) {
const snappedToX = snapToDevicePixel(toX);
@@ -174,13 +178,14 @@ export function FlightStarfieldCanvas({
const veil = context.createRadialGradient(
vp.x,
vp.y,
centerProtectRadius * 0.18,
centerProtectRadius * 0.12,
vp.x,
vp.y,
centerProtectRadius * 1.35,
);
veil.addColorStop(0, "rgba(160, 185, 235, 0.08)");
veil.addColorStop(0.55, "rgba(90, 114, 170, 0.03)");
veil.addColorStop(0, "rgba(176, 201, 242, 0.11)");
veil.addColorStop(0.22, "rgba(138, 164, 216, 0.06)");
veil.addColorStop(0.55, "rgba(90, 114, 170, 0.025)");
veil.addColorStop(1, "rgba(0, 0, 0, 0)");
context.fillStyle = veil;

View File

@@ -7,20 +7,20 @@ export const FLIGHT_STARFIELD_TUNING = {
},
vanishXJitter: { min: 10, max: 25 },
speedTiers: {
slow: { chance: 0.9, min: 0.003, max: 0.007 },
medium: { chance: 0.99, min: 0.007, max: 0.011 },
fast: { min: 0.011, max: 0.014 },
slow: { chance: 0.9, min: 0.00255, max: 0.00595 },
medium: { chance: 0.99, min: 0.00595, max: 0.00935 },
fast: { min: 0.00935, max: 0.0119 },
},
tail: {
pointChance: 0.82,
shortChance: 0.86,
pointRange: { min: 0, max: 2.5 },
pointRange: { min: 0.5, max: 2.5 },
shortRange: { min: 2.5, max: 3.8 },
longRange: { min: 4, max: 10 },
cleanup: {
minAlphaToDraw: 0.09,
minMovementToDraw: 0.18,
minLineWidthToDraw: 1,
minAlphaToDraw: 0.08,
minMovementToDraw: 0.12,
minLineWidthToDraw: 0.86,
minTailLengthToDraw: 1,
},
},