🎨

[SG Tips] タスクのカラーはPython APIからだと255で指定できる

2021/12/24に公開

ShotGridアドカレ2021 12月24日の記事です。
< 17日目 | 19日目 >


色を指定するフィールド

タスクの「ガントバーの色」フィールドとパイプラインステップの「カラー」フィールド(フィールドコードはどちらも「color」)は、色を指定できます。

SGサイト上ではこのようなカラーパレットから選びますが、
Python APIからならRGB=256,256,256の16ビットカラーで指定できます。

やってみる

手早くAPIアクセスできる環境を得るために、
適当なプロジェクトを作成してタスクを作成して、SG DesktopにてPython Consoleを開きます。

まずは取得

あらかじめ「tk」「context」といったオブジェクトが用意されていて、
ShotgunのAPIは tk.shotgun から取得できます。またプロジェクトエンティティは context に含まれているのを使います。

tk,context
tk.shotgun.find_one
tk.shotgun.update

context.source_entity

find_oneでタスクを一つ取得してみます。返り値には「color」フィールドを含めます。

`color`: `pipeline_step`

とあるように、特に何もしなければタスクのカラーはパイプラインステップに準拠します。
では次に、カラーパレットの右上の真っ黒を指定してみました。
再度取得してみます。

なんと、真っ黒かと思ったら僅かに値が入っていました!
正直ちょっとびっくりしました。
ドルビーシネマで 「これが、本当の黒(ドゥーン)」 というのを見せられた時と真逆のびっくりです。
本当の黒を教えてあげる必要があるでしょう。

updateで色指定

update
data = {'color': '0,0,0'}
tk.shotgun.update(
    target_task['type'],
    target_task['id'],
    data
    )

ちゃんと RGB=0,0,0 の真っ黒です。
ガントバーも見てみましょう。上のバーがカラーパレットで指定、下がAPIから指定。

なおこのタスク、12/23からクリスマス・土日を挟んだ「チェックは週明けで大丈夫です!」案件です。
「これが、本当の黒(ドゥーン)」

ピックして確認

10,10,10 と 0,0,0 を見分けるのは並みの人類には無理なのでカラーピッカーで一応見てみます。

指定通りのRGB値になっていました。

これで、総発色 65536色 のゲーミングパイプライン、ゲーミングタスクが実現可能です。

参考

color指定についての公式ドキュメントはこちら。

https://developer.shotgridsoftware.com/python-api/reference.html?highlight=color#color

冒頭で取得したように、「pipeline_step」と指定するとパイプラインステップのカラーに沿います。


おしらせ

ShotGrid のTipsを技術同人誌としてまとめました。
製本版をBOOTHにて、電子版を技術書典オンラインマーケットにて頒布中です。

BOOTH :
https://circleqt.booth.pm/items/3472241
技術書典 :
https://techbookfest.org/product/5412773246795776?productVariantID=5465863454982144


< 17日目 | 19日目 >

Discussion