https://github.com/florianvazelle/refactored-bone-generator
🌠Client-server blender addon written in Rust and Python using gRPC
https://github.com/florianvazelle/refactored-bone-generator
blender blender-addon grpc python rust
Last synced: 12 months ago
JSON representation
🌠Client-server blender addon written in Rust and Python using gRPC
- Host: GitHub
- URL: https://github.com/florianvazelle/refactored-bone-generator
- Owner: florianvazelle
- Created: 2021-09-13T21:47:03.000Z (over 4 years ago)
- Default Branch: main
- Last Pushed: 2021-09-26T09:52:04.000Z (over 4 years ago)
- Last Synced: 2025-02-12T11:14:45.996Z (about 1 year ago)
- Topics: blender, blender-addon, grpc, python, rust
- Language: Python
- Homepage:
- Size: 38.1 KB
- Stars: 3
- Watchers: 2
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# refactored-bone-generator
This is a reworked version of my [bone generator addon](https://github.com/florianvazelle/bone-generator), in which the backend is now written in Rust.
It is an addon based on a [client-server](https://grpc.io) model using [grpc](https://grpc.io) and [tonic](https://github.com/hyperium/tonic).
## Getting start
### Install addon
To develop, or to use the blender addon, create a symbolic link in the blender addons folder :
```bash
ln -s $(pwd)/frontend/src/ ~/.config/blender/2.91/scripts/addons/bone-generator
```
or, for windows :
```bash
mklink /D "%USERPROFILE%\AppData\Roaming\Blender Foundation\Blender\2.91\scripts\addons\bone-generator" "frontend\src"
```
#### Python requirements
I install blender 2.91 with snap :
```
snap install blender --channel=2.91/stable --classic
```
To install python dependencies, go to blender terminal and run :
```python
>>> import sys
>>> print(sys.executable)
'/snap/blender/65/2.91/python'
```
and run :
```bash
/snap/blender/65/2.91/python/bin/python3.7m -m ensurepip --user
/snap/blender/65/2.91/python/bin/python3.7m -m pip install -r frontend/requirements.txt
```
### Run local server
To run local server, go to `backend/` folder and simply run :
```bash
cargo run
```
## Developement
### Protobuf
To generate python proto models, run :
```bash
pip install -r frontend/requirements.txt
python -m grpc_tools.protoc -I . --python_betterproto_out=frontend/src/proto proto/service.proto
```