Ray casting queries for voxel.js
Via npm:
npm install voxel-raycast
Here is how you could use the library to make a ray query:
var traceRay = require("voxel-raycast").bind({}, voxels);
var hit_normal = new Array(3);
var hit_position = new Array(3);
var hit_block = traceRay([0,0,0], [1,0,0], 10.0, hit_positions, hit_normal);
if(hit_block > 0) {
console.log("Hit:", hit_block, hit_position, hit_normal);
} else {
console.log("Miss");
}
require("voxel-raycast")(voxels, origin, direction, max_d[, hit_position, hit_normal])Casts a ray against a voxel.js game instance.
voxels is the main voxel.js instanceorigin is the origin of the raydirection is the direction of the raymax_d is a limit on the distance the ray can travelhit_position is the point of impact of the ray and the voxel worldhit_normal is the normal of the ray impactReturns the block type of the voxel that the ray cast hit, or if no voxel was encountered returns -1.
(c) 2013 Mikola Lysenko. BSD License