An interactive 3D simulator developed in Unity, connected to a robust ASP.NET Core backend, allowing users to manage a virtual account, purchase cars, and view them in a personalized garage.
This project represents a Full-Stack application applied in the context of video game development. Unlike standard games that save data locally, this simulator implements a real Client-Server architecture.
The game logic (Client) is separated from the business logic and data persistence (Server), with communication handled via HTTP requests to a secure REST API. Users can register, accumulate virtual currency, and purchase vehicles that remain permanently saved in the database.
- Authentication System: Fully functional Login and Register (First Name, Last Name, Email validation).
- 3D Showroom & Garage: Interactive car visualization (Low Poly style).
- Reactive UI Interface: Menus for viewing specifications (Speed, Price, Manufacturing Year).
- Economic System: User budget management and asset acquisition.
- HTTP Networking: Custom implementation of an
HttpClientfor asynchronous communication with the server.
- RESTful Architecture: Structured endpoints for Users and Cars (CRUD).
- Data Persistence: SQLite database managed via Entity Framework Core.
- Dockerized: The backend runs isolated in a Docker container for quick installation.
- Swagger UI: Automatic API documentation for rapid testing.
| Category | Technologies |
|---|---|
| Frontend | Unity Engine (C#), TextMeshPro (UI), Newtonsoft.Json |
| Backend | ASP.NET Core Web API (.NET 8), Entity Framework Core |
| Database | SQLite |
| DevOps | Docker, Docker Compose |
Joc.mp4
Joc2.mp4
| Login Menu | Garage System | Swagger API |
|---|---|---|
![]() |
![]() |
![]() |
The project is designed to run modularly. Follow the steps below:
We configured Docker Compose to eliminate the need for manually installing databases or complex SDKs.
git clone https://github.com/IonutMocanu/YourGame.gitcd YourGamedocker-compose up --buildThe server will be accessible at: http://localhost:7106/swagger/index.html
- Open Unity Hub.
- Click Add Project and select the
ProiectIS2folder. - Open the main scene (e.g.,
LoginScene). - Ensure the server (Docker) is running.
- Press Play.
- Go to the root folder.
- Then go to
ProiectIS2->BuildProfiles->ProiectIS2.
The backend exposes the following main routes:
GET /api/User/{email}- Returns the player's profile and their garage.POST /api/User- Registers a new player.PUT /api/User/add-money- Updates the financial balance.
GET /api/Car- Returns the car catalog.POST /api/Car/buy/{userId}- Processes the transaction for purchasing a car.
Project created for the Software Engineering course by:
© 2026 Your Game. All rights reserved.


