This repository contains the exercises completed as part of the Three.js Journey course by Bruno Simon.
- Introduction
- What is WebGL and why use Three.js
- First Three.js Project
- Transform Objects
- Animations
- Cameras
- Fullscreen and Resizing
- Geometries
- Debug UI
- Textures
- Materials
- 3D Text
- Go Live
- Physics
- Imported Models
- Raycaster and Mouse Events
- Custom Models with Blender
- Environment Map
- Realistic Render
- Code Structuring for Bigger Projects
- Shaders
- Shader Patterns
- Raging Sea
- Animated Galaxy
- Modified Materials
- Coffee Smoke
- Hologram
- Fireworks
- Lights Shading
- Raging Sea Shading
- Halftone Shading
- Earth
- Particles cursor animation
- Particles morphing
- GPGPU Flow Field Particles
- Wobbly Sphere
- Sliced Model
- Procedural Terrain
Chapter 06 - Portal Scene
- Creating a scene in Blender
- Baking and exporting the scene
- Importing and optimizing the scene
- Adding details to the scene
- What are React and React Three Fiber
- First React Application
- First R3F Application
- Drei
- Debug
- Environment and Staging
- TBD
Each lesson is developed in a separate branch.
-
Create a new branch using the kebab-case format, for example
01-first-lesson
. -
Checkout to the new branch
-
Unzip the starter provided in the course lesson
-
Run the following command:
npm i && npm i prettier --save-dev && npm pkg set scripts.format="prettier --write ." && npm run format
- Installs all the lesson dependencies
- Adds
prettier
as a development dependency - Adds a
format
script to thepackage.json
file - Runs the
format
script to automatically format the project files withprettier
Each push to a branch initiates a deployment to a separate Vercel project for every lesson.
Each lesson will be available live at dammafra.<branch-name>.vercel.app
.