Skip to content

node-3d/3d-bullet-raub

Repository files navigation

Node.js 3D Bullet

This is a part of Node3D project.

NPM ESLint Test

npm i -s 3d-bullet-raub

Bullet physics plugin for Node.js 3D Core

Example

This plugin provides the Shape class to simplify the common use cases with Three.js and Bullet Physics addon.

  • Can display debug shapes.
  • Updates mesh pose from physics engine.
  • Removes meshes when the body is destroyed.
  • Shape extends Body and works with scene.hit()/scene.trace().
import * as three from 'three';
import { init, addThreeHelpers } from '3d-core-raub';
import { init as initBullet } from '3d-bullet-raub';

const { gl, loop, Screen } = init();
addThreeHelpers(three, gl);
const { scene, Shape } = initBullet({ three });

const screen = new Screen({ three });

const plane = new Shape({
	sceneThree: screen.scene,
	color: 0xface8d,
	type: 'plane',
	debug: 'solid',
});

const box = new Shape({
	sceneThree: screen.scene,
	pos: [0, 10, 0], // use { xyz } or [xyz]
	mass: 3,
	debug: 'solid',
	color: 0xbeefed,
	size: { x: 3, y: 2, z: 1 }, // use { xyz } or [xyz]
});

loop(() => {
	scene.update();
	screen.draw();
});

About

Bullet physics plugin for Node.js 3D Core

Topics

Resources

License

Code of conduct

Security policy

Stars

Watchers

Forks

Contributors 2

  •  
  •