Skip to content

Commit 8643a7f

Browse files
authored
41726 add setframerange app (#33)
* 41726 First pass at adding set frame range * 41726 Add set frame range app to basic config. Cleaned up changes for review * 41726 Code review fixes * 41726 Code review fixes. missing files * 41726 second set of code review fixes. Sharing DCC site configuration tk-multi-shotgunpanel app definition in apps.yml include
1 parent 0d9d0b8 commit 8643a7f

File tree

19 files changed

+590
-404
lines changed

19 files changed

+590
-404
lines changed

core/hooks/pick_environment.py

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -21,6 +21,9 @@ class PickEnvironment(Hook):
2121

2222
def execute(self, context, **kwargs):
2323

24+
if context.entity and context.entity["type"] == "Shot":
25+
return "shot"
26+
2427
if context.project:
2528
return "project"
2629

env/includes/3dsmax/apps.yml

Lines changed: 94 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,94 @@
1+
# Copyright (c) 2017 Shotgun Software Inc.
2+
#
3+
# CONFIDENTIAL AND PROPRIETARY
4+
#
5+
# This work is provided "AS IS" and subject to the Shotgun Pipeline Toolkit
6+
# Source Code License included in this distribution package. See LICENSE.
7+
# By accessing, using, copying or modifying this work you indicate your
8+
# agreement to the Shotgun Pipeline Toolkit Source Code License. All rights
9+
# not expressly granted therein are reserved by Shotgun Software Inc.
10+
#
11+
12+
# this include configuration defines the common apps of the 3dsMax Integration when it
13+
# is running in either its project or shot level configuration
14+
15+
includes:
16+
- ../common/apps.yml
17+
- ../common/settings/tk-multi-publish2.yml
18+
19+
20+
3dsmax.apps.tk-multi-publish2:
21+
help_url: "@common.apps.tk-multi-publish2.help_url"
22+
collector: "{config}/tk-multi-publish2/basic/collector.py:{config}/tk-multi-publish2/3dsmax.basic/collector.py"
23+
publish_plugins:
24+
- '@common.settings.tk-multi-publish2.publish_file'
25+
- '@common.settings.tk-multi-publish2.upload_version'
26+
- name: Begin file versioning
27+
hook: "{config}/tk-multi-publish2/3dsmax.basic/start_version_control.py"
28+
settings: {}
29+
- name: Publish to Shotgun
30+
hook: "{config}/tk-multi-publish2/3dsmax.basic/publish_max_session.py"
31+
settings: {}
32+
location: "@common.apps.tk-multi-publish2.location"
33+
34+
3dsmax.apps.tk-multi-loader2:
35+
action_mappings:
36+
3dsmax Scene: [import, reference]
37+
Alembic Cache: [import]
38+
Image: [texture_node]
39+
Rendered Image: [texture_node]
40+
Texture: [texture_node]
41+
actions_hook: '{self}/tk-3dsmaxplus_actions.py'
42+
download_thumbnails: true
43+
entities:
44+
- caption: Current Project
45+
type: Hierarchy
46+
root: "{context.project}"
47+
publish_filters: []
48+
- caption: My Tasks
49+
type: Query
50+
entity_type: Task
51+
filters:
52+
- [project, is, '{context.project}']
53+
- [task_assignees, is, '{context.user}']
54+
hierarchy: [entity, content]
55+
# ignore publishes without a status. with zero config, it is very easy
56+
# to publish the same path multiple times. the default zero config publish
57+
# plugins will clear the status of previous publishes of the same path.
58+
# this filter means only the latest publish will be displayed.
59+
publish_filters: [["sg_status_list", "is_not", null]]
60+
location: "@common.apps.tk-multi-loader2.location"
61+
62+
3dsmax.apps.tk-multi-shotgunpanel:
63+
shotgun_fields_hook: '{self}/shotgun_fields.py'
64+
actions_hook: '{self}/tk-3dsmaxplus_actions.py'
65+
action_mappings:
66+
PublishedFile:
67+
- actions: [import]
68+
filters: {published_file_type: Alembic Cache}
69+
- actions: [texture_node]
70+
filters: {published_file_type: Image}
71+
- actions: [reference, import]
72+
filters: {published_file_type: 3dsmax Scene}
73+
- actions: [texture_node]
74+
filters: {published_file_type: Rendered Image}
75+
- actions: [texture_node]
76+
filters: {published_file_type: Texture}
77+
- actions: [publish_clipboard]
78+
filters: {}
79+
Task:
80+
- actions:
81+
- assign_task
82+
- task_to_ip
83+
filters: {}
84+
Version:
85+
- actions:
86+
- quicktime_clipboard
87+
- sequence_clipboard
88+
filters: {}
89+
enable_context_switch: true
90+
location: "@common.apps.tk-multi-shotgunpanel.location"
91+
92+
93+
94+

env/includes/3dsmax/project.yml

Lines changed: 4 additions & 71 deletions
Original file line numberDiff line numberDiff line change
@@ -13,88 +13,21 @@
1313
# is running in its project level configuration
1414

1515
includes:
16-
- ../common/frameworks.yml
1716
- ../common/engines.yml
1817
- ../common/apps.yml
19-
- ../common/settings/tk-multi-publish2.yml
18+
- apps.yml
2019

2120
3dsmax.project:
2221
apps:
2322
tk-multi-about: '@common.apps.tk-multi-about'
2423

2524
tk-multi-pythonconsole: '@common.apps.tk-multi-pythonconsole'
2625

27-
tk-multi-publish2:
28-
help_url: "@common.apps.tk-multi-publish2.help_url"
29-
collector: "{config}/tk-multi-publish2/basic/collector.py:{config}/tk-multi-publish2/3dsmax.basic/collector.py"
30-
publish_plugins:
31-
- '@common.settings.tk-multi-publish2.publish_file'
32-
- '@common.settings.tk-multi-publish2.upload_version'
33-
- name: Begin file versioning
34-
hook: "{config}/tk-multi-publish2/3dsmax.basic/start_version_control.py"
35-
settings: {}
36-
- name: Publish to Shotgun
37-
hook: "{config}/tk-multi-publish2/3dsmax.basic/publish_max_session.py"
38-
settings: {}
39-
location: "@common.apps.tk-multi-publish2.location"
26+
tk-multi-publish2: '@3dsmax.apps.tk-multi-publish2'
4027

41-
tk-multi-loader2:
42-
action_mappings:
43-
3dsmax Scene: [import, reference]
44-
Alembic Cache: [import]
45-
Image: [texture_node]
46-
Rendered Image: [texture_node]
47-
Texture: [texture_node]
48-
actions_hook: '{self}/tk-3dsmaxplus_actions.py'
49-
download_thumbnails: true
50-
entities:
51-
- caption: Current Project
52-
type: Hierarchy
53-
root: "{context.project}"
54-
publish_filters: []
55-
- caption: My Tasks
56-
type: Query
57-
entity_type: Task
58-
filters:
59-
- [project, is, '{context.project}']
60-
- [task_assignees, is, '{context.user}']
61-
hierarchy: [entity, content]
62-
# ignore publishes without a status. with zero config, it is very easy
63-
# to publish the same path multiple times. the default zero config publish
64-
# plugins will clear the status of previous publishes of the same path.
65-
# this filter means only the latest publish will be displayed.
66-
publish_filters: [["sg_status_list", "is_not", null]]
67-
location: "@common.apps.tk-multi-loader2.location"
28+
tk-multi-loader2: '@3dsmax.apps.tk-multi-loader2'
6829

69-
tk-multi-shotgunpanel:
70-
shotgun_fields_hook: '{self}/shotgun_fields.py'
71-
actions_hook: '{self}/tk-3dsmaxplus_actions.py'
72-
action_mappings:
73-
PublishedFile:
74-
- actions: [import]
75-
filters: {published_file_type: Alembic Cache}
76-
- actions: [texture_node]
77-
filters: {published_file_type: Image}
78-
- actions: [reference, import]
79-
filters: {published_file_type: 3dsmax Scene}
80-
- actions: [texture_node]
81-
filters: {published_file_type: Rendered Image}
82-
- actions: [texture_node]
83-
filters: {published_file_type: Texture}
84-
- actions: [publish_clipboard]
85-
filters: {}
86-
Task:
87-
- actions:
88-
- assign_task
89-
- task_to_ip
90-
filters: {}
91-
Version:
92-
- actions:
93-
- quicktime_clipboard
94-
- sequence_clipboard
95-
filters: {}
96-
enable_context_switch: true
97-
location: "@common.apps.tk-multi-shotgunpanel.location"
30+
tk-multi-shotgunpanel: '@3dsmax.apps.tk-multi-shotgunpanel'
9831

9932
location: "@common.engines.tk-3dsmaxplus.location"
10033
menu_favourites: []

env/includes/3dsmax/shot.yml

Lines changed: 40 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,40 @@
1+
# Copyright (c) 2017 Shotgun Software Inc.
2+
#
3+
# CONFIDENTIAL AND PROPRIETARY
4+
#
5+
# This work is provided "AS IS" and subject to the Shotgun Pipeline Toolkit
6+
# Source Code License included in this distribution package. See LICENSE.
7+
# By accessing, using, copying or modifying this work you indicate your
8+
# agreement to the Shotgun Pipeline Toolkit Source Code License. All rights
9+
# not expressly granted therein are reserved by Shotgun Software Inc.
10+
#
11+
12+
# this configuration defines the behavior of the 3dsMax Integration when it
13+
# is running in its shot level configuration
14+
15+
includes:
16+
- ../common/engines.yml
17+
- ../common/apps.yml
18+
- apps.yml
19+
20+
3dsmax.shot:
21+
apps:
22+
tk-multi-about: '@common.apps.tk-multi-about'
23+
24+
tk-multi-pythonconsole: '@common.apps.tk-multi-pythonconsole'
25+
26+
tk-multi-setframerange: '@common.apps.tk-multi-setframerange'
27+
28+
tk-multi-publish2: '@3dsmax.apps.tk-multi-publish2'
29+
30+
tk-multi-loader2: '@3dsmax.apps.tk-multi-loader2'
31+
32+
tk-multi-shotgunpanel: '@3dsmax.apps.tk-multi-shotgunpanel'
33+
34+
location: "@common.engines.tk-3dsmaxplus.location"
35+
menu_favourites: []
36+
launch_builtin_plugins: [basic]
37+
38+
39+
40+

env/includes/3dsmax/site.yml

Lines changed: 2 additions & 30 deletions
Original file line numberDiff line numberDiff line change
@@ -13,9 +13,9 @@
1313
# is running in its site level configuration
1414

1515
includes:
16-
- ../common/frameworks.yml
1716
- ../common/engines.yml
1817
- ../common/apps.yml
18+
- apps.yml
1919

2020

2121
3dsmax.site:
@@ -50,35 +50,7 @@ includes:
5050
publish_filters: [["sg_status_list", "is_not", null]]
5151
location: "@common.apps.tk-multi-loader2.location"
5252

53-
tk-multi-shotgunpanel:
54-
shotgun_fields_hook: '{self}/shotgun_fields.py'
55-
actions_hook: '{self}/tk-3dsmaxplus_actions.py'
56-
action_mappings:
57-
PublishedFile:
58-
- actions: [import]
59-
filters: {published_file_type: Alembic Cache}
60-
- actions: [texture_node]
61-
filters: {published_file_type: Image}
62-
- actions: [reference, import]
63-
filters: {published_file_type: 3dsmax Scene}
64-
- actions: [texture_node]
65-
filters: {published_file_type: Rendered Image}
66-
- actions: [texture_node]
67-
filters: {published_file_type: Texture}
68-
- actions: [publish_clipboard]
69-
filters: {}
70-
Task:
71-
- actions:
72-
- assign_task
73-
- task_to_ip
74-
filters: {}
75-
Version:
76-
- actions:
77-
- quicktime_clipboard
78-
- sequence_clipboard
79-
filters: {}
80-
enable_context_switch: true
81-
location: "@common.apps.tk-multi-shotgunpanel.location"
53+
tk-multi-shotgunpanel: '@3dsmax.apps.tk-multi-shotgunpanel'
8254

8355
location: "@common.engines.tk-3dsmaxplus.location"
8456
menu_favourites: []

env/includes/common/apps.yml

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -51,6 +51,12 @@ common.apps.tk-multi-launchapp.location:
5151
name: tk-multi-launchapp
5252
version: v0.9.3
5353

54+
common.apps.tk-multi-setframerange:
55+
location:
56+
version: v0.3.0
57+
type: app_store
58+
name: tk-multi-setframerange
59+
5460
# help urls
5561

5662
common.apps.tk-multi-publish2.help_url: https://support.shotgunsoftware.com/hc/en-us/articles/115000067473#Publisher

env/includes/houdini/apps.yml

Lines changed: 92 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,92 @@
1+
# Copyright (c) 2017 Shotgun Software Inc.
2+
#
3+
# CONFIDENTIAL AND PROPRIETARY
4+
#
5+
# This work is provided "AS IS" and subject to the Shotgun Pipeline Toolkit
6+
# Source Code License included in this distribution package. See LICENSE.
7+
# By accessing, using, copying or modifying this work you indicate your
8+
# agreement to the Shotgun Pipeline Toolkit Source Code License. All rights
9+
# not expressly granted therein are reserved by Shotgun Software Inc.
10+
#
11+
12+
# this include configuration defines the common apps of the Houdini Integration when it
13+
# is running in either its project or shot level configuration
14+
15+
includes:
16+
- ../common/apps.yml
17+
- ../common/settings/tk-multi-publish2.yml
18+
19+
20+
houdini.apps.tk-multi-publish2:
21+
help_url: "@common.apps.tk-multi-publish2.help_url"
22+
collector: "{config}/tk-multi-publish2/basic/collector.py:{config}/tk-multi-publish2/houdini.basic/collector.py"
23+
publish_plugins:
24+
- '@common.settings.tk-multi-publish2.publish_file'
25+
- '@common.settings.tk-multi-publish2.upload_version'
26+
- name: Begin file versioning
27+
hook: "{config}/tk-multi-publish2/houdini.basic/start_version_control.py"
28+
settings: {}
29+
- name: Publish to Shotgun
30+
hook: "{config}/tk-multi-publish2/houdini.basic/publish_houdini_session.py"
31+
settings: {}
32+
location: "@common.apps.tk-multi-publish2.location"
33+
34+
houdini.apps.tk-multi-loader2:
35+
action_mappings:
36+
Alembic Cache: [import]
37+
Houdini Scene: [merge]
38+
Image: [file_cop]
39+
Photoshop Image: [file_cop]
40+
Rendered Image: [file_cop]
41+
Texture: [file_cop]
42+
actions_hook: '{self}/tk-houdini_actions.py'
43+
entities:
44+
- caption: Project
45+
type: Hierarchy
46+
root: "{context.project}"
47+
publish_filters: []
48+
- caption: My Tasks
49+
type: Query
50+
entity_type: Task
51+
filters:
52+
- [project, is, '{context.project}']
53+
- [task_assignees, is, '{context.user}']
54+
hierarchy: [project, entity, content]
55+
# ignore publishes without a status. with zero config, it is very easy
56+
# to publish the same path multiple times. the default zero config publish
57+
# plugins will clear the status of previous publishes of the same path.
58+
# this filter means only the latest publish will be displayed.
59+
publish_filters: [["sg_status_list", "is_not", null]]
60+
location: "@common.apps.tk-multi-loader2.location"
61+
62+
houdini.apps.tk-multi-shotgunpanel:
63+
actions_hook: '{self}/general_actions.py:{self}/tk-houdini_actions.py'
64+
action_mappings:
65+
PublishedFile:
66+
- actions: [import]
67+
filters: {published_file_type: Alembic Cache}
68+
- actions: [merge]
69+
filters: {published_file_type: Houdini Scene}
70+
- actions: [file_cop]
71+
filters: {published_file_type: Image}
72+
- actions: [file_cop]
73+
filters: {published_file_type: Photoshop Image}
74+
- actions: [file_cop]
75+
filters: {published_file_type: Rendered Image}
76+
- actions: [file_cop]
77+
filters: {published_file_type: Texture}
78+
- actions: [publish_clipboard]
79+
filters: {}
80+
Task:
81+
- actions:
82+
- assign_task
83+
- task_to_ip
84+
filters: {}
85+
Version:
86+
- actions:
87+
- quicktime_clipboard
88+
- sequence_clipboard
89+
filters: {}
90+
enable_context_switch: true
91+
location: "@common.apps.tk-multi-shotgunpanel.location"
92+

0 commit comments

Comments
 (0)