- Module: Computer Graphics
- Professor: Prof. Dr. Schneider
- Course: TIM21
- Team Members:
This project utilizes the three.js library to create a 3D scene of the Eiffel Tower and its surroundings. The user can explore the scene using various cameras
- Day/Night cycle
- Custom grass shader
- Shadows
- Raycasting collision detection (for player movement) using BVH
- Modular design
- Animations (Cars, Birds)
To run the application locally on your device, follow these steps:
- Clone the repository/Download the code.
- Install dependencies using
npm install
. - Start the application with the command
npm start
.
Afterward, a URL will be output in the console, where the application is accessible. This URL can be opened in any browser.
Fair warning: The application is quite resource-intensive and might not run smoothly on older devices. It has been tested on a 2021 Macbook Pro (M1 Max, 32GB RAM) and a Windows Desktop PC (i9 9900K, RTX 2080Ti, 64 GB RAM), where it ran decently smooth.

You can control the player using one of two methods
- Using the UI in the bottom left corner
- Using the mouse and keyboard see Keybinds
- W: Move forward
- S: Move backward
- A: Move left
- D: Move right
- R: Move up
- F: Move down
- Mouse: Look around
- Arrow keys: Look around
As previously mentioned, you can control the player using the UI in the bottom left corner. The UI can also be used to trigger the following things:
- Set the time to day
- Set the time to night
- Change the current camera (Drone, Overview, Eiffel Tower)
- Reset the drone camera to the starting position