Package Exports
- voxel-async-simulation
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 (voxel-async-simulation) to support the "exports" field. If that is not possible, create a JSPM override to customize the exports field for this package.
Readme
VoxelSimulation
A client/server abstraction for wrapping voxeljs and doing chunk generation on the server.
Server
var Server = require('voxel-async-simulation/server');
var app = new Server();
//you're probably on localhost and will need these headers
app.use(function(req,res,next){
res.header("Access-Control-Allow-Origin", "*"); //this gets served on localhost
res.header('Access-Control-Allow-Methods', 'PUT, PATCH, GET, POST, DELETE, OPTIONS');
res.header("Access-Control-Allow-Headers", "Origin, X-Requested-With, Content-Type, Accept");
res.setHeader('Access-Control-Allow-Credentials', true);
next();
});
app.setGenerator(/*chunk generator factory function*/);
//app.setStorage(Server.Storage.memory()); //if you want to cache in memory
app.setStorage(Server.Storage.files('./data')); //to save to disk
app.listen(8081, function(){
console.log('Server listening on port 8081.');
});Client
Next make a client that will connect to your chunkserver
javascript var client = new VoxelSimulation.Client({ texturePack : 'freeture', //assumes a minecraft-like directory layout container : document.body, weatherCycle : [ 'clear', 'cloudy', 'sprinkle', 'rain', 'stormy', 'rain', 'sprinkle', 'cloudy', 'clear', 'clear', 'clear', 'clear' ], quality : 1, //1, 2 or 3 where 1 is lowest quality save : true }); return client;
Running it
Now let's build the app(with browserify):
browserify example-client.js -o app.jsthen run the example server:
node example-server.jsand access the html root
Biomes
Using voxel-biomes you can support biomes as a series of different generators. See an example of this in the source. To execute this inside this project, you need to manually npm install voxel-biomes;
Testing
Eventually it'll be:
mochaEnjoy,
-Abbey Hawk Sparrow