/matter-wrap

a coordinate wrapping plugin for matter-js

Primary LanguageJavaScriptMIT LicenseMIT

matter-wrap

A coordinate wrapping plugin for matter.js

Build Status

This plugin allows you to automatically wrap the position of bodies and composites such that they always stay within the given bounds. Upon crossing a boundary the body will appear on the opposite side of the bounds, while maintaining its velocity. An example of this effect can be seen in the classic Asteroids and Pacman games.

Demo

See the demo.

matter-wrap

Install

Get the matter-wrap.js file directly or get it via npm:

npm install matter-wrap

Dependencies

Usage

Matter.use('matter-wrap');
// or
Matter.use(MatterWrap);

See Using Plugins for more information.

An example of a body that wraps between the bounds (0, 0) and (1024, 1024). For wrapping composites set composite.plugin.wrap as below.

var body = Matter.Bodies.circle(0, 0, 10, {
  plugin: {
    wrap: {
      min: {
        x: 0,
        y: 0
      },
      max: {
        x: 1024,
        y: 1024
      }
    }
  }
);

Examples

Check out the examples.

Documentation

See the API docs.