- 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.
![Steuerungspanel](https://private-user-images.githubusercontent.com/26843910/285060623-9af0e86f-d70a-4879-b6bf-322e746960e0.png?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTUiLCJleHAiOjE3MjA0MDAxNzcsIm5iZiI6MTcyMDM5OTg3NywicGF0aCI6Ii8yNjg0MzkxMC8yODUwNjA2MjMtOWFmMGU4NmYtZDcwYS00ODc5LWI2YmYtMzIyZTc0Njk2MGUwLnBuZz9YLUFtei1BbGdvcml0aG09QVdTNC1ITUFDLVNIQTI1NiZYLUFtei1DcmVkZW50aWFsPUFLSUFWQ09EWUxTQTUzUFFLNFpBJTJGMjAyNDA3MDglMkZ1cy1lYXN0LTElMkZzMyUyRmF3czRfcmVxdWVzdCZYLUFtei1EYXRlPTIwMjQwNzA4VDAwNTExN1omWC1BbXotRXhwaXJlcz0zMDAmWC1BbXotU2lnbmF0dXJlPWQ0ZWFiYjI2NWM0YzU0NzFiYjE3Mzg1NWZhZDBhM2MyZTc3M2YzZDRlY2FiZmJmN2RkNzdiNTE5NjAwNzBlYjUmWC1BbXotU2lnbmVkSGVhZGVycz1ob3N0JmFjdG9yX2lkPTAma2V5X2lkPTAmcmVwb19pZD0wIn0.BvQeCh-FqgdGTGxAAD-lo_GM9qReya5n8DOEeNQdhU0)
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