TP016

SẤM — Xe máy điện

Ra mắt xe máy điện kiểu showroom: xe 3D dựng từ ảnh có phản chiếu sàn, đèn quét như quảng cáo ô tô, chú thích bám theo từng chi tiết và đổi màu sơn trực tiếp.

Điểm nổi bật
Trong gói tải về

Landing ra mắt xe máy điện kiểu showroom: xe 3D dựng từ ảnh có phản chiếu sàn, đèn quét như quảng cáo ô tô, đi qua 5 chi tiết kỹ thuật có chú thích bám theo, đổi 5 màu sơn trực tiếp trong shader.

Chạy thử

Cần Node.js 18+.

npm install
npm run dev       # mở http://localhost:5173
npm run build     # xuất bản tĩnh vào dist/ — upload lên hosting bất kỳ

Mặc định trang mở tiếng Việt; thêm ?lang=en để mở tiếng Anh.

Cấu trúc

index.html            Khung trang (mọi section)
src/garage.js         Xe 3D, phản chiếu sàn, quét đèn, đổi màu sơn, chiếu điểm chú thích
src/relief.js         Ảnh + độ sâu → bề mặt 3D có ánh sáng
src/locales.js        TOÀN BỘ nội dung chữ (vi + en) — sửa ở đây
src/main.js           Ghép trang: preloader, cuộn, tương tác, form
src/style.css         Giao diện: biến màu/font ở `:root`, bố cục, responsive
src/fx.js + fx.css    Bộ motion: preloader, tách chữ, con trỏ, nút từ tính, marquee, đếm số, parallax, mở ảnh
src/smooth-scroll.js  Cuộn mượt (Lenis)
src/i18n.js           Chuyển ngôn ngữ (data-i18n)
public/images/        Ảnh webp (+ `*-depth.webp` = bản đồ độ sâu)
asset-prompts.json    Prompt tạo lại từng ảnh bằng AI
PROMPT.md             Prompt dựng lại trang bằng AI builder
scripts/depth-map.mjs  Tạo bản đồ độ sâu cho ảnh mới (chạy local)

Tuỳ biến nhanh

Muốn đổiSửa ở
Chữ, giá, địa chỉsrc/locales.js
Màu nền / chữ / fontbiến :root trong src/style.css + link Google Fonts trong index.html
Vị trí các điểm chú thíchmảng HOTSPOTS (u, v theo ảnh) trong src/main.js
Thêm màu sơnbảng PAINTS trong src/garage.js (hue, bão hoà, độ sáng) + nút .swatch trong index.html
Nhận diện vùng thân xe để sơndòng body = smoothstep(...hsv.x - 0.625...) trong PAINT_HOOK (đổi 0.625 theo màu gốc ảnh xe)
Giá & trả góp.plans trong index.html + hàm renderFinance()

Ảnh & bản đồ độ sâu

npm i -D @huggingface/transformers sharp
node scripts/depth-map.mjs anh-moi.png public/images/anh-moi-depth.webp

(Depth Anything V2 — chạy offline sau lần tải model đầu tiên.)

Ghi chú