Welcome to the Pyblish by Example tutorial.
You will learn
- The basics of publishing in the production of film and games
- The fundamentals of Pyblish and it's API
- How to validate content
- How to guarantee valid content on export
- How to properly position and name content according to convention
- How to visualise the results of one or more publishes
- Developer and Artist communication through the UI
Pyblish is an open source, cross-platform framework for test-driven content creation.
Pyblish by Example is a hands-on introduction to Pyblish using short example programs written like a book - to be read from top to bottom.
If you haven't already, go ahead and install Pyblish.
$ pip install pyblish-base
Any problems, have a look at the extended installation guide.
How to use this guide
Start by confirming to yourself that you are indeed using version 1.4+ of Pyblish.
import pyblish pyblish.__version__ '1.4.3'
If not, see the top-left corner of this page for a dropdown of your version.
As you read through this guide it is recommended that you use the scripting API, accessible via
from pyblish import util util.publish()
Should you happen to find errors or would like to contribute material to this guide, you can:
- Click on the
+button to the right of each paragraph to add a comment
- Register on GitBook to edit this book directly.
- Fork the GitHub repository and submit a pull-request with your changes.
Have a look to the left for a table of contents, and below for related topics in the forums.
Note: The below content was written at various versions of Pyblish and may not include current best practices, but all remain forwards compatible with version 1.4.
.set_data("key", "value")has been superseded by
.data["key"] = "value"but will still work with newer plug-ins.
- Responsibility of Extractors
- Multiple families workflow
- Per task plug-ins
- Publishing with comments
- Instances and Plain-Old-Data
- Cooperative Collection
- Search and Customisation
- Good to know about Pyblish
- Registration versus families
- Backwards compatibility
2015-08-06 16:27- Added Quickstart
2015-08-07 10:12- Added Architecture
2015-08-07 10:14- Updated Quickstart
2015-08-07 19:17- Added Good to know about Pyblish
2015-08-07 20:41- Updated Architecture
2015-08-07 20:48- Updated This
2015-08-09 10:51- Updated Validating II with flow chart
2015-08-09 17:24- Updated This, with installation instructions
2015-08-10 09:00- Updated This
2015-08-11 07:28- Updated Quickstart
2015-08-11 07:30- Updated Files with comma-separated paths
2015-08-11 07:40- Fixed typo in Report IV
2015-08-13 21:08- Updated Report I-IV
2015-08-14 09:26- Updated Report I-II
2015-08-18 07:02- Added host attribute in-depth
2015-08-18 07:22- Added "You will learn" to This
2015-10-19 14:38- Updated use of "Asset" to "Instance"
2015-11-19 09:07- Updated to pure-dict
2015-12-20 21:56- Updated image of Context + Instance.
2016-01-21 17:46- Transitioned to GitBooks, removed section about custom test and services.
2016-06-07 09:48- Defer use of GUI from guide.
2016-07-01 14:54- Link to installation guide on Forum
2016-08-03 10:40- Add intermediate and advanced links
2017-08-12 10:30- Removed deprecated dependency injection link