FlatReality is the codename for my 3D WebGL project.
Demo : http://notnull.xyz/cdn/fr1/
This repo represents a base, buildable, devvable starting point for this project.
I have implemented a ready to clone, ready to build and deploy codebase based on ThreeJS.
Implemented and Working
- Basic WASD+Jump controls/inputs (with a Perspective Camera)
- An asynchronous loader for the textures (which you can see on the floors and cubes)
- Procedurally generated cubes, so that the base scene has something to work with.
- Some light sources (Direction, Point, Hemi)
What is still needed?
What is still needed, is collision detection, websockets and to hook up my current 'infinite world generation' code, but I am not sure if that will be integrated into this repository yet.
Get up and running
- Install webpack globally:
npm install webpack -g
- Install deps:
- Run webpack to build dist files:
- Run webpack in watch mode:
webpack --progress --colors --watchor,
- Run webpack dev server, the best way...
webpack-dev-server --progress --colors(but this will require install of
npm install webpack-dev-server -g)
- Browse to the dist/ build on
http://localhost:8080- bob's your uncle.
- Create a feature branch off dev
git checkout -b 20160910_someFeature(or whatever really)
- Commit often.
- Create a PR to merge back to dev
I am aiming to keep
master fairly pristine and production ready. Chaos may thrive in a controlled way in
dev however, but feature branches are absolutely neccesary.
Last but not least
For the sake of order and all things spicy:
- Comment well, and/or:
- Document on WIKI
- Make/edit/update Issues/Tickets