Skip to content

mdciotti/tesselate

Repository files navigation

Tesselate Tile Engine

Tesselate is a 2D tilemap engine and editor written in Javascript. It is comprised of several modules:

  • tesselate-world - stores world data in layers and provides an interface to accessing and manipulating the world data
  • tesselate-layer - provides methods to add and remove tiles from a layer
  • tesselate-scene - abstracts the rendering code
  • tesselate-canvas2d - renders the tilemap to an HTML5 canvas
  • tesselate-webgl - renders the tilemap to a WebGL context
  • tesselate-util - contains several common methods used in tesselate

Please note: tesselate is in active and volatile development; it is not intended to be used in any production environments for now.

Building

This project uses Browserify to compile all source scripts into a single browser-ready bundle.

To build tesselate for development, I use beefy. To test in a browser, simply run the following command in a terminal where npm is available and then navigate to 127.0.0.1:9966.

npm run serve

To build tesselate for production, use npm run build.

To-do

  • Use chunked map loading
  • Implement sparse array storage
  • Implement continuous (infinite) worlds
  • Write WebGL renderer
  • Implement level saving/export/import
  • Rebuild local edge/corner cache on world edit
  • Documentation
  • Load tileset tiles from arbitrary places (define template?)
  • Optimizations
  • Merge layers (save topmost) for Tilemap.finalize() ?? -- what about transparent blocks/layers?

Thanks

Helpful Links

Resources

About

a basic two dimensional tiled game map editor

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published