Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/xlhaw/voxel
https://github.com/xlhaw/voxel
Last synced: 8 days ago
JSON representation
- Host: GitHub
- URL: https://github.com/xlhaw/voxel
- Owner: xlhaw
- Created: 2022-05-15T19:28:35.000Z (over 2 years ago)
- Default Branch: main
- Last Pushed: 2022-05-15T19:43:21.000Z (over 2 years ago)
- Last Synced: 2024-08-02T11:24:16.382Z (3 months ago)
- Language: Python
- Size: 270 KB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
- awesome-taichi - Overhead Chicken - A cute chicken made of voxels. (Applications / **Voxel Art**)
- awesome-taichi - Overhead Chicken - A cute chicken made of voxels. (**Voxel Art**)
README
> Figure: result of `python3 example6.py`. Please replace the image above (`demo.jpg`) with yours, so that other people can immediately see your results :-)
We invite you to create your voxel artwork, by putting your [Taichi](https://github.com/taichi-dev/taichi) code in `main.py`!
Rules:
+ You can only import two modules: `taichi` (`pip` installation guide below) and `scene.py` (in the repo).
+ The code in `main.py` cannot exceed 99 lines. Each line cannot exceed 120 characters.The available APIs are:
+ `scene = Scene(voxel_edges, exposure)`
+ `scene.set_voxel(voxel_id, material, color)`
+ `material, color = scene.get_voxel(voxel_id)`
+ `scene.set_floor(height, color)`
+ `scene.set_directional_light(dir, noise, color)`
+ `scene.set_background_color(color)`Remember to call `scene.finish()` at last.
**Taichi Lang documentation:** https://docs.taichi-lang.org/
**Modifying files other than `main.py` is not allowed.**
## Installation
Make sure your `pip` is up-to-date:
```bash
pip3 install pip --upgrade
```Assume you have a Python 3 environment, simply run:
```bash
pip3 install -r requirements.txt
```to install the dependencies of the voxel renderer.
## Quickstart
```sh
python3 example1.py # example2/3/.../7/8.py
```Mouse and keyboard interface:
+ Drag with your left mouse button to rotate the camera.
+ Press `W/A/S/D/Q/E` to move the camera.
+ Press `P` to save a screenshot.## More examples
## Show your artwork
Please put your artwork at the beginning of this README file. Replacing the `demo.jpg` file with your creation will do the job.