Just draws meshes
Last updated 7 years ago by mikolalysenko .
MIT · Repository · Bugs · Original npm · Tarball · package.json
$ cnpm install mesh-viewer 
SYNC missed versions from official npm registry.


A module that draws meshes with a simple orbit based camera. This is useful for quickly making demos and live coding.


var shell = require("mesh-viewer")()
var mesh

shell.on("viewer-init", function() {
  mesh = shell.createMesh(require("bunny"))

shell.on("gl-render", function() {

Try it out on requirebin!


npm install mesh-viewer


The main viewer class is a modification of gl-now and inherits all the same properties and methods as that.

var createShell = require("mesh-viewer")


var shell = createShell([options])

Creates a viewer. In addition to accepting all the arguments as gl-now, it also takes in the following arguments:

  • fov Default fov for camera
  • zNear Near clip plane
  • zFar Far clip plane
  • meshColor Default color for meshes
  • pointSize Default point size for meshes
  • useCellNormals If set, use flat shading for polygons
  • ambient Default ambient light color * intensity
  • diffuse Default diffuse light color * intensity
  • specular Default specular light color * intensity
  • specularExponent Default specular exponent
  • lightPosition Default light position

Returns A mesh viewer shell


In addition to the events in gl-now and game-shell, mesh-viewer has the following event:


This event is triggered after the viewer is initialized.


An instance of a game-shell-orbit-camera that controls the viewing direction.


The FOV of the camera


The near z clip plane distance


The far z clip plane distance


var mesh = viewer.createMesh(params)

Creates a mesh object that can be drawn. This works the same as gl-simplicial-complex. The params object accepts the following parameters:

  • cells (Required) An indexed list of vertices, edges and/or faces.
  • positions (Required) An array of positions for the mesh, encoded as arrays
  • vertexColors A list of per vertex color attributes encoded as length 3 rgb arrays
  • cellColors A list of per cell color attributes
  • meshColor A constant color for the entire mesh
  • vertexNormals An array of per vertex normals
  • cellNormals An array of per cell normals
  • useFacetNormals A flag which if set to true forces cellNormals to be computed
  • pointSizes An array of point sizes
  • pointSize A single point size float

Returns A drawable mesh object

Mesh Object Methods


Draws the mesh object. Params has the same properties as in gl-simplicial-complex


Updates the mesh. Same conventions as before.


Destroys mesh releasing all resources.


(c) 2013 Mikola Lysenko. MIT License

Current Tags

  • 1.0.0                                ...           latest (7 years ago)

3 Versions

  • 1.0.0                                ...           7 years ago
  • 0.0.1                                ...           7 years ago
  • 0.0.0                                ...           7 years ago
Maintainers (1)
Today 0
This Week 0
This Month 1
Last Day 0
Last Week 1
Last Month 2
Dependencies (4)
Dev Dependencies (1)
Dependents (1)

Copyright 2014 - 2017 © |