A collection of interactive 3D graphics projects built with Three.js, demonstrating various techniques and capabilities in WebGL rendering.
This repository contains 12 different 3D visualization projects, each demonstrating different aspects of Three.js and WebGL capabilities. The projects range from a complete solar system simulation to specialized demonstrations of specific 3D techniques.
The main project - a comprehensive solar system simulation featuring:
- All planets with accurate relative sizes, positions, and textures
- Realistic planetary orbits and rotations
- Interactive controls for exploration
- Planet information panels
- Asteroid belts
- Customizable rotation speed
- Detailed postprocessing effects (bloom, outline)
An advanced shader demonstration showing:
- Custom GLSL shaders for realistic lava effect
- Dynamic lighting and texture animation
- Heat distortion effects
A showcase of different material types for 3D vehicles:
- PBR (Physically Based Rendering) materials
- Metallic and roughness mapping
- Environmental reflections
- Various surface types (paint, chrome, glass, rubber)
Demonstrates loading and rendering of tiled 3D content:
- Efficient loading of large 3D datasets
- Level of detail management
- Optimized rendering techniques
Geographic visualization focusing on the Philippines:
- Topographical representation
- Custom camera paths
- Information overlays
- Animated elements
Urban visualization of Tokyo:
- Building models
- City layout
- Atmospheric effects
- Day/night transitions
Advanced animation techniques:
- Complex object transformations
- Animation sequencing
- Camera movement
- Custom timing functions
Demonstration of keyframe-based animation:
- Interpolation between key poses
- Animation timing control
- Multiple animation tracks
- Blending between animations
Interactive vehicle visualization:
- Detailed sports car model
- Interactive camera controls
- Realistic materials
- Optional animation sequences
Off-road vehicle visualization:
- Detailed jeep model
- Different viewing angles
- Component highlighting
- Simplified materials
3D presentation of image content:
- Interactive 3D gallery layout
- Transition effects
- Custom navigation controls
- Image loading optimization
Particle system demonstration:
- Thousands of interactive particles
- Physics-based movement
- Color transitions
- Mouse interaction
- Three.js: Core 3D library for WebGL rendering
- JavaScript/ES6: Core programming language
- Node.js: Simple server implementation
- HTML5/CSS3: Structure and styling
-
Clone this repository:
git clone https://github.com/yourusername/3d-graphics-showcase.git -
Navigate to the project folder:
cd 3d-graphics-showcase -
Install dependencies:
npm install -
Start the server:
npm start -
Open your browser and go to:
http://localhost:3000 -
Navigate to specific projects by opening their HTML files.
/*.html: Individual project pages/js/*.js: JavaScript files corresponding to each project/assets/: Textures and other resources/images/: Image assets used across projectsserver.js: Simple Node.js server for local development
These projects work best in modern browsers with WebGL support:
- Chrome (recommended)
- Firefox
- Edge
- Safari
This project is licensed under the MIT License.
- Three.js community for documentation and examples
- Various texture and model resources used in these projects
Visit the live demo at: https://your-vercel-app-name.vercel.app
- Interactive controls for flow speed, glow intensity, and turbulence
- Multiple geometric shapes and themes
- Advanced visual effects including bloom and post-processing
- Smooth camera controls with optimized zooming
- Accurate planetary positions and orbits
- Interactive camera with smooth controls
- Adjustable simulation speed
- Detailed planet information
-
Clone the repository:
git clone https://github.com/yourusername/3d-visualization.git cd 3d-visualization -
Start a local server:
- Using Node.js and
http-server:npm install -g http-server http-server - Or Python:
python -m http.server
- Using Node.js and
-
Open your browser at
http://localhost:8080
This project is configured for automatic deployment to Vercel through GitHub integration.
- Sign up for a Vercel account
- Link your GitHub repository in the Vercel dashboard
- Configure the following repository secrets in GitHub:
VERCEL_TOKEN: Your Vercel API tokenVERCEL_ORG_ID: Your Vercel organization IDVERCEL_PROJECT_ID: Your Vercel project ID
- Pushes to
mainbranch trigger production deployments - Pull requests generate preview deployments
- Status checks run automatically on each commit
- Three.js for 3D rendering
- WebGL shaders for visual effects
- Native JavaScript for UI and interactions
This project is licensed under the MIT License - see the LICENSE file for details.
- Three.js community for examples and inspiration
- Shader inspiration from various WebGL demos