megaplot
megaplot copied to clipboard
Currently, when a Sprite is created and all of the available capacity is in use, it waits in the `Created` lifecycle phase for memory to become available. For this reason,...
Currently, Megaplot only renders independent Sprites (quads). For many visualizations, lines would be useful. See https://wwwtyro.net/2019/11/18/instanced-lines.html
Currently, the source code includes verbose comments describing the various classes, members and methods. These should be exposed through generated documentation and made navigable from the web.
Feature request: allow the user to pass an `HTMLCanvasElement` rather than a container element to the `Scene` constructor. This is useful in environments like Angular where it's more cumbersome to...
The window scope property `devicePixelRatio` reports the density of device pixels to logical pixels in the browser. Different monitors have different `devicePixelRatio` values. When a browser window is dragged from...
In order to batch tasks, Angular uses Zones: https://angular.io/guide/zone In particular, Angular's testing infrastructure aggressively commands the passage of time by monkey patching `requestAnimationFrame` and other timing functions. To ensure...
Megaplot API users may wish to explicitly release all runtime memory and WebGL resources used by a Scene. To support this, the Scene should have a `destroy()` method which systematically...
Currently, the `Sides` sprite attribute allows the API user to render regular polygons. In addition, API users should be able to render irregular polygons. The fragment shader used for drawing...
Currently, to run the `generate-code.ts` script, one has to manually install the `ts-node` package. It is not automatically installed, because it conflicts with Karma. Somehow we should resolve this conflict...
Currently, the GLSL code for Megaplot is in large template strings in files under `src/lib/shaders`. As such, code support tooling such as syntax highlighting rarely works. Instead, it would be...