We have collection of more than 1 Million open source products ranging from Enterprise product to
small libraries in all platforms. We aggregate information from all open source repositories.
Search and find the best for your needs. Check out projects section.
A generic Maya to JSON exporter for triangulated meshes, specifically built for ThreeJS BufferGeometry. Designed for ThreeJS r74 and Maya 2016.This is modified from Sean Griffin's exporter, but designed for static scenes with a lot of instancing (like a forest or city scape).
Bitmap font rendering for ThreeJS, batching glyphs into a single BufferGeometry. Supports word-wrapping, letter spacing, kerning, signed distance fields with standard derivatives, multi-channel signed distance fields, multi-texture fonts, and more. About 12kb after minification.Works on Three r69-73, r79, and possibly more.
Convenience functions for sending vertex data to an attribtue of a THREE.BufferGeometry.This will flatten vertex data if necessary, attempt to re-use arrays where possible to minimize GC, and handle some compatibility issues across different versions of ThreeJS. It can handle dynamically growing and shrinking buffers.
Quick harness to create a runnable demo for ThreeJS scenes. For a demo, see demo/test.js or three-gl-state-example.This module exports a function which accepts the THREE instance, and returns a new function which creates the orbit viewer with the specified options.
Streams a PNG encoded pixels from a ThreeJS WebGLRenderTarget. This is done in chunks of gl.readPixels, using gl-pixel-stream, and works with render targets upwards of 10000x10000 pixels in Chrome (or more, depending on your GPU).The following transparent PNG image was generated with ThreeJS on the client side using the example/ code. See Running from Source for details.
Creates a THREE.Geometry from a 3D simplicial complex. See demo for an example.This is useful for inter-op with modules like icosphere, bunny, stanford-dragon, mesh-combine, extrude-polyline, teapot, triangulate-contours, etc.
GLSL post-processing module for Voxel.js! This is a wrapper for @alteredq's THREE.EffectComposer, which allows you to stack fragment shaders for nice effects such as Bloom, Blur, Mosaic Filters and so on.The demo is somewhat less graceful, but you get the idea.
There is another package similar to this one: three-orbit-controls. I decided to create another package with a different approach, see this issue for the rationale.I am using this package for my 3d tic tac toe online game.
This is an experimental interface for live shader reloading in ThreeJS, regl, and other WebGL frameworks. This means you can edit your GLSL shader files without re-starting your entire application state. Works with regular strings, template strings, and/or transforms like brfs and glslify. Handles errors with a client-side popup that disappears on subsequent reloads.See this tweet for a longer video.
A simple example of modular shaders in ThreeJS with glslify. Uses glsl-halftone, glsl-hash-blur, and glsl-checker.Now open http://localhost:9966/ and start making changes to index.js, frag.glsl or vert.glsl to see changes reloaded in the browser.
A utility for 2D line drawing in ThreeJS, by expanding a polyline in a vertex shader for variable thickness, anti-aliasing, gradients, line dashes, and other GPU effects.Works in ThreeJS r69-r75, and possibly newer versions.
ThreeJS OrbitControls as an npm module. See test for an example.This module exports a function which accepts an instance of THREE, and returns an OrbitControls class. This allows you to use the module with CommonJS, globals, etc.
Optimized FXAA shader for ThreeJS, passing some texture coordinates from the vertex shader to avoid 5 dependent texture reads. This is well suited for PowerVR GPUs (iOS).Tested on Three r69-78, works with the three module.
A soft vignette background for ThreeJS demos with a simplex noise grain. This returns a THREE.Mesh with a plane geometry and a shader which does not project into camera space, and so it fits across the entire device viewport.Currently, browserify is required to use this module as it has a hard dependency on glslify, a browserify transform.