48 lines
2.3 KiB
Markdown
48 lines
2.3 KiB
Markdown
# XVoxel-ASync
|
|
|
|
A voxel game based on OpenVoxelProject, it is able to run fully in a web browser.
|
|
|
|
## Philosophy
|
|
|
|
My goal for this game is for it to be light, extendable, pluggable and easy to mod without too much nonsense.
|
|
- Light, unlike heavy as other games
|
|
- Extendable, even its core
|
|
- Pluggable, so you can add your own additions
|
|
- Easy to mod, with an upcoming modding interface made to be easy and efficient
|
|
|
|
## Roadmap
|
|
|
|
- [x] Basic menu
|
|
- [x] 3D rendering
|
|
- [ ] Resources
|
|
- [ ] Textures (partially done)
|
|
- [ ] Sounds
|
|
- [ ] Models (as JSON)
|
|
- [ ] Physics (have to decide which engine to use)
|
|
- [ ] Settings
|
|
- [ ] Video
|
|
- [x] Field of View
|
|
- [ ] Lighting
|
|
- [ ] Audio
|
|
- [ ] Sources
|
|
- [ ] Channels (Mono, Stereo or Surround if supported)
|
|
- [ ] Input (keyboard/mouse, touchscreen and gamepad)
|
|
- [ ] Sensitivity
|
|
- [ ] Keys
|
|
- [ ] Networking
|
|
- [x] Loading worlds
|
|
- [ ] Saving worlds (implemented but unavailable in the menu)
|
|
- [ ] Multiplayer
|
|
|
|
## Acknowledgements
|
|
|
|
The libraries cited below are included in the "lib" folder for convenience, if you want your library's files removed from my project's, please kindly tell me via [e-mail](mailto:x3f200c@protonmail.com) or using any other contact information that can be found on [my main website](https://x3f200c.net/).
|
|
- [Three.JS](https://github.com/mrdoob/three.js) under the MIT license, used for rendering worlds (and its GLTF loader for future work)
|
|
- [Cannon ES](https://github.com/pmndrs/cannon-es) also under the MIT license, not used yet, will consider switching to it in order to use less WebAssembly and more vanilla JavaScript
|
|
- [Ammo.JS](https://github.com/kripken/ammo.js) under the ZLib license, used to simulate physics in worlds
|
|
- [FFlate](https://github.com/101arrowz/fflate) under the MIT license too, used to compress and decompress ZIP files (saving and loading worlds)
|
|
- [Matrix JS SDK](https://github.com/matrix-org/matrix-js-sdk) under the Apache 2.0 license, used for networking (multiplayer, uploading, downloading worlds from the Matrix network)
|
|
- [PeerJS](https://github.com/peers/peerjs) under the MIT license, will be used for alternative networking
|
|
- [Olm](https://gitlab.matrix.org/matrix-org/olm) under the Apache 2.0 license too, used for encryption support in networking
|
|
- Improved Perlin noise (I forgot where I found it and what its license was)
|