@react-three/fiber 8.0.24 → 8.0.27
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +18 -0
- package/dist/declarations/src/index.d.ts +1 -0
- package/dist/{index-d1db558e.esm.js → index-4f1a8e2f.esm.js} +23 -13
- package/dist/{index-cc1b2b8b.cjs.dev.js → index-acc8c265.cjs.dev.js} +23 -13
- package/dist/{index-fbc2ae01.cjs.prod.js → index-c30de6b8.cjs.prod.js} +23 -13
- package/dist/react-three-fiber.cjs.dev.js +2 -1
- package/dist/react-three-fiber.cjs.prod.js +2 -1
- package/dist/react-three-fiber.esm.js +2 -2
- package/native/dist/react-three-fiber-native.cjs.dev.js +1 -1
- package/native/dist/react-three-fiber-native.cjs.prod.js +1 -1
- package/native/dist/react-three-fiber-native.esm.js +2 -2
- package/package.json +1 -1
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,23 @@
|
|
|
1
1
|
# @react-three/fiber
|
|
2
2
|
|
|
3
|
+
## 8.0.27
|
|
4
|
+
|
|
5
|
+
### Patch Changes
|
|
6
|
+
|
|
7
|
+
- 7940995: fix: resume on xrsession end, export internal events
|
|
8
|
+
|
|
9
|
+
## 8.0.26
|
|
10
|
+
|
|
11
|
+
### Patch Changes
|
|
12
|
+
|
|
13
|
+
- 7b6df9df: fix: infinite loop updating cam viewport
|
|
14
|
+
|
|
15
|
+
## 8.0.25
|
|
16
|
+
|
|
17
|
+
### Patch Changes
|
|
18
|
+
|
|
19
|
+
- b7cd0f42: update viewport on camera changes
|
|
20
|
+
|
|
3
21
|
## 8.0.24
|
|
4
22
|
|
|
5
23
|
### Patch Changes
|
|
@@ -6,5 +6,6 @@ export type { Intersection, Subscription, Dpr, Size, Viewport, RenderCallback, P
|
|
|
6
6
|
export type { ThreeEvent, Events, EventManager, ComputeFunction } from './core/events';
|
|
7
7
|
export type { ObjectMap, Camera } from './core/utils';
|
|
8
8
|
export * from './web/Canvas';
|
|
9
|
+
export { createEvents } from './core/events';
|
|
9
10
|
export { createPointerEvents as events } from './web/events';
|
|
10
11
|
export * from './core';
|
|
@@ -1362,25 +1362,37 @@ const createStore = (invalidate, advance) => {
|
|
|
1362
1362
|
}
|
|
1363
1363
|
};
|
|
1364
1364
|
});
|
|
1365
|
-
const state = rootState.getState();
|
|
1366
|
-
|
|
1365
|
+
const state = rootState.getState();
|
|
1367
1366
|
let oldSize = state.size;
|
|
1368
1367
|
let oldDpr = state.viewport.dpr;
|
|
1368
|
+
let oldCamera = state.camera;
|
|
1369
1369
|
rootState.subscribe(() => {
|
|
1370
1370
|
const {
|
|
1371
1371
|
camera,
|
|
1372
1372
|
size,
|
|
1373
1373
|
viewport,
|
|
1374
|
-
gl
|
|
1375
|
-
|
|
1374
|
+
gl,
|
|
1375
|
+
set
|
|
1376
|
+
} = rootState.getState(); // Resize camera and renderer on changes to size and pixelratio
|
|
1376
1377
|
|
|
1377
1378
|
if (size !== oldSize || viewport.dpr !== oldDpr) {
|
|
1378
|
-
|
|
1379
|
+
oldSize = size;
|
|
1380
|
+
oldDpr = viewport.dpr; // Update camera & renderer
|
|
1379
1381
|
|
|
1382
|
+
updateCamera(camera, size);
|
|
1380
1383
|
gl.setPixelRatio(viewport.dpr);
|
|
1381
1384
|
gl.setSize(size.width, size.height, size.updateStyle);
|
|
1382
|
-
|
|
1383
|
-
|
|
1385
|
+
} // Update viewport once the camera changes
|
|
1386
|
+
|
|
1387
|
+
|
|
1388
|
+
if (camera !== oldCamera) {
|
|
1389
|
+
oldCamera = camera; // Update viewport
|
|
1390
|
+
|
|
1391
|
+
set(state => ({
|
|
1392
|
+
viewport: { ...state.viewport,
|
|
1393
|
+
...state.viewport.getCurrentViewport(camera)
|
|
1394
|
+
}
|
|
1395
|
+
}));
|
|
1384
1396
|
}
|
|
1385
1397
|
}); // Invalidate on any change
|
|
1386
1398
|
|
|
@@ -1726,12 +1738,10 @@ function createRoot(canvas) {
|
|
|
1726
1738
|
|
|
1727
1739
|
|
|
1728
1740
|
const handleSessionChange = () => {
|
|
1729
|
-
const
|
|
1730
|
-
gl.xr.enabled = gl.xr.isPresenting;
|
|
1731
|
-
|
|
1732
|
-
|
|
1733
|
-
|
|
1734
|
-
gl.xr.setAnimationLoop(gl.xr.isPresenting ? handleXRFrame : null);
|
|
1741
|
+
const state = store.getState();
|
|
1742
|
+
state.gl.xr.enabled = state.gl.xr.isPresenting;
|
|
1743
|
+
state.gl.xr.setAnimationLoop(state.gl.xr.isPresenting ? handleXRFrame : null);
|
|
1744
|
+
if (!state.gl.xr.isPresenting) invalidate(state);
|
|
1735
1745
|
}; // WebXR session manager
|
|
1736
1746
|
|
|
1737
1747
|
|
|
@@ -1389,25 +1389,37 @@ const createStore = (invalidate, advance) => {
|
|
|
1389
1389
|
}
|
|
1390
1390
|
};
|
|
1391
1391
|
});
|
|
1392
|
-
const state = rootState.getState();
|
|
1393
|
-
|
|
1392
|
+
const state = rootState.getState();
|
|
1394
1393
|
let oldSize = state.size;
|
|
1395
1394
|
let oldDpr = state.viewport.dpr;
|
|
1395
|
+
let oldCamera = state.camera;
|
|
1396
1396
|
rootState.subscribe(() => {
|
|
1397
1397
|
const {
|
|
1398
1398
|
camera,
|
|
1399
1399
|
size,
|
|
1400
1400
|
viewport,
|
|
1401
|
-
gl
|
|
1402
|
-
|
|
1401
|
+
gl,
|
|
1402
|
+
set
|
|
1403
|
+
} = rootState.getState(); // Resize camera and renderer on changes to size and pixelratio
|
|
1403
1404
|
|
|
1404
1405
|
if (size !== oldSize || viewport.dpr !== oldDpr) {
|
|
1405
|
-
|
|
1406
|
+
oldSize = size;
|
|
1407
|
+
oldDpr = viewport.dpr; // Update camera & renderer
|
|
1406
1408
|
|
|
1409
|
+
updateCamera(camera, size);
|
|
1407
1410
|
gl.setPixelRatio(viewport.dpr);
|
|
1408
1411
|
gl.setSize(size.width, size.height, size.updateStyle);
|
|
1409
|
-
|
|
1410
|
-
|
|
1412
|
+
} // Update viewport once the camera changes
|
|
1413
|
+
|
|
1414
|
+
|
|
1415
|
+
if (camera !== oldCamera) {
|
|
1416
|
+
oldCamera = camera; // Update viewport
|
|
1417
|
+
|
|
1418
|
+
set(state => ({
|
|
1419
|
+
viewport: { ...state.viewport,
|
|
1420
|
+
...state.viewport.getCurrentViewport(camera)
|
|
1421
|
+
}
|
|
1422
|
+
}));
|
|
1411
1423
|
}
|
|
1412
1424
|
}); // Invalidate on any change
|
|
1413
1425
|
|
|
@@ -1753,12 +1765,10 @@ function createRoot(canvas) {
|
|
|
1753
1765
|
|
|
1754
1766
|
|
|
1755
1767
|
const handleSessionChange = () => {
|
|
1756
|
-
const
|
|
1757
|
-
gl.xr.enabled = gl.xr.isPresenting;
|
|
1758
|
-
|
|
1759
|
-
|
|
1760
|
-
|
|
1761
|
-
gl.xr.setAnimationLoop(gl.xr.isPresenting ? handleXRFrame : null);
|
|
1768
|
+
const state = store.getState();
|
|
1769
|
+
state.gl.xr.enabled = state.gl.xr.isPresenting;
|
|
1770
|
+
state.gl.xr.setAnimationLoop(state.gl.xr.isPresenting ? handleXRFrame : null);
|
|
1771
|
+
if (!state.gl.xr.isPresenting) invalidate(state);
|
|
1762
1772
|
}; // WebXR session manager
|
|
1763
1773
|
|
|
1764
1774
|
|
|
@@ -1389,25 +1389,37 @@ const createStore = (invalidate, advance) => {
|
|
|
1389
1389
|
}
|
|
1390
1390
|
};
|
|
1391
1391
|
});
|
|
1392
|
-
const state = rootState.getState();
|
|
1393
|
-
|
|
1392
|
+
const state = rootState.getState();
|
|
1394
1393
|
let oldSize = state.size;
|
|
1395
1394
|
let oldDpr = state.viewport.dpr;
|
|
1395
|
+
let oldCamera = state.camera;
|
|
1396
1396
|
rootState.subscribe(() => {
|
|
1397
1397
|
const {
|
|
1398
1398
|
camera,
|
|
1399
1399
|
size,
|
|
1400
1400
|
viewport,
|
|
1401
|
-
gl
|
|
1402
|
-
|
|
1401
|
+
gl,
|
|
1402
|
+
set
|
|
1403
|
+
} = rootState.getState(); // Resize camera and renderer on changes to size and pixelratio
|
|
1403
1404
|
|
|
1404
1405
|
if (size !== oldSize || viewport.dpr !== oldDpr) {
|
|
1405
|
-
|
|
1406
|
+
oldSize = size;
|
|
1407
|
+
oldDpr = viewport.dpr; // Update camera & renderer
|
|
1406
1408
|
|
|
1409
|
+
updateCamera(camera, size);
|
|
1407
1410
|
gl.setPixelRatio(viewport.dpr);
|
|
1408
1411
|
gl.setSize(size.width, size.height, size.updateStyle);
|
|
1409
|
-
|
|
1410
|
-
|
|
1412
|
+
} // Update viewport once the camera changes
|
|
1413
|
+
|
|
1414
|
+
|
|
1415
|
+
if (camera !== oldCamera) {
|
|
1416
|
+
oldCamera = camera; // Update viewport
|
|
1417
|
+
|
|
1418
|
+
set(state => ({
|
|
1419
|
+
viewport: { ...state.viewport,
|
|
1420
|
+
...state.viewport.getCurrentViewport(camera)
|
|
1421
|
+
}
|
|
1422
|
+
}));
|
|
1411
1423
|
}
|
|
1412
1424
|
}); // Invalidate on any change
|
|
1413
1425
|
|
|
@@ -1753,12 +1765,10 @@ function createRoot(canvas) {
|
|
|
1753
1765
|
|
|
1754
1766
|
|
|
1755
1767
|
const handleSessionChange = () => {
|
|
1756
|
-
const
|
|
1757
|
-
gl.xr.enabled = gl.xr.isPresenting;
|
|
1758
|
-
|
|
1759
|
-
|
|
1760
|
-
|
|
1761
|
-
gl.xr.setAnimationLoop(gl.xr.isPresenting ? handleXRFrame : null);
|
|
1768
|
+
const state = store.getState();
|
|
1769
|
+
state.gl.xr.enabled = state.gl.xr.isPresenting;
|
|
1770
|
+
state.gl.xr.setAnimationLoop(state.gl.xr.isPresenting ? handleXRFrame : null);
|
|
1771
|
+
if (!state.gl.xr.isPresenting) invalidate(state);
|
|
1762
1772
|
}; // WebXR session manager
|
|
1763
1773
|
|
|
1764
1774
|
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
|
|
3
3
|
Object.defineProperty(exports, '__esModule', { value: true });
|
|
4
4
|
|
|
5
|
-
var index = require('./index-
|
|
5
|
+
var index = require('./index-acc8c265.cjs.dev.js');
|
|
6
6
|
var _extends = require('@babel/runtime/helpers/extends');
|
|
7
7
|
var React = require('react');
|
|
8
8
|
var THREE = require('three');
|
|
@@ -241,6 +241,7 @@ exports.addTail = index.addTail;
|
|
|
241
241
|
exports.advance = index.advance;
|
|
242
242
|
exports.applyProps = index.applyProps;
|
|
243
243
|
exports.context = index.context;
|
|
244
|
+
exports.createEvents = index.createEvents;
|
|
244
245
|
exports.createPortal = index.createPortal;
|
|
245
246
|
exports.createRoot = index.createRoot;
|
|
246
247
|
exports.dispose = index.dispose;
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
|
|
3
3
|
Object.defineProperty(exports, '__esModule', { value: true });
|
|
4
4
|
|
|
5
|
-
var index = require('./index-
|
|
5
|
+
var index = require('./index-c30de6b8.cjs.prod.js');
|
|
6
6
|
var _extends = require('@babel/runtime/helpers/extends');
|
|
7
7
|
var React = require('react');
|
|
8
8
|
var THREE = require('three');
|
|
@@ -241,6 +241,7 @@ exports.addTail = index.addTail;
|
|
|
241
241
|
exports.advance = index.advance;
|
|
242
242
|
exports.applyProps = index.applyProps;
|
|
243
243
|
exports.context = index.context;
|
|
244
|
+
exports.createEvents = index.createEvents;
|
|
244
245
|
exports.createPortal = index.createPortal;
|
|
245
246
|
exports.createRoot = index.createRoot;
|
|
246
247
|
exports.dispose = index.dispose;
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { c as createEvents, e as extend, u as useMutableCallback, a as createRoot, E as ErrorBoundary, B as Block, b as useIsomorphicLayoutEffect, d as unmountComponentAtNode } from './index-
|
|
2
|
-
export { t as ReactThreeFiber, s as _roots, q as act, n as addAfterEffect, m as addEffect, o as addTail, l as advance, i as applyProps, f as context, g as createPortal, a as createRoot, j as dispose, e as extend, p as getRootState, k as invalidate, h as reconciler, r as render, d as unmountComponentAtNode, x as useFrame, y as useGraph, z as useLoader, v as useStore, w as useThree } from './index-
|
|
1
|
+
import { c as createEvents, e as extend, u as useMutableCallback, a as createRoot, E as ErrorBoundary, B as Block, b as useIsomorphicLayoutEffect, d as unmountComponentAtNode } from './index-4f1a8e2f.esm.js';
|
|
2
|
+
export { t as ReactThreeFiber, s as _roots, q as act, n as addAfterEffect, m as addEffect, o as addTail, l as advance, i as applyProps, f as context, c as createEvents, g as createPortal, a as createRoot, j as dispose, e as extend, p as getRootState, k as invalidate, h as reconciler, r as render, d as unmountComponentAtNode, x as useFrame, y as useGraph, z as useLoader, v as useStore, w as useThree } from './index-4f1a8e2f.esm.js';
|
|
3
3
|
import _extends from '@babel/runtime/helpers/esm/extends';
|
|
4
4
|
import * as React from 'react';
|
|
5
5
|
import * as THREE from 'three';
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
|
|
3
3
|
Object.defineProperty(exports, '__esModule', { value: true });
|
|
4
4
|
|
|
5
|
-
var index = require('../../dist/index-
|
|
5
|
+
var index = require('../../dist/index-acc8c265.cjs.dev.js');
|
|
6
6
|
var _extends = require('@babel/runtime/helpers/extends');
|
|
7
7
|
var React = require('react');
|
|
8
8
|
var THREE = require('three');
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
|
|
3
3
|
Object.defineProperty(exports, '__esModule', { value: true });
|
|
4
4
|
|
|
5
|
-
var index = require('../../dist/index-
|
|
5
|
+
var index = require('../../dist/index-c30de6b8.cjs.prod.js');
|
|
6
6
|
var _extends = require('@babel/runtime/helpers/extends');
|
|
7
7
|
var React = require('react');
|
|
8
8
|
var THREE = require('three');
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { c as createEvents, e as extend, u as useMutableCallback, a as createRoot, E as ErrorBoundary, B as Block, d as unmountComponentAtNode } from '../../dist/index-
|
|
2
|
-
export { t as ReactThreeFiber, s as _roots, q as act, n as addAfterEffect, m as addEffect, o as addTail, l as advance, i as applyProps, f as context, g as createPortal, a as createRoot, j as dispose, e as extend, p as getRootState, k as invalidate, h as reconciler, r as render, d as unmountComponentAtNode, x as useFrame, y as useGraph, z as useLoader, v as useStore, w as useThree } from '../../dist/index-
|
|
1
|
+
import { c as createEvents, e as extend, u as useMutableCallback, a as createRoot, E as ErrorBoundary, B as Block, d as unmountComponentAtNode } from '../../dist/index-4f1a8e2f.esm.js';
|
|
2
|
+
export { t as ReactThreeFiber, s as _roots, q as act, n as addAfterEffect, m as addEffect, o as addTail, l as advance, i as applyProps, f as context, g as createPortal, a as createRoot, j as dispose, e as extend, p as getRootState, k as invalidate, h as reconciler, r as render, d as unmountComponentAtNode, x as useFrame, y as useGraph, z as useLoader, v as useStore, w as useThree } from '../../dist/index-4f1a8e2f.esm.js';
|
|
3
3
|
import _extends from '@babel/runtime/helpers/esm/extends';
|
|
4
4
|
import * as React from 'react';
|
|
5
5
|
import * as THREE from 'three';
|