sadan91.github.io/final-project
In index.html I defined the structure of the web page and imported all scripts needed for the work
This is the directory structure:
βββ final-project
βββ images
| βββ textures
| βββ bathroom
| βββ bedroom1
| βββ bedroom2
| βββ ground
| βββ house
| βββ kitchen
| βββ livingroom
| βββ skybox
| βββ videos
βββ models
| βββ bathroom
| βββ bedroom1
| βββ bedroom2
| βββ kitchen
| βββ livingroom
βββ scripts
| βββ dependencies
| βββ project_libs
| βββ house
βββ sounds
βββ videos
- Images contains all textures used in the project.
- Models contains all obj models importes with mtl files.
- Scripts contains all imported scripts. In dependencies there are all the externals libraries and in project_libs all scripts written by me.
- Sounds contains all sounds used in the project
- Videos contains all videos used in the project
This is the description for all scripts in project_libs:
- Inside house folder there are scripts that build all rooms and the building
- gui: build dat.gui controls
- index.js: main script, calls other files and build entire project
- motionDetection.js: collects all functions needed for motion detection
- objectLoader.js: function that loads an obj model with mtl file
- objectPicking.js: functions for managing object picking
- outdoor.js: creates neighborhood (skybox, sun...)
- PLNavigation.js: manages pointer lock navigation
- sounds.js: creates sound for some objects
- water.js: creates water using an external library
- First person navigation and Trackball navigation
- Night/Day Cycle
- Collision detection (in first person mode)
- Video texture with Motion detection for choosing videos
- Normal and bump maps
- PC animation with real web page
- Mirror with cubeCamera
- Water texture using an external shader
- Object picking
- Tween animation
- Skybox
- Fog
- Sounds effects
- Gui for controlling some parts of the project
- Flare light for the Sun