Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/Erkaman/wireframe-world
An infinite wireframe world in WebGL
https://github.com/Erkaman/wireframe-world
demo glsl infinite javascript procedural procedural-generation retro webgl wireframe
Last synced: 6 days ago
JSON representation
An infinite wireframe world in WebGL
- Host: GitHub
- URL: https://github.com/Erkaman/wireframe-world
- Owner: Erkaman
- License: mit
- Created: 2016-07-28T19:08:19.000Z (over 8 years ago)
- Default Branch: gh-pages
- Last Pushed: 2016-07-30T16:06:48.000Z (over 8 years ago)
- Last Synced: 2024-06-20T08:29:37.772Z (5 months ago)
- Topics: demo, glsl, infinite, javascript, procedural, procedural-generation, retro, webgl, wireframe
- Language: JavaScript
- Homepage: https://erkaman.github.io/wireframe-world/www/demo.html
- Size: 10.3 MB
- Stars: 359
- Watchers: 12
- Forks: 36
- Open Issues: 2
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
- awesome-regl - Infinite Terrain Demo
README
# wireframe-world
This demo draws an infinite, vaporwave-like world using the WebGL
framework [regl](https://github.com/mikolalysenko/regl). A link to the
demo is [here](http://erkaman.github.io/wireframe-world/www/demo.html). It should look
like the below:![Animated](images/anim.gif)
And click below for a longer video of the demo:
[![Result](http://img.youtube.com/vi/tE9geTQxgZc/0.jpg)](https://www.youtube.com/watch?v=tE9geTQxgZc)
## Implementation Details
As for the implementation, it is not very difficult stuff; I divide up
the world into chunks(just like in Minecraft), and as the camera
traverses the world, the chunks that become out of range are thrown
away and are no longer rendered. And in the far away horizon I keep adding
new chunks, to give the illusion that the world is infinite.## Build
To run the demo locally on your computer, first change your directory to the directory of the project, then run
```bash
npm install
```To then run the demo, do
```bash
npm start
```## TODO
Port the program into screensavers for OS X, Windows and Linux.