Skip to content

Commit

Permalink
Merge branch 'main' into OP-5920_abc-options-for-Pointcache-Animation…
Browse files Browse the repository at this point in the history
…-family
  • Loading branch information
tokejepsen committed May 3, 2024
2 parents 636faf5 + 0fc0ab1 commit 0b51393
Show file tree
Hide file tree
Showing 173 changed files with 30,123 additions and 3,298 deletions.
12 changes: 12 additions & 0 deletions website/docs/addon_aftereffects_artist.md
Original file line number Diff line number Diff line change
Expand Up @@ -24,6 +24,11 @@ import versions from '@site/docs/assets/json/Ayon_addons_version.json'

To install the extension, download, install [Anastasyi's Extension Manager](https://install.anastasiy.com/). Open Anastasyi's Extension Manager and select AfterEffects in menu. Then go to `{path to pype}hosts/aftereffects/api/extension.zxp`.

(Current location will be most likely in artist `AppData`, on Windows it would be something like `c:\Users\YOUR_USER\AppData\Local\Ynput\AYON\addons\core_X.X.X\ayon_core\hosts\aftereffects\api`.
On Linux look in `~/.local/share/Ynput/AYON/addons`, on Mac `~/Library/Application Support/Ynput/AYON/addons`)
This location is temporary until full separation of addons is implemented. Artist must start Tray at least once for Ayon server to populate this location.)


Drag extension.zxp and drop it to Anastasyi's Extension Manager. The extension will install itself.

## Implemented functionality
Expand All @@ -42,6 +47,13 @@ In AfterEffects you'll find the tools in the `AYON` extension:

You can show the extension panel by going to `Window` > `Extensions` > `AYON`.

:::note guide
On newer MacOS you need to:
- go to `Applications/Adobe AfterEffects XXXX`
- right clicking on the `Adobe AfterEffects XXXX.app`
- then `Get Info`, check `Open using Rosetta`
:::

### Publish

When you are ready to share some work, you will need to publish it. This is done by opening the `Publisher` through the `Publish...` button.
Expand Down
17 changes: 13 additions & 4 deletions website/docs/addon_core_settings.md
Original file line number Diff line number Diff line change
Expand Up @@ -42,7 +42,7 @@ Project settings can have project specific values. Each new project is using stu

## Tools
### Creator
Settings related to [Creator tool](../artist_tools_creator).
Settings related to [Creator tool](artist_tools_creator).

#### Product name profiles
![core_tools_creator_product_template](assets/core_tools_creator_product_template.png)
Expand Down Expand Up @@ -75,7 +75,7 @@ Some creators may have other keys as their context may require more information


### Workfiles
Settings related to [Workfile tool](../artist_tools_workfiles).
Settings related to [Workfile tool](artist_tools_workfiles).

#### Open last workfile at launch
This feature allows you to define a rule for each task/host or toggle the feature globally to all tasks as they are visible in the picture.
Expand All @@ -86,7 +86,7 @@ This feature allows you to define a rule for each task/host or toggle the featur

#### Template name profiles

