Trabajo Práctico Final - Taller de Programación I (Cátedra Veiga) - FIUBA
Need for Speed G25 es una implementación multijugador del clásico juego de carreras. Desarrollado desde cero utilizando C++, implementando un modelo Cliente-Servidor, y Qt para la renderización gráfica y el editor.
¡Visita nuestra Landing Page para ver el trailer y descargar el juego con estilo retro!
juli-rivero.github.io/need-for-speed-g25
Este proyecto busca replicar la experiencia arcade de carreras con las siguientes características técnicas:
- Multijugador: Arquitectura Cliente-Servidor concurrente.
- Físicas: Simulación de colisiones y movimiento en el servidor.
- Editor de Mapas: Herramienta gráfica para crear pistas personalizadas.
El enunciado original se encuentra disponible aquí.
El proyecto ha sido probado en Ubuntu/Linux Mint.
El repositorio incluye un script que instala todas las dependencias necesarias (Qt, CMake, herramientas de compilación) y compila el proyecto.
-
Opciòn A - Clonar el repositorio:
git clone [https://github.com/juli-rivero/need-for-speed-g25.git](https://github.com/juli-rivero/need-for-speed-g25.git) cd need-for-speed-g25Opción B — Descargar ZIP desde Releases Descomprimir:
unzip <nombre del zip> cd <nombre del zip>
-
Ejecutar el instalador:
chmod +x installer.sh sudo ./installer.sh
> Nota: Se requieren permisos de
sudopara instalar las librerías de Qt y compiladores.
Una vez compilado, puedes utilizar los siguientes comandos definidos en el Makefile:
Inicia el servidor para aceptar conexiones.
make exec-serverInicia una instancia del juego para conectarse al servidor.
make exec-clientAbre el editor gráfico para crear o modificar pistas.
make exec-editorPara detalles profundos sobre la arquitectura, el protocolo de comunicación y los diagramas de clase, visita nuestra Wiki: 👉 Documentación Técnica (Wiki)
| Nombre | GitHub |
|---|---|
| Elvis Quispe Limachi | @Elvis-Quispe |
| Franco Lucchesi | @Franco-Lucchesi |
| Nicolas Francisco Mazzeo | @Nicolas-Mazzeo |
| Julián Rivero | @juli-rivero |
Agradecemos por la ayuda de nuestro corrector, quién siempre estuvo a disposición en todo momento, Iván Erlich.