GitHub is home to over 40 million developers working together to host and review code, manage projects, and build software together.
3D graphics rendering pipeline. Implemented in JavaScript. Run in a terminal.
TypeScript JavaScript
Type | Name | Latest commit message | Commit time |
---|---|---|---|
Failed to load latest commit information. | |||
![]() |
.Vscode | publish | v2 | (Oct) , 2019 |
![]() |
scene | update loader | build | (Oct) , 2019 |
![]() |
src | update | render loop | (Oct) , 2019 |
![]() |
.Gitignore | publish | v2 | (Oct) , 2019 |
![]() |
license | publish | v2 | (Oct) , 2019 |
![]() |
package-lock.json | update | render loop | (Oct) , 2019 |
![]() |
package.json | update | render loop | (Oct) , 2019 |
![]() |
readme.md | update | render loop | (Oct) , 2019 |
![]() |
tasks.js | update loader | build | (Oct) , 2019 |
![]() |
terminal.gif | publish | v2 | (Oct) , 2019 |
#start the demo with npx$ npx zero-demo
Overview
Zero is a small graphics demo that uses JavaScript to replicate the functionality of a GPU and uses the terminal to display its rendered output via nodejs’ stdout. Zero was written for fun as well as to see how far one could reasonably push JavaScript performance. Rendering has been tested on Windows, OSX and Linux terminals.
This project and associative materials are offered as is to anyone who may find them of use.
Zero implements:
- Programmable Vertex and Fragment shaders (in JavaScript)
- Perspective Z-Correct Texture Mapping
- Pixel Depth Buffering
- Adaptive Resolution on Terminal resize (TTY only)
- Matrix and Vector math libraries.
- Support for Windows Command Prompt, Powershell and Linux Terminals
A Scene Graph
License MIT
Building Locally
Clone this project and run the following from the terminal.
$ npm install $ npm run build#run it$ node index
GIPHY App Key not set. Please check settings