Metadata-Version: 2.4
Name: usagi-picker
Version: 0.1.2
Summary: Animation picker for Autodesk Maya
License: MIT
Project-URL: Homepage, https://github.com/zool-rig/usagi-picker
Project-URL: Repository, https://github.com/zool-rig/usagi-picker
Project-URL: Documentation, https://github.com/zool-rig/usagi-picker/tree/main/python/bozon-ui
Project-URL: Issues, https://github.com/zool-rig/usagi-picker/issues
Keywords: animation,maya,picker,rig,usagi,anim
Classifier: Development Status :: 3 - Alpha
Classifier: Intended Audience :: End Users/Desktop
Classifier: License :: OSI Approved :: MIT License
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3 :: Only
Classifier: Programming Language :: Python :: 3.7
Classifier: Topic :: Multimedia :: Graphics
Classifier: Topic :: Software Development :: User Interfaces
Requires-Python: >=3.7
Description-Content-Type: text/markdown
License-File: LICENSE
Dynamic: license-file

# Usagi Picker 🐇

[![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](LICENSE)
[![Python](https://img.shields.io/badge/Python-3.7%2B-blue.svg)](https://www.python.org)
[![Maya](https://img.shields.io/badge/Maya-2022%2B-green.svg)](https://www.autodesk.com/products/maya/overview)
[![PyPI version](https://badge.fury.io/py/usagi-picker.svg)](https://badge.fury.io/py/usagi-picker)

---

## Table of Contents

- [Installation](#installation)
- [Features](#features)
- [Usage](#usage)
- [Project Status](#project-status)
- [Contributing](#contributing)
- [License](#license)

---

Usagi is a modern open source animation picker for Autodesk Maya.

![picker image](/doc/images/picker.png)

## Installation

Clone this repository and drop the `drag_n_drop_install.py` file in the maya's viewport.

Or install it with pip

```bash
mayapy -m pip install usagi-picker
```

## Features

* Create a picker for any rigs using maya objects as templates.

![edit scene image](/doc/images/edit_scene.png)
*SO to [Ramon Arango](https://ramonarango.gumroad.com/) for the amazing rig*

![edit shapes gif](/doc/images/upkr_edit.gif)

* Navigate in the picker like in a 2D scene.

![navigate gif](/doc/images/upkr_nav.gif)

* Blender style splitters to layout multiple pickers

![splitter gif](/doc/images/upkr_split.gif)

## Usage

Run the picker

```python
from usagi_picker.picker import launch_picker

launch_picker()
```

Run the editor

```python
from usagi_picker.editor import launch_picker_editor

launch_picker_editor()
```

To save your picker in your rig, use the export menu of the editor and add a node to the rig with a string attribute named `usagi_picker_data` and set it with the json data.

```python
with open("my/picker.upkr", "r") as f:
    upkr = f.read(f)

cmds.createNode("transform", name="picker_data_node")
cmds.addAttr(ln="usagi_picker_data", dt="string")
cmds.setAttr(".usagi_picker_data", upkr, type="string")
```

## Project Status

The project is ready to use and needs to be battle tested

## Contributing

Contributions are welcome ! 

To setup your environment :

1. Clone this repository
2. Install the package as editable

```bash
cd loc/of/the/repo
mayapy -m pip install -e .
```

> [!NOTE] If the keyword `mayapy` is not found, you will need to add Maya's bin directory to your `PATH` environment variable.\
Typical locations of the bin directroy :\
**Windows** : `C:\Program Files\Autodesk\Maya<Version>\bin\`\
**Linux** : `/usr/autodesk/Maya<Version>/bin/`\
**macOS** : `/Applications/Autodesk/maya<Version>/Maya.app/Contents/bin/`


## License

See [LICENSE](LICENSE).
