Reusable classes and objects for working with the browser and different canvas contexts
Controllers and singletons
A singleton function which manages a global Animation loop.
Standardized setup class for working with the canvas 2d context, abstracting away some of the more annoying bits. Allows you to focus on the primary draw() call
Standardized setup class for working with THREE scenes. Provides abstraction for common setup steps, and provides hooks for different lifecycle stages of the class.
A super duper simple, reusable, vanilla WebGL class for rendering a fragment shader. Useful for when all you want is to render your GLSL on-screen.
Building blocks for math, geometry, data and other common requirements
Basic Vector object, exports as a factory function which determines the vector dimension based on attributes supplied
Basic 2D Rectangle geometry object
Basic 3D Box geometry object
Basic 2D Circle geometry object
Basic 3D Sphere geometry object
Quadtree object for working with 2D spatial point querying
Octree object for working with 3D spatial point querying
Custom Vanilla and React hooks for common uses
wraps mouse/touch position even registration
wraps requestAnimationFrame registration
wraps window resize event registration
Minimal tween class for interpolating a normalised progress value over a duration.
A stand-alone controller class that handles user input.
A controller class which manages the intersection of bound items against the viewport.
simplfied version of ViewportManager, A self contained controller class which keeps track of window scroll parameters, including "wheel" events.
A controller class which manages a global Animation loop.
A self contained controller class which keeps track of window parameters.