JSPM

react-three-rapier-unified

1.0.2
  • ESM via JSPM
  • ES Module Entrypoint
  • Export Map
  • Keywords
  • License
  • Repository URL
  • TypeScript Types
  • README
  • Created
  • Published
  • Downloads 3
  • Score
    100M100P100Q48081F
  • License MIT

Unified package combining @react-three/rapier and @react-three/rapier-addons

Package Exports

  • react-three-rapier-unified
  • react-three-rapier-unified/dist/index.cjs.js
  • react-three-rapier-unified/dist/index.esm.js

This package does not declare an exports field, so the exports above have been automatically detected and optimized by JSPM instead. If any package subpath is missing, it is recommended to post an issue to the original package (react-three-rapier-unified) to support the "exports" field. If that is not possible, create a JSPM override to customize the exports field for this package.

Readme

React Three Rapier - Unified Package

Ce package unifié combine @react-three/rapier et @react-three/rapier-addons en un seul package facile à utiliser.

📦 Installation locale

# Dans le dossier unified
npm install
npm run build
npm link

# Dans votre projet
npm link react-three-rapier-unified

Option 2: Utiliser le chemin local dans package.json

Dans votre projet, ajoutez dans package.json:

{
  "dependencies": {
    "react-three-rapier-unified": "file:../chemin/vers/react-three-rapier/unified"
  }
}

Puis installez:

npm install

Option 3: Copier directement dans node_modules

# Depuis votre projet
cp -r /chemin/vers/react-three-rapier/unified node_modules/react-three-rapier-unified

🚀 Utilisation

Ce package exporte tous les composants, hooks et utilitaires des deux packages originaux:

import { 
  // Composants principaux
  Physics, 
  RigidBody, 
  MeshCollider,
  InstancedRigidBodies,
  
  // Colliders
  BallCollider,
  CuboidCollider,
  CapsuleCollider,
  
  // Hooks
  useRapier,
  useBeforePhysicsStep,
  useAfterPhysicsStep,
  
  // Addons
  Attractor,
  AttractorDebugHelper,
  
  // Utils
  interactionGroups,
  createWorldFromObject3D
} from 'react-three-rapier-unified';

function App() {
  return (
    <Canvas>
      <Physics>
        <RigidBody>
          <mesh>
            <boxGeometry />
            <meshStandardMaterial />
          </mesh>
        </RigidBody>
        
        {/* Utiliser les addons directement */}
        <Attractor 
          range={10} 
          strength={1} 
          position={[0, 5, 0]} 
        />
      </Physics>
    </Canvas>
  );
}

📚 Contenu du package

Composants Core

  • Physics - Le conteneur de physique principal
  • RigidBody - Corps rigides
  • InstancedRigidBodies - Corps rigides instanciés
  • MeshCollider - Collider basé sur mesh
  • Tous les colliders: BallCollider, CuboidCollider, CapsuleCollider, etc.

Hooks

  • useRapier - Accès au contexte Rapier
  • useBeforePhysicsStep / useAfterPhysicsStep - Callbacks de simulation
  • useFilterContactPair / useFilterIntersectionPair - Filtres de collision
  • Hooks de joints: useFixedJoint, useSphericalJoint, etc.

Addons

  • Attractor - Composant d'attraction de corps rigides
  • AttractorDebugHelper - Helper de debug pour l'attractor

Utils

  • interactionGroups - Gestion des groupes d'interaction
  • createWorldFromObject3D - Helpers pour Three.js

🏗️ Développement

# Installer les dépendances
npm install

# Build du package
npm run build

# Mode watch pour développement
npm run dev

📝 Structure du projet

unified/
├── src/
│   ├── components/     # Tous les composants
│   ├── hooks/          # Tous les hooks
│   ├── utils/          # Utilitaires
│   ├── addons/         # Addons (Attractor, etc.)
│   ├── types.ts        # Définitions de types
│   └── index.ts        # Point d'entrée principal
├── dist/               # Fichiers buildés
├── package.json
├── tsconfig.json
└── vite.config.ts

🔧 Configuration TypeScript

Le package est entièrement typé avec TypeScript. Les définitions de types sont incluses dans le build.

📄 Licence

MIT - Voir le fichier LICENSE pour plus de détails.

🙏 Crédits

Ce package unifie le travail original de:

Créé par Hugo Wiledal et la communauté Poimandres.