@react-three/rapier 0.6.0 → 0.6.1

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.
@@ -1,4 +1,4 @@
1
- /// <reference types="react" />
1
+ import React from "react";
2
2
  import { InstancedRigidBodyApi } from "./api";
3
3
  import { RigidBodyProps } from "./RigidBody";
4
4
  import { Vector3Array } from "./types";
@@ -6,5 +6,5 @@ interface InstancedRigidBodiesProps extends Omit<RigidBodyProps, "position" | "r
6
6
  positions?: Vector3Array[];
7
7
  rotations?: Vector3Array[];
8
8
  }
9
- export declare const InstancedRigidBodies: import("react").ForwardRefExoticComponent<InstancedRigidBodiesProps & import("react").RefAttributes<InstancedRigidBodyApi>>;
9
+ export declare const InstancedRigidBodies: React.ForwardRefExoticComponent<InstancedRigidBodiesProps & React.RefAttributes<InstancedRigidBodyApi>>;
10
10
  export {};
@@ -3,7 +3,7 @@
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
5
  var rapier3dCompat = require('@dimforge/rapier3d-compat');
6
- var React$1 = require('react');
6
+ var React = require('react');
7
7
  var useAsset = require('use-asset');
8
8
  var fiber = require('@react-three/fiber');
9
9
  var three = require('three');
@@ -28,7 +28,7 @@ function _interopNamespace(e) {
28
28
  return Object.freeze(n);
29
29
  }
30
30
 
31
- var React__default = /*#__PURE__*/_interopDefault(React$1);
31
+ var React__default = /*#__PURE__*/_interopDefault(React);
32
32
 
33
33
  const _quaternion = new three.Quaternion();
34
34
  const _euler = new three.Euler();
@@ -441,7 +441,7 @@ const createJointApi = ref => {
441
441
  };
442
442
  };
443
443
 
444
- const RapierContext = /*#__PURE__*/React$1.createContext(undefined);
444
+ const RapierContext = /*#__PURE__*/React.createContext(undefined);
445
445
 
