Blender Kitsu: New Assset Tagging System #286

Merged
Nick Alberelli merged 8 commits from TinyNick/blender-studio-pipeline:feature/asset-tagging into main 2024-04-30 21:43:07 +02:00
2 changed files with 26 additions and 40 deletions
Showing only changes of commit 2e2ecf1531 - Show all commits

View File

@ -7,28 +7,24 @@ The next step is to create an asset and store that information into the Kitsu Se
3. Follow the [asset pipeline guide](https://studio.blender.org/pipeline/addons/asset_pipeline) to create a new asset collection, ensure these assets are marked as an [Asset in Blender](https://docs.blender.org/manual/en/latest/files/asset_libraries/introduction.html#creating-an-asset). 3. Follow the [asset pipeline guide](https://studio.blender.org/pipeline/addons/asset_pipeline) to create a new asset collection, ensure these assets are marked as an [Asset in Blender](https://docs.blender.org/manual/en/latest/files/asset_libraries/introduction.html#creating-an-asset).
4. Save the above asset within the directory `your_project_name/svn/pro/assets/char` (or similar depending on type) 4. Save the above asset within the directory `your_project_name/svn/pro/assets/char` (or similar depending on type)
## Kitsu Casting
Casting is the process of associating a Kitsu Asset Entity with a given shot, this is how the Shot Builder knows what Assets to link into a given shot.
1. Please follow the [Kitsu Breakdown](https://kitsu.cg-wire.com/getting-started-production/) guide to Cast your assets to shots.
## Load Asset Data into Kitsu ## Load Asset Data into Kitsu
To match Assets File to the data on the Kitsu server, we need to first enter the data into the Kitsu server and secondly create an Asset Index. This is a json file that contains the mapping of the asset's name to the asset's filepath. Any collection Marked as an Asset in Blender in the directory your_project/svn/pro/assets will be added to this index. To match Assets File to the casting breakdown on the Kitsu server, we need to tag the Asset with a filepath and collection. This can be done via the Blender Kitsu Add-On. This data will be used to match a Kitsu Asset with a Collection within a .blend file, that will be linked into all shots that have that Asset "casted in it".
1. Create a matching entry in Kitsu for each asset via the [Kitsu Create Assets guide](https://kitsu.cg-wire.com/first_production/#create-assets) 1. Open the file for a given Asset.
2. Follow the [Kitsu Breakdown guide](https://kitsu.cg-wire.com/first_production/#create-a-breakdown-list) to assign/cast assets to shots. 2. Under the Kitsu>Context Panel, check the following settings.
3. Create a text [Metadata Column](https://kitsu.cg-wire.com/production_advanced/#create-custom-metadata-columns) with the exact name `slug`. - **Type** is set to Asset.
4. Populate the new `slug` column with the exact name of the asset's collection. - **Asset Type** is set to the correct Asset Type (Collection, Prop, etc)
5. Use the [Index Assets Script](https://projects.blender.org/studio/blender-studio-pipeline/src/branch/main/scripts/index_assets) to create an `asset_index.json` file. - **Asset** Field is set to the matching entry on the Kitsu server for the current file.
3. Under the Kitsu>Context>Set Asset sub-panel...
- **Collecton** is set to the Asset's parent collection.
- Run the **Set Kitsu Asset** operator to send the current filepath and selected collection to the Kitsu Server.
**Example of `asset_index.json*`* You should now see the filepath and collection under the Asset's Metadata on the Kitsu Server.
```json
{
"CH-rain": {
"type": "Collection",
"filepath": "your_project/svn/pro/assets/chars/rain/rain.blend"
},
"CH-snow": {
"type": "Collection",
"filepath": "your_project/svn/pro/assets/chars/snow/snow.blend"
}
}
```
## Building your First Shot ## Building your First Shot
Before building your first shot, you will need to customize your production's Shot Builder hooks. Inside your productions `assets/scripts/shot-builder` directory the Shot Builder hook file should be stored, based on the [example](https://projects.blender.org/studio/blender-studio-pipeline/src/branch/main/scripts-blender/addons/blender_kitsu/shot_builder/hook_examples) included in the Add-On. This file can be automatically created at the correct directory using an operator in the **Blender Kitsu** Add-On preferences. Hooks are used to extend the functionality of the shot builder, and can be customized on a per project basis. Before building your first shot, you will need to customize your production's Shot Builder hooks. Inside your productions `assets/scripts/shot-builder` directory the Shot Builder hook file should be stored, based on the [example](https://projects.blender.org/studio/blender-studio-pipeline/src/branch/main/scripts-blender/addons/blender_kitsu/shot_builder/hook_examples) included in the Add-On. This file can be automatically created at the correct directory using an operator in the **Blender Kitsu** Add-On preferences. Hooks are used to extend the functionality of the shot builder, and can be customized on a per project basis.

View File

@ -296,31 +296,21 @@ The Shot Builder requires shot data including Name, Frame Rate, and Duration to
#### Asset Setup #### Asset Setup
##### Kitsu Server ##### Kitsu Server
The Shot Builder requires all Asset to be stored on the Kitsu Server with a [Metadata Column](https://kitsu.cg-wire.com/production_advanced/#create-custom-metadata-columns) with the exact name `slug` exactly matching the name of the asset's collection.
Assets needs to be associated with each shot in your production. Please follow the [Kitsu Breakdown](https://kitsu.cg-wire.com/getting-started-production/) guide to Cast your assets to shots. Assets needs to be associated with each shot in your production. Please follow the [Kitsu Breakdown](https://kitsu.cg-wire.com/getting-started-production/) guide to Cast your assets to shots.
##### Asset Index ##### Assets
To match Assets File to the casting breakdown on the Kitsu server, we need to create an Asset Index. This is a json file that contains the mapping of the asset's name to the asset's filepath. Any collection Marked as an Asset in Blender in the directory `your_project/svn/pro/assets` will be added to this index. To match Assets File to the casting breakdown on the Kitsu server, we need to tag the Asset with a filepath and collection. This can be done via the Blender Kitsu Add-On. This data will be used to match a Kitsu Asset with a Collection within a .blend file, that will be linked into all shots that have that Asset "casted in it".
##### Example `asset_index.json` 1. Open the file for a given Asset.
```json 2. Under the Kitsu>Context Panel, check the following settings.
{ - **Type** is set to Asset.
"CH-rain": { - **Asset Type** is set to the correct Asset Type (Collection, Prop, etc)
"type": "Collection", - **Asset** Field is set to the matching entry on the Kitsu server for the current file.
"filepath": "your_project/svn/pro/assets/chars/rain/rain.blend" 3. Under the Kitsu>Context>Set Asset sub-panel...
}, - **Collecton** is set to the Asset's parent collection.
"CH-snow": { - Run the **Set Kitsu Asset** operator to send the current filepath and selected collection to the Kitsu Server.
"type": "Collection",
"filepath": "your_project/svn/pro/assets/chars/snow/snow.blend"
}
}
```
To create/update the Asset Index: You should now see the filepath and collection under the Asset's Metadata on the Kitsu Server.
1. Enter Asset Index directory `cd blender-studio-pipeline/scripts/index_assets`
2. Run using `./run_index_assets.py your_poduction` replace `your_production` with the path to your project's root directory
3. This will create an index file at `your_production/svn/pro/assets/asset_index.py`
#### Hooks Setup #### Hooks Setup
Shot Builder uses hooks to extend the functionality of the shot builder. To create a hook file Shot Builder uses hooks to extend the functionality of the shot builder. To create a hook file