JSPM

  • ESM via JSPM
  • ES Module Entrypoint
  • Export Map
  • Keywords
  • License
  • Repository URL
  • TypeScript Types
  • README
  • Created
  • Published
  • Downloads 33
  • Score
    100M100P100Q63544F
  • License MIT

node.js simple 3d mesh viewer with fps controls via SDL + regl

Package Exports

  • triangles-mesh-viewer-sdl-regl
  • triangles-mesh-viewer-sdl-regl/index.js

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 (triangles-mesh-viewer-sdl-regl) to support the "exports" field. If that is not possible, create a JSPM override to customize the exports field for this package.

Readme

triangles-mesh-viewer-sdl-regl

very simple 3d mesh viewer with fps controls [ASWD+mouse] via SDL + regl, for node.js

meant to quickly view meshes in the same format as bunny and just as a simple boilerplate to be hacked and modified.

Installation

npm i triangles-mesh-viewer-sdl-regl

Usage

var tmv = require('triangles-mesh-viewer-sdl-regl');

//modelViewer(theModel? = bunny); //default model is require('bunny')

var bunny = require('bunny');

//example with smooth vertex colors
//bunny.vertexColors = bunny.positions.map((p,i)=>[Math.random(),Math.random(),Math.random()]);

//example with discontinuous vertex colors -- force each tri to have its own verts
//bunny = require('triangles-index').demergeMeshTriangles_meshView(require('bunny'));
//bunny.vertexColors = bunny.positions.map((p,i)=>[Math.random(),Math.random(),Math.random()]);

//random face colors
//bunny.faceColors = bunny.cells.map((p,i)=>[Math.random(),Math.random(),Math.random()]);

var meshViewer = tmv.meshViewer.modelViewer(bunny);

//change the model:
//var newModel = require('bitey'); //note that bitey has much bigger scale than bunny
//meshViewer.updateModel(newModel);

//can also get raw buffers using getBuffers(), can then update the mesh with subdata command on the buffer 
//see test.js or https://github.com/regl-project/regl/blob/master/API.md#buffer-update
//tmv.meshViewer.getBuffers(); //{positionBuffer, normalBuffer, cellsBuffer}

//just for hacking/fun/experimentation -- can also launch regl raytracing test scene
//var meshViewer = tmv.raytraceBvhViewer.modelViewer(); //this is just a static test scene, model cannot be updated

bunny

raytracing

See Also

stonks