McThings is a python library for building things in Minecraft
Project description
McThings
A Python programming framework for building a 3D World of Scenes in Minecraft (Procedural CSG). Scenes are compositions of Things (Python objects), created and transformed in memory and rendered using the Raspberry PI Minecraft renderer implemented using the API (which also works in Minetest). This renderer is based on mcpi library. More renderers are planned. It follows the pipeline: create and transform in memory (model in memory) and then render.
This is the reference notebook with a complete sample. And there is a intro video tutorial and a more complete one.
A Thing is a built based on blocks (voxels based on cubes): Pyramid, River, House, Fence and may others. All the Things share the Thing API. A Thing can be decorated using existing decorators like LightDecorator or you can create your own one. A decorated house. Scenes can also be decorated like this sample with a railway (BorderDecorator) around a Scene.
And Things can also be rotated. For example, in this scene the castle is rotated 180 degrees so the portal is accessible from the town ways.
There is also a repository for experimental, incubating or with extra dependencies Things at McThings Extra.
A World is a list of Scenes placed in concrete positions. And a Scene is a list of Things built in a specific position and order. Scenes can be shared loading and saving them to files. Scenes can be also saved as Schematics and converted with Mineways to be used for 3D rendering and printing. You can share scenes adding them to this repository. And they can be interactive as in this app.
This scene includes a river, a house in each side of the river and a bridge for crossing the river.
Things can be built using MinecraftDrawing. Sphere and Circle Things are used with Pyramids in the next scene:
And Things can also be built from Schematics (there are thousands!). There is a sample notebook.
And Things can also be created from MagicaVoxel models.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
File details
Details for the file mcthings-0.60.0.tar.gz
.
File metadata
- Download URL: mcthings-0.60.0.tar.gz
- Upload date:
- Size: 22.8 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.1.1 pkginfo/1.5.0.1 requests/2.23.0 setuptools/46.4.0 requests-toolbelt/0.9.1 tqdm/4.46.0 CPython/3.7.4
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | e3b4f69811437ea0f564666357d7593746cdeedbf3022d061cd6679999c8b496 |
|
MD5 | c832abcd56df034c54eedd8029f6500d |
|
BLAKE2b-256 | 486f1ee24ab575f0b036780d5d641810f4c7810d25a31f28c2ae615863157b4b |
File details
Details for the file mcthings-0.60.0-py3-none-any.whl
.
File metadata
- Download URL: mcthings-0.60.0-py3-none-any.whl
- Upload date:
- Size: 37.0 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.1.1 pkginfo/1.5.0.1 requests/2.23.0 setuptools/46.4.0 requests-toolbelt/0.9.1 tqdm/4.46.0 CPython/3.7.4
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 525ddf5b34d597f70ed1cdb9c8780e99213d025c9e5f8f8e21e1496eb7bdf8be |
|
MD5 | d800f6f4ba8799ab050fa4064db3b63d |
|
BLAKE2b-256 | 4eae85b355c041cc085c9da7b83c0f42c4811eb7aeab7c95f20d366d64756bec |