Skip to content

Commit 991a181

Browse files
Copilotabernier
andauthored
Update to latest r3f/drei version and React 19 (#95)
* Initial plan * Update all packages to latest r3f v9, drei v10, and React 19 Co-authored-by: abernier <76580+abernier@users.noreply.github.com> * Fix CI build failures: update postprocessing to v3.0.4, fix zustand imports, fix JSX namespace, migrate Reflector to MeshReflectorMaterial Co-authored-by: abernier <76580+abernier@users.noreply.github.com> * Fix Three.js API breaking changes: migrate render() to createRoot(), replace WebGLMultipleRenderTargets with WebGLRenderTarget Co-authored-by: abernier <76580+abernier@users.noreply.github.com> * Remove SSR effect from demos (removed in postprocessing v3), fix remaining Reflector migration Co-authored-by: abernier <76580+abernier@users.noreply.github.com> --------- Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com> Co-authored-by: abernier <76580+abernier@users.noreply.github.com>
1 parent 476e815 commit 991a181

File tree

174 files changed

+25697
-4474
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

174 files changed

+25697
-4474
lines changed

apps/website/package.json

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -171,15 +171,15 @@
171171
"clsx": "^2.1.1",
172172
"next": "14.2.5",
173173
"open-props": "^1.7.5",
174-
"react": "^18.3.1",
175-
"react-dom": "^18.3.1",
174+
"react": "^19.2.3",
175+
"react-dom": "^19.2.3",
176176
"react-icons": "^5.3.0",
177177
"react-use": "^17.5.1"
178178
},
179179
"devDependencies": {
180180
"@types/node": "^20",
181-
"@types/react": "^18.3.3",
182-
"@types/react-dom": "^18.3.0",
181+
"@types/react": "^19.2.7",
182+
"@types/react-dom": "^19.2.3",
183183
"eslint": "^8.57.0",
184184
"eslint-config-next": "14.2.5",
185185
"postcss": "^8",

demos/aquarium/package.json

Lines changed: 8 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -10,16 +10,16 @@
1010
"keywords": [],
1111
"dependencies": {
1212
"@pmndrs/branding": "^0.0.8",
13-
"@react-three/drei": "^9.109.5",
14-
"@react-three/fiber": "^8.17.5",
15-
"react": "^18.3.1",
16-
"react-dom": "^18.3.1",
17-
"three": "^0.165.0"
13+
"@react-three/drei": "^10.7.7",
14+
"@react-three/fiber": "^9.4.2",
15+
"react": "^19.2.3",
16+
"react-dom": "^19.2.3",
17+
"three": "^0.182.0"
1818
},
1919
"devDependencies": {
20-
"@types/react": "^18.3.3",
21-
"@types/react-dom": "^18.3.0",
22-
"@types/three": "^0.165.0",
20+
"@types/react": "^19.2.7",
21+
"@types/react-dom": "^19.2.3",
22+
"@types/three": "^0.182.0",
2323
"@vitejs/plugin-react": "^5.1.2",
2424
"typescript": "^5.5.4",
2525
"vite": "^7.3.0"

demos/arkanoid-under-60-loc/package.json

Lines changed: 8 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -10,16 +10,16 @@
1010
"physics"
1111
],
1212
"dependencies": {
13-
"@react-three/fiber": "^8.17.5",
14-
"@react-three/rapier": "^1.4.0",
15-
"react": "^18.3.1",
16-
"react-dom": "^18.3.1",
17-
"three": "^0.165.0"
13+
"@react-three/fiber": "^9.4.2",
14+
"@react-three/rapier": "^2.2.0",
15+
"react": "^19.2.3",
16+
"react-dom": "^19.2.3",
17+
"three": "^0.182.0"
1818
},
1919
"devDependencies": {
20-
"@types/react": "^18.3.3",
21-
"@types/react-dom": "^18.3.0",
22-
"@types/three": "^0.165.0",
20+
"@types/react": "^19.2.7",
21+
"@types/react-dom": "^19.2.3",
22+
"@types/three": "^0.182.0",
2323
"@vitejs/plugin-react": "^5.1.2",
2424
"typescript": "^5.5.4",
2525
"vite": "^7.3.0"

demos/arkanoid/package.json

Lines changed: 9 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -10,13 +10,13 @@
1010
"audio"
1111
],
1212
"dependencies": {
13-
"@react-spring/three": "^9.6.1",
13+
"@react-spring/three": "^10.0.3",
1414
"@react-three/cannon": "^6.6.0",
15-
"@react-three/drei": "^9.109.5",
16-
"@react-three/fiber": "^8.17.5",
17-
"react": "^18.3.1",
18-
"react-dom": "^18.3.1",
19-
"three": "^0.165.0",
15+
"@react-three/drei": "^10.7.7",
16+
"@react-three/fiber": "^9.4.2",
17+
"react": "^19.2.3",
18+
"react-dom": "^19.2.3",
19+
"three": "^0.182.0",
2020
"zustand": "^3.7.2"
2121
},
2222
"scripts": {
@@ -34,9 +34,9 @@
3434
],
3535
"type": "module",
3636
"devDependencies": {
37-
"@types/react": "^18.3.3",
38-
"@types/react-dom": "^18.3.0",
39-
"@types/three": "^0.165.0",
37+
"@types/react": "^19.2.7",
38+
"@types/react-dom": "^19.2.3",
39+
"@types/three": "^0.182.0",
4040
"@vitejs/plugin-react": "^5.1.2",
4141
"typescript": "^5.5.4",
4242
"vite": "^7.3.0"

demos/audio-analyser/package.json

Lines changed: 8 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -11,16 +11,16 @@
1111
],
1212
"dependencies": {
1313
"@pmndrs/branding": "^0.0.8",
14-
"@react-three/drei": "^9.109.5",
15-
"@react-three/fiber": "^8.17.5",
16-
"react": "^18.3.1",
17-
"react-dom": "^18.3.1",
18-
"three": "^0.165.0"
14+
"@react-three/drei": "^10.7.7",
15+
"@react-three/fiber": "^9.4.2",
16+
"react": "^19.2.3",
17+
"react-dom": "^19.2.3",
18+
"three": "^0.182.0"
1919
},
2020
"devDependencies": {
21-
"@types/react": "^18.3.3",
22-
"@types/react-dom": "^18.3.0",
23-
"@types/three": "^0.165.0",
21+
"@types/react": "^19.2.7",
22+
"@types/react-dom": "^19.2.3",
23+
"@types/three": "^0.182.0",
2424
"@vitejs/plugin-react": "^5.1.2",
2525
"typescript": "^5.5.4",
2626
"vite": "^7.3.0"

demos/audio-analyser/src/App.jsx

Lines changed: 16 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
import * as THREE from 'three'
22
import React, { Suspense, useEffect, useRef, useState, useMemo } from 'react'
33
import { Canvas, useFrame } from '@react-three/fiber'
4-
import { useGLTF, useAnimations, Reflector, useTexture } from '@react-three/drei'
4+
import { useGLTF, useAnimations, MeshReflectorMaterial, useTexture } from '@react-three/drei'
55
import useStore from './store'
66

77
import bustModel from './bust.glb?url'
@@ -143,9 +143,21 @@ function DancingDot() {
143143
function Ground() {
144144
const [floor, normal] = useTexture([groundTex1, groundTex2])
145145
return (
146-
<Reflector position={[0, -0.225, 0]} resolution={512} args={[10, 10]} mirror={0.5} mixBlur={7} mixStrength={0.8} rotation={[-HPI, 0, HPI]} blur={[400, 50]}>
147-
{(Material, props) => <Material color="#858585" metalness={0.5} roughnessMap={floor} normalMap={normal} normalScale={[0.1, 0.1]} {...props} />}
148-
</Reflector>
146+
<mesh position={[0, -0.225, 0]} rotation={[-HPI, 0, HPI]}>
147+
<planeGeometry args={[10, 10]} />
148+
<MeshReflectorMaterial
149+
resolution={512}
150+
mirror={0.5}
151+
mixBlur={7}
152+
mixStrength={0.8}
153+
blur={[400, 50]}
154+
color="#858585"
155+
metalness={0.5}
156+
roughnessMap={floor}
157+
normalMap={normal}
158+
normalScale={[0.1, 0.1]}
159+
/>
160+
</mesh>
149161
)
150162
}
151163

demos/audio-analyser/src/store.js

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
import create from 'zustand'
1+
import { create } from 'zustand'
22
import { addEffect } from '@react-three/fiber'
33

44
import audio1 from './drums.mp3'

demos/backdrop-and-cables/package.json

Lines changed: 8 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -9,16 +9,16 @@
99
"backdrop"
1010
],
1111
"dependencies": {
12-
"@react-three/drei": "^9.109.5",
13-
"@react-three/fiber": "^8.17.5",
14-
"react": "^18.3.1",
15-
"react-dom": "^18.3.1",
16-
"three": "^0.165.0"
12+
"@react-three/drei": "^10.7.7",
13+
"@react-three/fiber": "^9.4.2",
14+
"react": "^19.2.3",
15+
"react-dom": "^19.2.3",
16+
"three": "^0.182.0"
1717
},
1818
"devDependencies": {
19-
"@types/react": "^18.3.3",
20-
"@types/react-dom": "^18.3.0",
21-
"@types/three": "^0.165.0",
19+
"@types/react": "^19.2.7",
20+
"@types/react-dom": "^19.2.3",
21+
"@types/three": "^0.182.0",
2222
"@vitejs/plugin-react": "^5.1.2",
2323
"typescript": "^5.5.4",
2424
"vite": "^7.3.0"

demos/baking-soft-shadows/package.json

Lines changed: 8 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -11,16 +11,16 @@
1111
"progressive"
1212
],
1313
"dependencies": {
14-
"@react-three/drei": "^9.109.5",
15-
"@react-three/fiber": "^8.17.5",
16-
"react": "^18.3.1",
17-
"react-dom": "^18.3.1",
18-
"three": "^0.165.0"
14+
"@react-three/drei": "^10.7.7",
15+
"@react-three/fiber": "^9.4.2",
16+
"react": "^19.2.3",
17+
"react-dom": "^19.2.3",
18+
"three": "^0.182.0"
1919
},
2020
"devDependencies": {
21-
"@types/react": "^18.3.3",
22-
"@types/react-dom": "^18.3.0",
23-
"@types/three": "^0.165.0",
21+
"@types/react": "^19.2.7",
22+
"@types/react-dom": "^19.2.3",
23+
"@types/three": "^0.182.0",
2424
"@vitejs/plugin-react": "^5.1.2",
2525
"typescript": "^5.5.4",
2626
"vite": "^7.3.0"

demos/basic-ballpit/package.json

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -9,16 +9,16 @@
99
],
1010
"dependencies": {
1111
"@react-three/cannon": "^6.6.0",
12-
"@react-three/fiber": "^8.17.5",
12+
"@react-three/fiber": "^9.4.2",
1313
"nice-color-palettes": "^3.0.0",
14-
"react": "^18.3.1",
15-
"react-dom": "^18.3.1",
16-
"three": "^0.165.0"
14+
"react": "^19.2.3",
15+
"react-dom": "^19.2.3",
16+
"three": "^0.182.0"
1717
},
1818
"devDependencies": {
19-
"@types/react": "^18.3.3",
20-
"@types/react-dom": "^18.3.0",
21-
"@types/three": "^0.165.0",
19+
"@types/react": "^19.2.7",
20+
"@types/react-dom": "^19.2.3",
21+
"@types/three": "^0.182.0",
2222
"@vitejs/plugin-react": "^5.1.2",
2323
"typescript": "^5.5.4",
2424
"vite": "^7.3.0"

0 commit comments

Comments
 (0)