Итоговый экзаменационный проект по дисциплине "Веб-разработка". Мультиплеерная игра в крестики-нолики с 3D графикой, системой аккаунтов и сохранением прогресса.
https://tictactor-16xl.onrender.com
Игроки регистрируются, создают комнаты и играют друг против друга в реальном времени. Каждый игрок видит аватар противника в 3D пространстве. После завершения матча статистика побед и поражений автоматически сохраняется в базу данных MongoDB.
- Управление: Q/Й — захват мыши для вращения камеры, колёсико — зум, ЛКМ — ход.
- Вид от первого лица (камера внутри аватара игрока).
- Аватар противника поворачивается в сторону клетки при ходе.
- Кастомизация: выбор формы (сфера/куб) и цвета при регистрации.
- Frontend: HTML5, CSS3, JavaScript, Three.js
- Backend: Node.js, Express
- Real-time: Socket.io
- Database: MongoDB Atlas (Mongoose)
- Auth: JWT, bcrypt
- Deploy: Render.com
-
Клонируйте репозиторий:
git clone https://github.com/ТВОЙ_НИК/tictactoe3d.git cd tictactoe3d -
Установите зависимости:
npm install
-
Создайте файл
.envв корне проекта:PORT=3000 MONGO_URI=mongodb+srv://user:pass@cluster... JWT_SECRET=mysecretkey123
-
Запустите сервер:
npm run dev
-
Откройте в браузере: http://localhost:3000/auth.html
server/— бэкенд (API, сокеты, модели БД)client/— фронтенд (3D сцена, UI авторизации и лобби)client/src/game.js— основная логика игры на Three.js
- Работающая игра онлайн
- База данных с авторизацией и прогрессом
- Канбан-доска с задачами
- README с инструкцией
правильное объяснение - https://youtu.be/7K-sBUp0SmY?si=U_MoV1m4gXCypj8o