ATLAS is a browser-based PBR material viewer built with Three.js. It provides a real-time 3D preview, procedural material controls, and separate image import fields for common PBR texture channels.
- Real-time Three.js material preview
- Selectable 3D shapes:
- Cube
- Sphere
- Cylinder
- Cone
- Pyramid
- Rectangular box
- Valley of Desolation EXR environment lighting
- Material controls for:
- Index of refraction (IOR)
- Opacity
- Roughness
- Metalness
- Transmission
- Reflection
- Clearcoat
- Iridescence
- Thickness
- Individual PBR texture imports:
- Base Color
- Roughness
- Metalness
- Normal
- Height / Displacement
- Ambient Occlusion
- Emissive
- Procedural material generation
- Blender-inspired dark interface
- Dependency-free Node.js static server
- Node.js 18 or newer
- A modern browser with WebGL support
Clone or download the project, then install the dependencies:
npm installPlace the HDR environment file at:
public/environments/valley_of_desolation.exr
The application loads it from:
/environments/valley_of_desolation.exr
Build the application and start the local server:
npm startOr run the steps separately:
npm run build
node server.jsOpen the application at:
For Vite development mode with hot module replacement, run:
npm run devThen open the URL shown by Vite, usually:
- Choose a 3D shape from the Object panel.
- Import each available PBR image in the PBR Textures panel.
- Adjust the material properties with the sliders.
- Rotate and inspect the object using the mouse controls.
- Use Reset to restore the default material settings.
Color textures such as Base Color and Emissive are interpreted as sRGB. Data textures such as Roughness, Metalness, Normal, Height, and Ambient Occlusion are interpreted as non-color data.
.
├── public/
│ └── environments/
│ └── valley_of_desolation.exr
├── src/
│ ├── main.js
│ └── style.css
├── index.html
├── server.js
├── package.json
└── README.md
| Command | Description |
|---|---|
npm install |
Install project dependencies |
npm run dev |
Start Vite development mode with HMR |
npm run build |
Create the production build in dist/ |
npm start |
Build the application and serve it on port 8000 |
node server.js |
Serve the existing dist/ build on port 8000 |
This project is intended for personal and educational use.
Made 100% by Creatimely (me)! Pls subscribe to my YouTube channel