Project Plateau
Project Plateau: four glass plates, one living valley, and the road back to camp.
翻訳待ち
No updates detected yet. GitHub releases will appear here.
The maker's introduction consists of the line above. Read the repository README for more details. Repository README ↗
Loading the full README.
Read the full README ↗Jocuri în realitate augmentată, direct în browser (iPhone, Android, laptop), singur sau cu prietenii:
La aruncările tactile și ale calculatorului, o mână 3D ține zarurile, le agită și le eliberează. Când arunci cu mâna reală urmărită de cameră, zarurile pleacă direct din ea. La piatră–hârtie–foarfecă, mâinile reale din cameră au doar o piatră, o foaie sau o foarfecă 3D deasupra, fără avatar duplicat. Adversarul păstrează mâna 3D articulată și simbolul. Adversarul bate ritmul cu pumnul și își arată simbolul doar la dezvăluirea alegerii; la rezultat simbolurile și mâna adversarului se apropie și reacționează. Modelul comun este în src/scenes/virtual-hand.js, iar simbolurile în src/scenes/rps-symbols.js, fără biblioteci suplimentare.
src/rules/ regulile jocurilor (fără grafică, testate automat)
src/ar/ camera, urmărirea mesei și recunoașterea mâinii
src/scenes/ scenele 3D ale fiecărui joc
src/ui/ interfața (app.js leagă totul), sunete
src/extra/ multiplayer și bancnote (funcții în plus)
tests/ teste automate · tools/ar-sim/ simulatorul de telefon
Explicat pe larg, pas cu pas: DOCUMENTATIE.md.
| Fișier | Ce face |
|---|---|
src/rules/ludo.js | regulile „Nu te supăra, frate” |
src/rules/game.js | starea camerei de joc (lobby, zaruri, PHF, Ludo, calculatorul) — reducer pur |
src/extra/net.js | multiplayer fără server propriu: PeerJS (WebRTC); gazda ține starea și o trimite tuturor |
src/scenes/dice.js | zaruri cu fizică (cannon-es); valoarea e decisă de cel care aruncă, animația o respectă pe toate telefoanele |
src/scenes/board.js | tabla 3D, pionii animați pas cu pas |
src/rules/jenga.js, src/scenes/jenga-view.js | regulile și stabilitatea turnului / turnul 3D, tragerea și prăbușirea |
src/rules/xo.js, src/scenes/xo-view.js | regulile și calculatorul / tabla 3×3 |
src/ar/ar.js | scena: pe masă cu 8th Wall (rezervă: AlvaAR SLAM + giroscop) / marker ArUco (js-aruco2) / WebXR (?webxr) |
src/ar/hands.js | recunoașterea mâinilor și a gestului |
src/ar/surface.js | masa din punctele 3D ale urmăririi (înălțimea unde se adună cele mai multe), ca aplicația Măsurare |
src/ar/ar.js → makeHand | mâna reală în scena AR: raze 3D prin degete, distanța estimată din mărimea palmei, ciupit |
src/scenes/rps-ar.js, src/scenes/virtual-hand.js | simboluri peste mâinile reale, mâinile articulate ale adversarilor și reacții animate |
src/ui/sound.js | sunete sintetizate, vibrație, confetti |
src/extra/banknotes.js, src/extra/banknote-refs.json | recunoașterea bancnotelor: rețea neuronală (MediaPipe Image Embedder) + cel mai apropiat vecin |
src/ui/app.js, index.html | interfața (Inter + iconițe Phosphor prin Iconify) |
Biblioteci (din CDN): three.js, cannon-es, PeerJS, MediaPipe Tasks Vision, 8th Wall Engine © Niantic Spatial (binar gratuit, licență proprie — urmărirea mesei), AlvaAR (GPL-3.0, rezervă), js-aruco2.
This is the beginning of the README. Read the rest at the original. Read the full README ↗