Allows to select [anatomy template](admin_settings_project_anatomy.md#templates) based on context of product being published.
Allows to select [anatomy template](admin_settings_project_anatomy#templates) based on context of product being published.

For example for `render` profile you might want to publish and store assets in different location (based on anatomy setting) then for `publish` profile.
Profile filtering is used to select between appropriate template for each context of published products.
Expand Down Expand Up @@ -127,7 +127,7 @@ AYON distributes its own OCIO configs. Those can be found in `{ayon install dir}
### Using OCIO config
Global config path is set by default to AYON distributed configs. At the moment there are only two - **aces_1.2** and **nuke-default**. Since this path input is not platform specific it is required to use at least an environment variable for platform specific config root directory. Order of paths matter so first existing path found is used.

Each OCIO config path input supports formatting using environment variables and [anatomy template keys](../admin_settings_project_anatomy#available-template-keys). The default global OCIO config path is `{AYON_ROOT}/vendor/bin/ocioconfig/OpenColorIOConfigs/aces_1.2/config.ocio`.
Each OCIO config path input supports formatting using environment variables and [anatomy template keys](admin_settings_project_anatomy#available-template-keys). The default global OCIO config path is `{AYON_ROOT}/vendor/bin/ocioconfig/OpenColorIOConfigs/aces_1.2/config.ocio`.

If the project settings for a particular host has its own OCIO config **enabled** and set to at least one path and the path exists, it overrides the global OCIO config for that host.

Expand Down Expand Up @@ -220,6 +220,15 @@ A profile may generate multiple outputs from a single input. Each output must de
- **Input arguments** input definition arguments of video or image sequence - this setting has limitations as you have to know what is input.
- **Output arguments** other FFmpeg output arguments like codec definition.

:::tip Time Code argument
**Time Code argument:** `-timecode {timecode}`

Time Code `{timecode}` key is supported which is evaluated in the format `HH:MM:SS:FF`.
> It helps loading review files into Resolve - by having this timecode metadata included then Resolve 'understands' what the start frame / timecode is of the loaded media.
![core_extract_review_out_args](assets/core_extract_review_out_args.png)
:::

- **`Output width`** and **`Output height`**
- It is possible to rescale output to specified resolution and keep aspect ratio.
- If value is set to 0, source resolution will be used.
Expand Down
11 changes: 9 additions & 2 deletions website/docs/addon_deadline_admin.md
Original file line number Diff line number Diff line change
Expand Up @@ -21,11 +21,11 @@ For [AWS Thinkbox Deadline](https://www.awsthinkbox.com/deadline) support you ne

1. Deploy AYON executable to all nodes of Deadline farm. See [Install & Run](admin_launcher_distribute.md)

2. Enable Deadline Module in the [AYON Admin Settings](admin_settings_system.md#deadline).
2. Create a new AYON Bundle with Deadline Addon version.

3. Set up *Deadline Web API service*. For more details on how to do it, see [here](https://docs.thinkboxsoftware.com/products/deadline/10.1/1_User%20Manual/manual/web-service.html).

4. Point AYON to your deadline webservice URL in the [AYON Admin Settings](admin_settings_system.md#deadline).
4. Point AYON to your deadline webservice URL in the Deadline settings `ayon+settings://deadline/deadline_urls/0/value`.

![Webservice url](assets/deadline_webserver_config.png)

Expand Down Expand Up @@ -75,6 +75,13 @@ The dependent publishing job's pool uses `ayon+settings://deadline/publish/Proce
The logic for publishing job pool assignment applies to tiling jobs.
:::

### Authentication
Deadline supports username and passwords authentication to protect webservice from unwanted requests. (In Deadline `Tools>Configure Repository Options>Web Service Settings>Require Authentication`)

For this admin needs to enable authentication requirement for DL in `ayon+settings://deadline/require_authentication`.

Artists then need to provide their credentials in `Site Settings`.

## Troubleshooting

### Publishing jobs fail directly in DCCs
Expand Down
147 changes: 147 additions & 0 deletions website/docs/addon_flow_admin.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,147 @@
---
id: addon_flow_admin
title: Flow (ShotGrid)
sidebar_label: Flow (ShotGrid)
---

import ReactMarkdown from "react-markdown";
import versions from '@site/docs/assets/json/Ayon_addons_version.json'

<ReactMarkdown>
{versions.Flow_Badge}
</ReactMarkdown>

import Tabs from '@theme/Tabs';
import TabItem from '@theme/TabItem';

:::info Addon name
In Ayon, we've been using the name Shotgrid. But since we plan to change it, we'll start calling it Flow addon in our documentation. Sometimes, we might use SG too, just to keep things interesting.
:::

### Introduction

Flow ( previously known as ShotGrid or ShotGun) is a production tracking and asset management software that helps studios manage their projects, assets, and shots. The Ayon Flow integration allows you to seamlessly connect your Ayon Studio with Flow and automate the synchronization of your project data between the two systems. The integration enables you to synchronize folder attributes, status, tags, and reviewables between Ayon and Flow

Current version of the integration also supports following features:

- Folder attributes two way synchronization
- Folder tasks two way synchronization
- Status synchronization (currently only Ayon to Flow)
- Tags synchronization (currently only Ayon to Flow)
- Reviewables upload to Flow for review
- Three types of Ayon client (desktop) user login:
- via environment variable,
- via Tray widget for User email and password inputs,
- via Tray widget for User email input - with secret shared User api key set in addon settings


### Configuring Ayon

Before any project can be synchronized form Flow first we need to configure the addon's Studio settings.

#### Setting up Flow Script connection

1. Go to your Flow server and within your admin menu (1) select Scripts menu item (2). ![Flow Scripts](assets/shotgrid/sg_server_scripts.png)
2. You'll need to create a new item for each access level and give it a name. We're calling our items `ayon_connector` and _`ayon_user_publishing`_. Each item is linked to a different **permission group**. It's important to know that the `ayon_connector` script is only for services, while `ayon_user_publishing` is for users logging into the Ayon Desktop app. This helps us manage different access levels. ![Flow Scripts items](assets/shotgrid/sg_server_scripts_items.png)
3. When you create a script item, remember to save the generated hash key right away because it's only shown once.

#### Setting Ayon Secrets

Add the ayon_connector key to Ayon Secrets and name it some easy way so here in our example we are naming it `sg_server_script_key`. You can also add the `ayon_user_publishing` secret here just for future reference, but it will never be used as within SG addon settings.

#### Flow addon Studio settings configuration

:::tip Addon Frontend Tab
To be able to use Shotgrid tab in Studio settings you need to have correctly configured addon at **production bundle** state. Please restart the server after you finalized the settings. After that, you should see the Shotgrid tab in Studio settings.
:::

To get the addon's frontend tab working and sync all Flow projects, you need to set up a few things:

* Shotgrid URL (`ayon+settings://shotgrid/shotgrid_server`)
* ShotGrid's Script API key (`ayon+settings://shotgrid/service_settings/script_key`)
* ShotGrid's Script Name (`ayon+settings://shotgrid/service_settings/script_name`)

#### Setting up the ShotGrid URL
First, enter your Flow server URL in the **Shotgrid URL** field. It looks something like `https://yourcompany.shotgrid.autodesk.com`.

#### Setting up the ShotGrid's Script API key for Services
Next, in the Services section, put your **ShotGrid's Script API key**. You should already have this key. Then, add your **ShotGrid's Script Name**. If you've followed the steps before, you might name it `ayon_connector`.

![Ayon Scripts items](assets/shotgrid/ay_server_scripts_items.png)

#### Setting login types for Users
You need to decide how users will log into the Ayon Desktop app. Here are three options:

1. **Via Environment variable** - This is the default login method. Enter the user's email as `AYON_SG_USERNAME` on each user's computer in your studio. With this method, users won't see their login details on the Tray app widget.
![Ayon user login env](assets/shotgrid/ay_user_login_env.png)

2. **Via Tray App with password** - Users log in with their email and password. It's a common method, and you can set permissions in Flow. You can create different permission groups for users. However, sometimes users might not have access to certain projects.
![Ayon user login password](assets/shotgrid/ay_user_login_pass.png)

3. **Via Tray App with shared API key** - Users log in with their email only. The shared secret API key is in the addon settings. This lets you set one permission group for all users.
![Ayon user login shared](assets/shotgrid/ay_user_login_shared.png)


#### Setting up local storage for Flow

In order to use power of Flows file system you have to configure local storage settings. This is done by enabling local storage and adding local storage name which had been previously configured in **Flow's Admin menu** > **Site preferences** > **File management**. Here it is important to **Enable linking to local files** (1) and create preset (2) for multiplatform file system. Copy name of the created preset (3) and paste it in Ayon Studio settings.
![Flow local storage](assets/shotgrid/sg_local_storage.png)

Paths should be mirroring defined paths in Ayon Anatomy root configuration. ![Anatomy roots](assets/shotgrid/ay_anatomy_roots.png)

The name of the preset copied previously should be pasted in Ayon Studio settings. ![Ayon local storage](assets/shotgrid/ay_local_storage.png)

#### Anatomy preset configuration

To use the Flow addon with Ayon, you need to set up an Anatomy preset. This preset helps sync things between Ayon and Flow. To get started, you can create a new preset or pick an existing one. Right now, the only thing to remember is that _Task Types_, _Folder Types_, and _Statuses_ should each have only one item. Make sure it matches a common item you'd find in Flow.

Here's how to add a **Comp** task type with the shortcode **cmp**. Make sure to include it in the **Flow Admin menu** under **Pipeline steps**.

Follow these steps for Folder Type and Statuses too, as explained below.

To create new Anatomy preset follow these steps:

![Ayon anatomy preset](assets/shotgrid/sg_anatomy_preset.png)

1. Go to **Anatomy presets** tab in Studio settings
2. Hit Save as new preset button
3. Name it something like Flow or SG
4. Remove all Folder types except one - make sure it has corresponding type in Flow
5. Remove all Task types except one - make sure it has corresponding type in Flow
6. Remove all Statuses except one - make sure it has corresponding status in Flow

And now the anatomy preset is ready to be used in Flow addon settings.

![Ayon anatomy preset set](assets/shotgrid/ay_anatomy_preset_set.png)

#### Selecting enabled entities for synchronization

Flow's enabled entity enumerator (`ayon+settings://shotgrid/compatibility_settings/shotgrid_enabled_entities`) lets us pick which entities to sync between Ayon and Flow. We do this by choosing the entities from the list and saving our choices. But remember, we must also turn on these entities in Flow's Project Tracking settings. Ensure all required entities are visible (not hidden).

![Flow enabled entities](assets/shotgrid/sg_tracking_settings.png)


#### Configuring folder attributes synchronization

To sync folder attributes between Ayon and Flow, set up the **Folder Attributes Map**. Choose attributes to sync by adding the name to the **SG** column (1). Attributes with no value won't be considered. Use the **Scope** column (2) to pick only the Flow entities that should have the attribute. For instance, the **fps** attribute might be used only for Versions, Shots, and Project entities.

:::note SG attribute names
Use names without the "sg_" prefix, even though they exist in Flow's Field registry with this prefix. The system adds them automatically during synchronization. We first check if a name exists without the prefix and then try it with the prefix for the specific entity. If it's already in the registry, we use it; if not, we create it in Flow's field registry.

Check the Available Fields in **Flow's Admin menu** > **Fields**
:::

Here is a typical example of folder attributes mapping:

![Flow folder attributes](assets/shotgrid/ay_attribute_mapping.png)


#### Targeting reviewables to Flow

You can effortlessly ensure that all reviewables will be uploaded to Flow. For this purpose, you simply need to attach a specific tag to Extract Review output presets. You can achieve this by following these steps:

1. Navigate either to your Studio Settings or any Project settings.
2. Find and add the **shotgridreview** tag to any of the selected preset's output.
You can do this at the following path `ayon+settings://core/publish/ExtractReview/profiles/0/outputs`.

![Flow shotgrid review tag](assets/shotgrid/review_tag.png)
2 changes: 1 addition & 1 deletion website/docs/addon_ftrack_admin.md
Original file line number Diff line number Diff line change
Expand Up @@ -20,7 +20,7 @@ Ftrack is currently the main project management option for AYON. This documentat
## Prepare Ftrack for AYON

### Server URL
If you want to connect Ftrack to AYON you might need to make few changes in Ftrack settings. These changes would take a long time to do manually, so we prepared a few Ftrack actions to help you out. First, you'll need to launch AYON settings, enable [Ftrack module](admin_settings_system.md#Ftrack), and enter the address to your Ftrack server.
If you want to connect Ftrack to AYON you might need to make few changes in Ftrack settings. These changes would take a long time to do manually, so we prepared a few Ftrack actions to help you out. First, you'll need to have Ftrack enabled in your AYON bundle, and enter the address to your Ftrack server.

### Login
Once your server is configured, restart AYON and you should be prompted to enter your [Ftrack credentials](addon_kitsu_artist.md#How-to-use-Ftrack-in-AYON) to be able to run our Ftrack actions. If you are already logged in to Ftrack in your browser, it is enough to press `Ftrack login` and it will connect automatically.
Expand Down
11 changes: 8 additions & 3 deletions website/docs/addon_houdini_admin.md
Original file line number Diff line number Diff line change
Expand Up @@ -16,7 +16,7 @@ import versions from '@site/docs/assets/json/Ayon_addons_version.json'

### Add Self Publish Button

Enabling this setting will cause Houdini creator to add a **self publish button** when creating new publish instances. More Info on how how the **self publish button** works [here](artist_hosts_houdini#ayon-publishing-process)
Enabling this setting will cause Houdini creator to add a **self publish button** when creating new publish instances. More Info on how how the **self publish button** works [here](addon_houdini_artist#ayon-publishing-process)

![general_settings_self_publish_button](assets/houdini/admin/general_settings_self_publish_button.png)

Expand Down Expand Up @@ -106,21 +106,26 @@ Enable or disable the plugins. Some of them have extra options such as defining
## Publish plugins
Enable or disable the plugins executed at publishing.

- Collect Rop Frame Range
- Collect Asset Handles
- Collect Chunk Size
- Validate Instance in same Context
- Validate Latest Containers
- Validate Mesh is Static
- Validate Review Colorspace
- Validate Product Name
- Validate Unreal Static Mesh Name
- Validate workfile paths settings

### Collect Rop Frame Range
### Collect Asset Handles

Disable this if you want the publisher to ignore start and end handles specified in the asset data for publish instances.
> Artists are allowed to override this value in the publisher UI.
![houdini_publish_plugins_collectors_frame_range](assets/houdini/admin/houdini_publish_plugins_collectors_frame_range.png)

### Validate Instance in same Context
When working in per-shot style you always publish data in context of current asset (shot). This validator checks if this is so. It is optional so it can be disabled when needed.

---

## FAQ
Expand Down
Loading

0 comments on commit 0b51393

Please sign in to comment.