446
446
  const importRapier = async () => {
447
447
  let r = await Promise.resolve().then(function () { return /*#__PURE__*/_interopNamespace(require('@dimforge/rapier3d-compat')); });
@@ -456,8 +456,8 @@ const Physics = ({
456
456
  timeStep: _timeStep = "vary"
457
457
  }) => {
458
458
  const rapier = useAsset.useAsset(importRapier);
459
- const worldRef = React$1.useRef();
460
- const getWorldRef = React$1.useRef(() => {
459
+ const worldRef = React.useRef();
460
+ const getWorldRef = React.useRef(() => {
461
461
  if (!worldRef.current) {
462
462
  const world = new rapier.World(vectorArrayToObject(_gravity));
463
463
  worldRef.current = world;
@@ -465,12 +465,12 @@ const Physics = ({
465
465
 
466
466
  return worldRef.current;
467
467
  });
468
- const [colliderMeshes] = React$1.useState(() => new Map());
469
- const [rigidBodyStates] = React$1.useState(() => new Map());
470
- const [rigidBodyEvents] = React$1.useState(() => new Map());
471
- const [eventQueue] = React$1.useState(() => new rapier3dCompat.EventQueue(false)); // Init world
468
+ const [colliderMeshes] = React.useState(() => new Map());
469
+ const [rigidBodyStates] = React.useState(() => new Map());
470
+ const [rigidBodyEvents] = React.useState(() => new Map());
471
+ const [eventQueue] = React.useState(() => new rapier3dCompat.EventQueue(false)); // Init world
472
472
 
473
- React$1.useEffect(() => {
473
+ React.useEffect(() => {
474
474
  const world = getWorldRef.current();
475
475
  return () => {
476
476
  if (world) {
@@ -480,14 +480,14 @@ const Physics = ({
480
480
  };
481
481
  }, []); // Update gravity
482
482
 
483
- React$1.useEffect(() => {
483
+ React.useEffect(() => {
484
484
  const world = worldRef.current;
485
485
 
486
486
  if (world) {
487
487
  world.gravity = vectorArrayToObject(_gravity);
488
488
  }
489
489
  }, [_gravity]);
490
- const time = React$1.useRef(performance.now());
490
+ const time = React.useRef(performance.now());
491
491
  fiber.useFrame(context => {
492
492
  const world = worldRef.current;
493
493
  if (!world) return; // Set timestep to current delta, to allow for variable frame rates
@@ -580,8 +580,8 @@ const Physics = ({
580
580
  });
581
581
  time.current = now;
582
582
  });
583
- const api = React$1.useMemo(() => createWorldApi(getWorldRef), []);
584
- const context = React$1.useMemo(() => ({
583
+ const api = React.useMemo(() => createWorldApi(getWorldRef), []);
584
+ const context = React.useMemo(() => ({
585
585
  rapier,
586
586
  world: api,
587
587
  physicsOptions: {
@@ -673,7 +673,7 @@ function _objectSpread2(target) {
673
673
  }
674
674
 
675
675
  const useRapier = () => {
676
- return React$1.useContext(RapierContext);
676
+ return React.useContext(RapierContext);
677
677
  };
678
678
  const useRigidBody = (options = {}) => {
679
679
  const {
@@ -682,10 +682,10 @@ const useRigidBody = (options = {}) => {
682
682
  physicsOptions,
683
683
  rigidBodyEvents
684
684
  } = useRapier();
685
- const ref = React$1.useRef(); // Create rigidbody
685
+ const ref = React.useRef(); // Create rigidbody
686
686
 
687
- const rigidBodyRef = React$1.useRef();
688
- const getRigidBodyRef = React$1.useRef(() => {
687
+ const rigidBodyRef = React.useRef();
688
+ const getRigidBodyRef = React.useRef(() => {
689
689
  if (!rigidBodyRef.current) {
690
690
  const desc = rigidBodyDescFromOptions(options);
691
691
  const rigidBody = world.createRigidBody(desc);
@@ -695,7 +695,7 @@ const useRigidBody = (options = {}) => {
695
695
  return rigidBodyRef.current;
696
696
  }); // Setup
697
697
 
698
- React$1.useEffect(() => {
698
+ React.useEffect(() => {
699
699
  var _ref$current$parent, _ref, _options$colliders;
700
700
 
701
701
  const rigidBody = getRigidBodyRef.current();
@@ -753,7 +753,7 @@ const useRigidBody = (options = {}) => {
753
753
  };
754
754
  }, []); // Events
755
755
 
756
- React$1.useEffect(() => {
756
+ React.useEffect(() => {
757
757
  const rigidBody = getRigidBodyRef.current();
758
758
  rigidBodyEvents.set(rigidBody.handle, {
759
759
  onCollisionEnter: options === null || options === void 0 ? void 0 : options.onCollisionEnter,
@@ -765,7 +765,7 @@ const useRigidBody = (options = {}) => {
765
765
  rigidBodyEvents.delete(rigidBody.handle);
766
766
  };
767
767
  }, [options.onCollisionEnter, options.onCollisionExit]);
768
- const api = React$1.useMemo(() => createRigidBodyApi(getRigidBodyRef), []);
768
+ const api = React.useMemo(() => createRigidBodyApi(getRigidBodyRef), []);
769
769
  return [ref, api];
770
770
  }; // Joints
771
771
 
@@ -773,8 +773,8 @@ const useImpulseJoint = (body1, body2, params) => {
773
773
  const {
774
774
  world
775
775
  } = useRapier();
776
- const jointRef = React$1.useRef();
777
- const getJointRef = React$1.useRef(() => {
776
+ const jointRef = React.useRef();
777
+ const getJointRef = React.useRef(() => {
778
778
  if (!jointRef.current) {
779
779
  let rb1;
780
780
  let rb2;
@@ -789,7 +789,7 @@ const useImpulseJoint = (body1, body2, params) => {
789
789
 
790
790
  return jointRef.current;
791
791
  });
792
- React$1.useEffect(() => {
792
+ React.useEffect(() => {
793
793
  const joint = getJointRef.current();
794
794
  return () => {
795
795
  if (joint) {
@@ -798,7 +798,7 @@ const useImpulseJoint = (body1, body2, params) => {
798
798
  }
799
799
  };
800
800
  }, []);
801
- const api = React$1.useMemo(() => createJointApi(getJointRef), []);
801
+ const api = React.useMemo(() => createJointApi(getJointRef), []);
802
802
  return api;
803
803
  };
804
804
  /**
@@ -857,17 +857,17 @@ const usePrismaticJoint = (body1, body2, [body1Anchor, body2Anchor, axis]) => {
857
857
  };
858
858
 
859
859
  const _excluded$1 = ["children"];
860
- const RigidBodyContext = /*#__PURE__*/React$1.createContext(undefined);
861
- const useRigidBodyContext = () => React$1.useContext(RigidBodyContext); // RigidBody
860
+ const RigidBodyContext = /*#__PURE__*/React.createContext(undefined);
861
+ const useRigidBodyContext = () => React.useContext(RigidBodyContext); // RigidBody
862
862
 
863
- const RigidBody = /*#__PURE__*/React$1.forwardRef((_ref, ref) => {
863
+ const RigidBody = /*#__PURE__*/React.forwardRef((_ref, ref) => {
864
864
  let {
865
865
  children
866
866
  } = _ref,
867
867
  props = _objectWithoutProperties(_ref, _excluded$1);
868
868
 
869
869
  const [object, api] = useRigidBody(props);
870
- React$1.useImperativeHandle(ref, () => api);
870
+ React.useImperativeHandle(ref, () => api);
871
871
  return /*#__PURE__*/React__default["default"].createElement(RigidBodyContext.Provider, {
872
872
  value: {
873
873
  ref: object,
@@ -888,12 +888,12 @@ const MeshCollider = ({
888
888
  physicsOptions,
889
889
  world
890
890
  } = useRapier();
891
- const object = React$1.useRef(null);
891
+ const object = React.useRef(null);
892
892
  const {
893
893
  api,
894
894
  options
895
895
  } = useRigidBodyContext();
896
- React$1.useEffect(() => {
896
+ React.useEffect(() => {
897
897
  let autoColliders = [];
898
898
 
899
899
  if (object.current) {
@@ -911,7 +911,7 @@ const MeshCollider = ({
911
911
  });
912
912
  };
913
913
  }, []);
914
- return /*#__PURE__*/React.createElement("object3D", {
914
+ return /*#__PURE__*/React__default["default"].createElement("object3D", {
915
915
  ref: object,
916
916
  userData: {
917
917
  r3RapierType: "MeshCollider"
@@ -974,13 +974,13 @@ const geometryFromCollider = collider => {
974
974
  return new three.BoxBufferGeometry(1, 1, 1);
975
975
  };
976
976
 
977
- const DebugShape = /*#__PURE__*/React$1.memo(({
977
+ const DebugShape = /*#__PURE__*/React.memo(({
978
978
  colliderHandle
979
979
  }) => {
980
980
  const {
981
981
  world
982
982
  } = useRapier();
983
- const ref = React$1.useRef(null);
983
+ const ref = React.useRef(null);
984
984
  fiber.useFrame(() => {
985
985
  const collider = world.getCollider(colliderHandle);
986
986
 
@@ -1000,7 +1000,7 @@ const DebugShape = /*#__PURE__*/React$1.memo(({
1000
1000
  ref.current.rotation.setFromQuaternion(new three.Quaternion(rx, ry, rz, rw));
1001
1001
  }
1002
1002
  });
1003
- const geometry = React$1.useMemo(() => {
1003
+ const geometry = React.useMemo(() => {
1004
1004
  const collider = world.getCollider(colliderHandle);
1005
1005
  return geometryFromCollider(collider);
1006
1006
  }, [colliderHandle]);
@@ -1018,8 +1018,8 @@ const Debug = () => {
1018
1018
  const {
1019
1019
  world
1020
1020
  } = useRapier();
1021
- const [colliders, setColliders] = React$1.useState([]);
1022
- React$1.useRef({});
1021
+ const [colliders, setColliders] = React.useState([]);
1022
+ React.useRef({});
1023
1023
 
1024
1024
  fiber.useFrame(() => {
1025
1025
  const newColliders = [];
@@ -1034,22 +1034,22 @@ const Debug = () => {
1034
1034
  })));
1035
1035
  };
1036
1036
 
1037
- const InstancedRigidBodies = /*#__PURE__*/React$1.forwardRef((props, ref) => {
1037
+ const InstancedRigidBodies = /*#__PURE__*/React.forwardRef((props, ref) => {
1038
1038
  const {
1039
1039
  world,
1040
1040
  rigidBodyStates,
1041
1041
  physicsOptions
1042
1042
  } = useRapier();
1043
- const object = React$1.useRef(null);
1044
- const instancesRef = React$1.useRef();
1045
- const instancesRefGetter = React$1.useRef(() => {
1043
+ const object = React.useRef(null);
1044
+ const instancesRef = React.useRef();
1045
+ const instancesRefGetter = React.useRef(() => {
1046
1046
  if (!instancesRef.current) {
1047
1047
  instancesRef.current = [];
1048
1048
  }
1049
1049
 
1050
1050
  return instancesRef.current;
1051
1051
  });
1052
- React$1.useEffect(() => {
1052
+ React.useEffect(() => {
1053
1053
  const colliders = [];
1054
1054
  const rigidBodies = instancesRefGetter.current();
1055
1055
 
@@ -1125,8 +1125,8 @@ const InstancedRigidBodies = /*#__PURE__*/React$1.forwardRef((props, ref) => {
1125
1125
  };
1126
1126
  }
1127
1127
  }, []);
1128
- React$1.useImperativeHandle(ref, () => createInstancedRigidBodiesApi(instancesRefGetter));
1129
- return /*#__PURE__*/React.createElement("object3D", {
1128
+ React.useImperativeHandle(ref, () => createInstancedRigidBodiesApi(instancesRefGetter));
1129
+ return /*#__PURE__*/React__default["default"].createElement("object3D", {
1130
1130
  ref: object
1131
1131
  }, props.children);
1132
1132
  });
@@ -1161,8 +1161,8 @@ const AnyCollider = _ref => {
1161
1161
  world
1162
1162
  } = useRapier();
1163
1163
  const rigidBodyContext = useRigidBodyContext();
1164
- const ref = React$1.useRef(null);
1165
- React$1.useEffect(() => {
1164
+ const ref = React.useRef(null);
1165
+ React.useEffect(() => {
1166
1166
  var _rigidBodyContext$api;
1167
1167
 
1168
1168
  const scale = ref.current.getWorldScale(new three.Vector3());
@@ -1177,53 +1177,53 @@ const AnyCollider = _ref => {
1177
1177
  world.removeCollider(collider);
1178
1178
  };
1179
1179
  }, []);
1180
- return /*#__PURE__*/React.createElement("object3D", {
1180
+ return /*#__PURE__*/React__default["default"].createElement("object3D", {
1181
1181
  ref: ref
1182
1182
  }, children);
1183
1183
  };
1184
1184
 
1185
1185
  const CuboidCollider = props => {
1186
- return /*#__PURE__*/React.createElement(AnyCollider, _extends({}, props, {
1186
+ return /*#__PURE__*/React__default["default"].createElement(AnyCollider, _extends({}, props, {
1187
1187
  shape: "cuboid"
1188
1188
  }));
1189
1189
  };
1190
1190
  const RoundCuboidCollider = props => {
1191
- return /*#__PURE__*/React.createElement(AnyCollider, _extends({}, props, {
1191
+ return /*#__PURE__*/React__default["default"].createElement(AnyCollider, _extends({}, props, {
1192
1192
  shape: "roundCuboid"
1193
1193
  }));
1194
1194
  };
1195
1195
  const BallCollider = props => {
1196
- return /*#__PURE__*/React.createElement(AnyCollider, _extends({}, props, {
1196
+ return /*#__PURE__*/React__default["default"].createElement(AnyCollider, _extends({}, props, {
1197
1197
  shape: "ball"
1198
1198
  }));
1199
1199
  };
1200
1200
  const CapsuleCollider = props => {
1201
- return /*#__PURE__*/React.createElement(AnyCollider, _extends({}, props, {
1201
+ return /*#__PURE__*/React__default["default"].createElement(AnyCollider, _extends({}, props, {
1202
1202
  shape: "capsule"
1203
1203
  }));
1204
1204
  };
1205
1205
  const HeightfieldCollider = props => {
1206
- return /*#__PURE__*/React.createElement(AnyCollider, _extends({}, props, {
1206
+ return /*#__PURE__*/React__default["default"].createElement(AnyCollider, _extends({}, props, {
1207
1207
  shape: "heightfield"
1208
1208
  }));
1209
1209
  };
1210
1210
  const TrimeshCollider = props => {
1211
- return /*#__PURE__*/React.createElement(AnyCollider, _extends({}, props, {
1211
+ return /*#__PURE__*/React__default["default"].createElement(AnyCollider, _extends({}, props, {
1212
1212
  shape: "trimesh"
1213
1213
  }));
1214
1214
  };
1215
1215
  const ConeCollider = props => {
1216
- return /*#__PURE__*/React.createElement(AnyCollider, _extends({}, props, {
1216
+ return /*#__PURE__*/React__default["default"].createElement(AnyCollider, _extends({}, props, {
1217
1217
  shape: "cone"
1218
1218
  }));
1219
1219
  };
1220
1220
  const CylinderCollider = props => {
1221
- return /*#__PURE__*/React.createElement(AnyCollider, _extends({}, props, {
1221
+ return /*#__PURE__*/React__default["default"].createElement(AnyCollider, _extends({}, props, {
1222
1222
  shape: "cylinder"
1223
1223
  }));
1224
1224
  };
1225
1225
  const ConvexHullCollider = props => {
1226
- return /*#__PURE__*/React.createElement(AnyCollider, _extends({}, props, {
1226
+ return /*#__PURE__*/React__default["default"].createElement(AnyCollider, _extends({}, props, {
1227
1227
  shape: "convexHull"
1228
1228
  }));
1229
1229
  };
@@ -3,7 +3,7 @@
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
5
  var rapier3dCompat = require('@dimforge/rapier3d-compat');
6
- var React$1 = require('react');
6
+ var React = require('react');
7
7
  var useAsset = require('use-asset');
8
8
  var fiber = require('@react-three/fiber');
9
9
  var three = require('three');
@@ -28,7 +28,7 @@ function _interopNamespace(e) {
28
28
  return Object.freeze(n);
29
29
  }
30
30
 
31
- var React__default = /*#__PURE__*/_interopDefault(React$1);
31
+ var React__default = /*#__PURE__*/_interopDefault(React);
32
32
 
33
33
  const _quaternion = new three.Quaternion();
34
34
  const _euler = new three.Euler();
@@ -441,7 +441,7 @@ const createJointApi = ref => {
441
441
  };
442
442
  };
443
443
 
444
- const RapierContext = /*#__PURE__*/React$1.createContext(undefined);
444
+ const RapierContext = /*#__PURE__*/React.createContext(undefined);
445
445
 
446
446
  const importRapier = async () => {
447
447
  let r = await Promise.resolve().then(function () { return /*#__PURE__*/_interopNamespace(require('@dimforge/rapier3d-compat')); });
@@ -456,8 +456,8 @@ const Physics = ({
456
456
  timeStep: _timeStep = "vary"
457
457
  }) => {
458
458
  const rapier = useAsset.useAsset(importRapier);
459
- const worldRef = React$1.useRef();
460
- const getWorldRef = React$1.useRef(() => {
459
+ const worldRef = React.useRef();
460
+ const getWorldRef = React.useRef(() => {
461
461
  if (!worldRef.current) {
462
462
  const world = new rapier.World(vectorArrayToObject(_gravity));
463
463
  worldRef.current = world;
@@ -465,12 +465,12 @@ const Physics = ({
465
465
 
466
466
  return worldRef.current;
467
467
  });
468
- const [colliderMeshes] = React$1.useState(() => new Map());
469
- const [rigidBodyStates] = React$1.useState(() => new Map());
470
- const [rigidBodyEvents] = React$1.useState(() => new Map());
471
- const [eventQueue] = React$1.useState(() => new rapier3dCompat.EventQueue(false)); // Init world
468
+ const [colliderMeshes] = React.useState(() => new Map());
469
+ const [rigidBodyStates] = React.useState(() => new Map());
470
+ const [rigidBodyEvents] = React.useState(() => new Map());
471
+ const [eventQueue] = React.useState(() => new rapier3dCompat.EventQueue(false)); // Init world
472
472
 
473
- React$1.useEffect(() => {
473
+ React.useEffect(() => {
474
474
  const world = getWorldRef.current();
475
475
  return () => {
476
476
  if (world) {
@@ -480,14 +480,14 @@ const Physics = ({
480
480
  };
481
481
  }, []); // Update gravity
482
482
 
483
- React$1.useEffect(() => {
483
+ React.useEffect(() => {
484
484
  const world = worldRef.current;
485
485
 
486
486
  if (world) {
487
487
  world.gravity = vectorArrayToObject(_gravity);
488
488
  }
489
489
  }, [_gravity]);
490
- const time = React$1.useRef(performance.now());
490
+ const time = React.useRef(performance.now());
491
491
  fiber.useFrame(context => {
492
492
  const world = worldRef.current;
493
493
  if (!world) return; // Set timestep to current delta, to allow for variable frame rates
@@ -580,8 +580,8 @@ const Physics = ({
580
580
  });
581
581
  time.current = now;
582
582
  });
583
- const api = React$1.useMemo(() => createWorldApi(getWorldRef), []);
584
- const context = React$1.useMemo(() => ({
583
+ const api = React.useMemo(() => createWorldApi(getWorldRef), []);
584
+ const context = React.useMemo(() => ({
585
585
  rapier,
586
586
  world: api,
587
587
  physicsOptions: {
@@ -673,7 +673,7 @@ function _objectSpread2(target) {
673
673
  }
674
674
 
675
675
  const useRapier = () => {
676
- return React$1.useContext(RapierContext);
676
+ return React.useContext(RapierContext);
677
677
  };
678
678
  const useRigidBody = (options = {}) => {
679
679
  const {
@@ -682,10 +682,10 @@ const useRigidBody = (options = {}) => {
682
682
  physicsOptions,
683
683
  rigidBodyEvents
684
684
  } = useRapier();
685
- const ref = React$1.useRef(); // Create rigidbody
685
+ const ref = React.useRef(); // Create rigidbody
686
686
 
687
- const rigidBodyRef = React$1.useRef();
688
- const getRigidBodyRef = React$1.useRef(() => {
687
+ const rigidBodyRef = React.useRef();
688
+ const getRigidBodyRef = React.useRef(() => {
689
689
  if (!rigidBodyRef.current) {
690
690
  const desc = rigidBodyDescFromOptions(options);
691
691
  const rigidBody = world.createRigidBody(desc);
@@ -695,7 +695,7 @@ const useRigidBody = (options = {}) => {
695
695
  return rigidBodyRef.current;
696
696
  }); // Setup
697
697
 
698
- React$1.useEffect(() => {
698
+ React.useEffect(() => {
699
699
  var _ref$current$parent, _ref, _options$colliders;
700
700
 
701
701
  const rigidBody = getRigidBodyRef.current();
@@ -753,7 +753,7 @@ const useRigidBody = (options = {}) => {
753
753
  };
754
754
  }, []); // Events
755
755
 
756
- React$1.useEffect(() => {
756
+ React.useEffect(() => {
757
757
  const rigidBody = getRigidBodyRef.current();
758
758
  rigidBodyEvents.set(rigidBody.handle, {
759
759
  onCollisionEnter: options === null || options === void 0 ? void 0 : options.onCollisionEnter,
@@ -765,7 +765,7 @@ const useRigidBody = (options = {}) => {
765
765
  rigidBodyEvents.delete(rigidBody.handle);
766
766
  };
767
767
  }, [options.onCollisionEnter, options.onCollisionExit]);
768
- const api = React$1.useMemo(() => createRigidBodyApi(getRigidBodyRef), []);
768
+ const api = React.useMemo(() => createRigidBodyApi(getRigidBodyRef), []);
769
769
  return [ref, api];
770
770
  }; // Joints
771
771
 
@@ -773,8 +773,8 @@ const useImpulseJoint = (body1, body2, params) => {
773
773
  const {
774
774
  world
775
775
  } = useRapier();
776
- const jointRef = React$1.useRef();
777
- const getJointRef = React$1.useRef(() => {
776
+ const jointRef = React.useRef();
777
+ const getJointRef = React.useRef(() => {
778
778
  if (!jointRef.current) {
779
779
  let rb1;
780
780
  let rb2;
@@ -789,7 +789,7 @@ const useImpulseJoint = (body1, body2, params) => {
789
789
 
790
790
  return jointRef.current;
791
791
  });
792
- React$1.useEffect(() => {
792
+ React.useEffect(() => {
793
793
  const joint = getJointRef.current();
794
794
  return () => {
795
795
  if (joint) {
@@ -798,7 +798,7 @@ const useImpulseJoint = (body1, body2, params) => {
798
798
  }
799
799
  };
800
800
  }, []);
801
- const api = React$1.useMemo(() => createJointApi(getJointRef), []);
801
+ const api = React.useMemo(() => createJointApi(getJointRef), []);
802
802
  return api;
803
803
  };
804
804
  /**
@@ -857,17 +857,17 @@ const usePrismaticJoint = (body1, body2, [body1Anchor, body2Anchor, axis]) => {
857
857
  };
858
858
 
859
859
  const _excluded$1 = ["children"];
860
- const RigidBodyContext = /*#__PURE__*/React$1.createContext(undefined);
861
- const useRigidBodyContext = () => React$1.useContext(RigidBodyContext); // RigidBody
860
+ const RigidBodyContext = /*#__PURE__*/React.createContext(undefined);
861
+ const useRigidBodyContext = () => React.useContext(RigidBodyContext); // RigidBody
862
862
 
863
- const RigidBody = /*#__PURE__*/React$1.forwardRef((_ref, ref) => {
863
+ const RigidBody = /*#__PURE__*/React.forwardRef((_ref, ref) => {
864
864
  let {
865
865
  children
866
866
  } = _ref,
867
867
  props = _objectWithoutProperties(_ref, _excluded$1);
868
868
 
869
869
  const [object, api] = useRigidBody(props);
870
- React$1.useImperativeHandle(ref, () => api);
870
+ React.useImperativeHandle(ref, () => api);
871
871
  return /*#__PURE__*/React__default["default"].createElement(RigidBodyContext.Provider, {
872
872
  value: {
873
873
  ref: object,
@@ -888,12 +888,12 @@ const MeshCollider = ({
888
888
  physicsOptions,
889
889
  world
890
890
  } = useRapier();
891
- const object = React$1.useRef(null);
891
+ const object = React.useRef(null);
892
892
  const {
893
893
  api,
894
894
  options
895
895
  } = useRigidBodyContext();
896
- React$1.useEffect(() => {
896
+ React.useEffect(() => {
897
897
  let autoColliders = [];
898
898
 
899
899
  if (object.current) {
@@ -911,7 +911,7 @@ const MeshCollider = ({
911
911
  });
912
912
  };
913
913
  }, []);
914
- return /*#__PURE__*/React.createElement("object3D", {
914
+ return /*#__PURE__*/React__default["default"].createElement("object3D", {
915
915
  ref: object,
916
916
  userData: {
917
917
  r3RapierType: "MeshCollider"
@@ -974,13 +974,13 @@ const geometryFromCollider = collider => {
974
974
  return new three.BoxBufferGeometry(1, 1, 1);
975
975
  };
976
976
 
977
- const DebugShape = /*#__PURE__*/React$1.memo(({
977
+ const DebugShape = /*#__PURE__*/React.memo(({
978
978
  colliderHandle
979
979
  }) => {
980
980
  const {
981
981
  world
982
982
  } = useRapier();
983
- const ref = React$1.useRef(null);
983
+ const ref = React.useRef(null);
984
984
  fiber.useFrame(() => {
985
985
  const collider = world.getCollider(colliderHandle);
986
986
 
@@ -1000,7 +1000,7 @@ const DebugShape = /*#__PURE__*/React$1.memo(({
1000
1000
  ref.current.rotation.setFromQuaternion(new three.Quaternion(rx, ry, rz, rw));
1001
1001
  }
1002
1002
  });
1003
- const geometry = React$1.useMemo(() => {
1003
+ const geometry = React.useMemo(() => {
1004
1004
  const collider = world.getCollider(colliderHandle);
1005
1005
  return geometryFromCollider(collider);
1006
1006
  }, [colliderHandle]);
@@ -1018,8 +1018,8 @@ const Debug = () => {
1018
1018
  const {
1019
1019
  world
1020
1020
  } = useRapier();
1021
- const [colliders, setColliders] = React$1.useState([]);
1022
- React$1.useRef({});
1021
+ const [colliders, setColliders] = React.useState([]);
1022
+ React.useRef({});
1023
1023
 
1024
1024
  fiber.useFrame(() => {
1025
1025
  const newColliders = [];
@@ -1034,22 +1034,22 @@ const Debug = () => {
1034
1034
  })));
1035
1035
  };
1036
1036
 
1037
- const InstancedRigidBodies = /*#__PURE__*/React$1.forwardRef((props, ref) => {
1037
+ const InstancedRigidBodies = /*#__PURE__*/React.forwardRef((props, ref) => {
1038
1038
  const {
1039
1039
  world,
1040
1040
  rigidBodyStates,
1041
1041
  physicsOptions
1042
1042
  } = useRapier();
1043
- const object = React$1.useRef(null);
1044
- const instancesRef = React$1.useRef();
1045
- const instancesRefGetter = React$1.useRef(() => {
1043
+ const object = React.useRef(null);
1044
+ const instancesRef = React.useRef();
1045
+ const instancesRefGetter = React.useRef(() => {
1046
1046
  if (!instancesRef.current) {
1047
1047
  instancesRef.current = [];
1048
1048
  }
1049
1049
 
1050
1050
  return instancesRef.current;
1051
1051
  });
1052
- React$1.useEffect(() => {
1052
+ React.useEffect(() => {
1053
1053
  const colliders = [];
1054
1054
  const rigidBodies = instancesRefGetter.current();
1055
1055
 
@@ -1125,8 +1125,8 @@ const InstancedRigidBodies = /*#__PURE__*/React$1.forwardRef((props, ref) => {
1125
1125
  };
1126
1126
  }
1127
1127
  }, []);
1128
- React$1.useImperativeHandle(ref, () => createInstancedRigidBodiesApi(instancesRefGetter));
1129
- return /*#__PURE__*/React.createElement("object3D", {
1128
+ React.useImperativeHandle(ref, () => createInstancedRigidBodiesApi(instancesRefGetter));
1129
+ return /*#__PURE__*/React__default["default"].createElement("object3D", {
1130
1130
  ref: object
1131
1131
  }, props.children);
1132
1132
  });
@@ -1161,8 +1161,8 @@ const AnyCollider = _ref => {
1161
1161
  world
1162
1162
  } = useRapier();
1163
1163
  const rigidBodyContext = useRigidBodyContext();
1164
- const ref = React$1.useRef(null);
1165
- React$1.useEffect(() => {
1164
+ const ref = React.useRef(null);
1165
+ React.useEffect(() => {
1166
1166
  var _rigidBodyContext$api;
1167
1167
 
1168
1168
  const scale = ref.current.getWorldScale(new three.Vector3());
@@ -1177,53 +1177,53 @@ const AnyCollider = _ref => {
1177
1177
  world.removeCollider(collider);
1178
1178
  };
1179
1179
  }, []);
1180
- return /*#__PURE__*/React.createElement("object3D", {
1180
+ return /*#__PURE__*/React__default["default"].createElement("object3D", {
1181
1181
  ref: ref
1182
1182
  }, children);
1183
1183
  };
1184
1184
 
1185
1185
  const CuboidCollider = props => {
1186
- return /*#__PURE__*/React.createElement(AnyCollider, _extends({}, props, {
1186
+ return /*#__PURE__*/React__default["default"].createElement(AnyCollider, _extends({}, props, {
1187
1187
  shape: "cuboid"
1188
1188
  }));
1189
1189
  };
1190
1190
  const RoundCuboidCollider = props => {
1191
- return /*#__PURE__*/React.createElement(AnyCollider, _extends({}, props, {
1191
+ return /*#__PURE__*/React__default["default"].createElement(AnyCollider, _extends({}, props, {
1192
1192
  shape: "roundCuboid"
1193
1193
  }));
1194
1194
  };
1195
1195
  const BallCollider = props => {
1196
- return /*#__PURE__*/React.createElement(AnyCollider, _extends({}, props, {
1196
+ return /*#__PURE__*/React__default["default"].createElement(AnyCollider, _extends({}, props, {
1197
1197
  shape: "ball"
1198
1198
  }));
1199
1199
  };
1200
1200
  const CapsuleCollider = props => {
1201
- return /*#__PURE__*/React.createElement(AnyCollider, _extends({}, props, {
1201
+ return /*#__PURE__*/React__default["default"].createElement(AnyCollider, _extends({}, props, {
1202
1202
  shape: "capsule"
1203
1203
  }));
1204
1204
  };
1205
1205
  const HeightfieldCollider = props => {
1206
- return /*#__PURE__*/React.createElement(AnyCollider, _extends({}, props, {
1206
+ return /*#__PURE__*/React__default["default"].createElement(AnyCollider, _extends({}, props, {
1207
1207
  shape: "heightfield"
1208
1208
  }));
1209
1209
  };
1210
1210
  const TrimeshCollider = props => {
1211
- return /*#__PURE__*/React.createElement(AnyCollider, _extends({}, props, {
1211
+ return /*#__PURE__*/React__default["default"].createElement(AnyCollider, _extends({}, props, {
1212
1212
  shape: "trimesh"
1213
1213
  }));
1214
1214
  };
1215
1215
  const ConeCollider = props => {
1216
- return /*#__PURE__*/React.createElement(AnyCollider, _extends({}, props, {
1216
+ return /*#__PURE__*/React__default["default"].createElement(AnyCollider, _extends({}, props, {
1217
1217
  shape: "cone"
1218
1218
  }));
1219
1219
  };
1220
1220
  const CylinderCollider = props => {
1221
- return /*#__PURE__*/React.createElement(AnyCollider, _extends({}, props, {
1221
+ return /*#__PURE__*/React__default["default"].createElement(AnyCollider, _extends({}, props, {
1222
1222
  shape: "cylinder"
1223
1223
  }));
1224
1224
  };
1225
1225
  const ConvexHullCollider = props => {
1226
- return /*#__PURE__*/React.createElement(AnyCollider, _extends({}, props, {
1226
+ return /*#__PURE__*/React__default["default"].createElement(AnyCollider, _extends({}, props, {
1227
1227
  shape: "convexHull"
1228
1228
  }));
1229
1229
  };
@@ -1,6 +1,6 @@
1
1
  import { ColliderDesc, ActiveEvents, RigidBodyDesc, CoefficientCombineRule, EventQueue, ShapeType } from '@dimforge/rapier3d-compat';
2
2
  export { CoefficientCombineRule, Collider as RapierCollider, RigidBody as RapierRigidBody } from '@dimforge/rapier3d-compat';
3
- import React$1, { useRef, useState, useEffect, useMemo, createContext, useContext, forwardRef, useImperativeHandle, memo } from 'react';
3
+ import React, { useRef, useState, useEffect, useMemo, createContext, useContext, forwardRef, useImperativeHandle, memo } from 'react';
4
4
  import { useAsset } from 'use-asset';
5
5
  import { useFrame } from '@react-three/fiber';
6
6
  import { Quaternion, Euler, Vector3, Object3D, Matrix4, InstancedMesh, CylinderBufferGeometry, BufferGeometry, BufferAttribute, SphereBufferGeometry, BoxBufferGeometry, DynamicDrawUsage } from 'three';
@@ -567,7 +567,7 @@ const Physics = ({
567
567
  rigidBodyStates,
568
568
  rigidBodyEvents
569
569
  }), []);
570
- return /*#__PURE__*/React$1.createElement(RapierContext.Provider, {
570
+ return /*#__PURE__*/React.createElement(RapierContext.Provider, {
571
571
  value: context
572
572
  }, children);
573
573
  };
@@ -843,14 +843,14 @@ const RigidBody = /*#__PURE__*/forwardRef((_ref, ref) => {
843
843
 
844
844
  const [object, api] = useRigidBody(props);
845
845
  useImperativeHandle(ref, () => api);
846
- return /*#__PURE__*/React$1.createElement(RigidBodyContext.Provider, {
846
+ return /*#__PURE__*/React.createElement(RigidBodyContext.Provider, {
847
847
  value: {
848
848
  ref: object,
849
849
  api,
850
850
  hasCollisionEvents: !!(props.onCollisionEnter || props.onCollisionExit),
851
851
  options: props
852
852
  }
853
- }, /*#__PURE__*/React$1.createElement("object3D", {
853
+ }, /*#__PURE__*/React.createElement("object3D", {
854
854
  ref: object
855
855
  }, children));
856
856
  });
@@ -979,12 +979,12 @@ const DebugShape = /*#__PURE__*/memo(({
979
979
  const collider = world.getCollider(colliderHandle);
980
980
  return geometryFromCollider(collider);
981
981
  }, [colliderHandle]);
982
- return /*#__PURE__*/React$1.createElement("mesh", {
982
+ return /*#__PURE__*/React.createElement("mesh", {
983
983
  ref: ref
984
- }, /*#__PURE__*/React$1.createElement("primitive", {
984
+ }, /*#__PURE__*/React.createElement("primitive", {
985
985
  object: geometry,
986
986
  attach: "geometry"
987
- }), /*#__PURE__*/React$1.createElement("meshBasicMaterial", {
987
+ }), /*#__PURE__*/React.createElement("meshBasicMaterial", {
988
988
  color: "red",
989
989
  wireframe: true
990
990
  }));
@@ -1003,7 +1003,7 @@ const Debug = () => {
1003
1003
  });
1004
1004
  setColliders(newColliders);
1005
1005
  });
1006
- return /*#__PURE__*/React$1.createElement("group", null, colliders.map(handle => /*#__PURE__*/React$1.createElement(DebugShape, {
1006
+ return /*#__PURE__*/React.createElement("group", null, colliders.map(handle => /*#__PURE__*/React.createElement(DebugShape, {
1007
1007
  key: handle,
1008
1008
  colliderHandle: handle
1009
1009
  })));
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@react-three/rapier",
3
- "version": "0.6.0",
3
+ "version": "0.6.1",
4
4
  "source": "src/index.ts",
5
5
  "main": "dist/react-three-rapier.cjs.js",
6
6
  "module": "dist/react-three-rapier.esm.js",