three实现三维滑雪游戏代码

代码语言:html

所属分类:游戏

代码描述:three实现三维滑雪游戏代码

代码标签: three 三维 滑雪 游戏 代码

下面为部分代码预览,完整代码请点击下载或在bfwstudio webide中打开

<!DOCTYPE html>
<html lang="zh-CN">
<head>
<meta charset="UTF-8"/>
<meta name="viewport" content="width=device-width,initial-scale=1,maximum-scale=1,user-scalable=no"/>
<title>FROSTLINE · 高山回转滑雪</title>
<link href="https://fonts.googleapis.com/css2?family=Russo+One&family=Noto+Sans+SC:wght@400;700;900&display=swap" rel="stylesheet">
<style>
:root{
  --fd:'Russo One','Noto Sans SC',sans-serif;
  --fb:'Noto Sans SC',system-ui,sans-serif;
  --navy:#081c3a; --ink:#061426; --ice:#eaf6ff; --acc:#ff6b1a;
  --red:#ff3b4e; --blue:#2f7bff; --lbl:#8fb8e6;
}
*{margin:0;padding:0;box-sizing:border-box}
html,body{height:100%;overflow:hidden;background:#0a1e3c;font-family:var(--fb);color:#fff;
  -webkit-user-select:none;user-select:none;touch-action:none}
canvas{display:block;position:fixed;inset:0}

/* ---------- HUD ---------- */
#hud{position:fixed;inset:0;pointer-events:none;z-index:5}
.pnl{position:absolute;background:linear-gradient(160deg,rgba(10,32,64,.92),rgba(6,20,42,.92));
  transform:skewX(-10deg);border-left:4px solid var(--acc);
  box-shadow:0 6px 18px rgba(4,16,34,.4);padding:8px 24px 10px 16px}
.pnl .in{transform:skewX(10deg)}
.lb{font-size:11px;letter-spacing:3px;color:var(--lbl);font-weight:700}
.num{font-family:var(--fd);font-size:38px;line-height:1.05;color:#fff;
  text-shadow:0 2px 0 rgba(0,0,0,.3);font-variant-numeric:tabular-nums}
.unit{font-size:13px;color:var(--lbl);margin-left:4px;font-family:var(--fd)}
#pTime{top:16px;left:16px}
#pScore{top:16px;left:50%;transform:translateX(-50%) skewX(-10deg);border-left-color:#ffd166;text-align:center}
#pSpeed{top:16px;right:16px;text-align:right;border-left:none;border-right:4px solid var(--acc);transform:skewX(10deg)}
#pSpeed .in{transform:skewX(-10deg)}
#tuckTag{display:none;font-family:var(--fd);font-size:11px;color:#081226;background:#ffd166;
  padding:1px 8px;margin-top:3px;transform:skewX(-10deg);letter-spacing:2px}
#pGate{bottom:20px;left:16px;display:flex;align-items:center;gap:10px}
#pGate .num{font-size:26px}
.dot{width:12px;height:12px;display:inline-block;transform:skewX(-14deg)}
.dot.r{background:var(--red)} .dot.b{background:var(--blue)}
#combo{position:absolute;top:92px;left:50%;transform:translateX(-50%);display:none;
  font-family:var(--fd);font-size:20px;color:#fff;background:linear-gradient(120deg,#ff3b4e,#ff6b1a);
  padding:4px 22px;clip-path:polygon(8% 0,100% 0,92% 100%,0 100%);letter-spacing:2px}
#combo.pulse{animation:cp .35s ease}
@keyframes cp{40%{transform:translateX(-50%) scale(1.35)}}

#prog{position:fixed;right:16px;top:50%;transform:translateY(-50%);height:46vh;width:10px;z-index:5;
  background:rgba(255,255,255,.16);pointer-events:none}
#prog .tick{position:absolute;left:-3px;width:6px;height:3px}
#thumb{position:absolute;left:-3px;width:16px;height:6px;background:var(--acc);
  box-shadow:0 0 10px #ff6b1a;transition:top .1s linear}
#prog::before{content:"▼";position:absolute;top:-20px;left:-4px;color:var(--lbl);font-size:12px}

#fx{position:fixed;inset:0;pointer-events:none;z-index:4;opacity:0;
  box-shadow:inset 0 0 140px rgba(225,242,255,.95)}
#hint{position:fixed;bottom:20px;left:50%;transform:translateX(-50%);z-index:5;
  font-size:13px;color:#cfe4fa;background:rgba(6,20,42,.6);padding:6px 18px;letter-spacing:1px;
  transition:opacity 1s;pointer-events:none;white-space:nowrap}
#pops{position:fixed;inset:0;pointer-events:none;z-index:6}
.pop{position:absolute;left:50%;top:36%;transform:translate(-50%,0);font-family:var(--fd);
  font-size:36px;text-shadow:0 3px 0 rgba(0,0,0,.35);animation:rise .95s ease-out forwards}
.pop.good{color:#ffd166}.pop.bad{color:#ff5d6e}.pop.info{color:#bfe3ff;font-size:28px}
@keyframes rise{0%{opacity:0;transform:translate(-50%,14px) scale(.6)}18%{opacity:1}
  100%{opacity:0;transform:translate(-50%,-70px) scale(1.08)}}

/* ---------- 覆盖层 ---------- */
.ov{position:fixed;inset:0;z-index:10;display:flex;align-items:center;
  background:linear-gradient(105deg,rgba(5,17,36,.92) 0%,rgba(5,17,36,.62) 48%,rgba(5,17,36,.12) 100%)}
.wrap{padding-left:7vw;max-width:640px}
.kicker{font-family:var(--fd);font-size:13px;letter-spacing:6px;color:var(--acc);margin-bottom:10px}
.ttl{font-family:var(--fd);font-size:clamp(54px,9vw,104px);line-height:.95;letter-spacing:2px;
  transform:skewX(-6deg);text-shadow:0 5px 0 #0a2a52,0 14px 40px rgba(0,40,90,.5)}
.ttl em{fon.........完整代码请登录后点击上方下载按钮下载查看

网友评论0