# Substance Painter Integration

**URL:** <https://community.shotgridsoftware.com/t/substance-painter-integration/9563>\
**Category:** Pipeline Integrations\
**Created:** [August 3, 2020, 3:20pm UTC](https://community.shotgridsoftware.com/t/substance-painter-integration/9563 "2020-08-03T15:20:03Z")\
**Posts on this page:** 20\
**Page:** 1

<div class="post-metadata">

**Author:** ![miguel.oliveira](https://avatars.discourse-cdn.com/v4/letter/m/7ba0ec/32.png) [@miguel.oliveira](https://community.shotgridsoftware.com/u/miguel.oliveira)\
**Post date:** [August 3, 2020, 3:20pm UTC](https://community.shotgridsoftware.com/t/substance-painter-integration/9563/1 "2020-08-03T15:20:03Z")

</div>

Hello!  
Im trying to integrate susbtance to my shotgun pipeline with the @Diego_Garcia_Huerta tk-substancepainter but every time when I open substance painter I get this error: “[Plugin - shotgun\_bridge] Shotgun engine | Shotgun Substance Painter Engine connection was lost. Restarting engine…”

And the shotgun button its not available on the shelf

 ![image](https://global.discourse-cdn.com/shotgunsoftware/original/2X/3/3a088558dd8cd5d610c2abaaa3f4f4fae542f2f0.png)

Anyone else got this?  
How I can try to solve ?

Thanks Guys!

---

<div class="post-metadata">

**Author:** ![Dfulton1](https://avatars.discourse-cdn.com/v4/letter/d/3bc359/32.png) [@Dfulton1](https://community.shotgridsoftware.com/u/Dfulton1)\
**Post date:** [August 5, 2020, 4:11pm UTC](https://community.shotgridsoftware.com/t/substance-painter-integration/9563/2 "2020-08-05T16:11:48Z")

</div>

What version of substance painter are you using I had a similar issue with anything above 6.1

---

<div class="post-metadata">

**Author:** ![miguel.oliveira](https://avatars.discourse-cdn.com/v4/letter/m/7ba0ec/32.png) [@miguel.oliveira](https://community.shotgridsoftware.com/u/miguel.oliveira)\
**Post date:** [August 5, 2020, 4:15pm UTC](https://community.shotgridsoftware.com/t/substance-painter-integration/9563/3 "2020-08-05T16:15:47Z")

</div>

I’ve tested in 6.1.1 and 2019.2.1 got same issue

---

<div class="post-metadata">

**Author:** ![Dfulton1](https://avatars.discourse-cdn.com/v4/letter/d/3bc359/32.png) [@Dfulton1](https://community.shotgridsoftware.com/u/Dfulton1)\
**Post date:** [August 5, 2020, 4:24pm UTC](https://community.shotgridsoftware.com/t/substance-painter-integration/9563/4 "2020-08-05T16:24:39Z")

</div>

Are you running the a central or distributed config?

Have you tried reloading the plugins folder?

and also it maybe a firewall issue since it is trying to open a port

---

<div class="post-metadata">

**Author:** ![miguel.oliveira](https://avatars.discourse-cdn.com/v4/letter/m/7ba0ec/32.png) [@miguel.oliveira](https://community.shotgridsoftware.com/u/miguel.oliveira)\
**Post date:** [August 5, 2020, 7:16pm UTC](https://community.shotgridsoftware.com/t/substance-painter-integration/9563/5 "2020-08-05T19:16:18Z")

</div>

we are using Distributed config

> **[Consulado](https://github.com/Consulado)**
>
> Consulado is an award winning animation studio based in São Paulo. - Consulado

hmm, How I can reload the plugins folder? sorry I’m noob

I checked, I’m not using this port anywhere and also Im not bloking it

---

<div class="post-metadata">

**Author:** ![Dfulton1](https://avatars.discourse-cdn.com/v4/letter/d/3bc359/32.png) [@Dfulton1](https://community.shotgridsoftware.com/u/Dfulton1)\
**Post date:** [August 5, 2020, 7:20pm UTC](https://community.shotgridsoftware.com/t/substance-painter-integration/9563/6 "2020-08-05T19:20:32Z")

</div>

![image](https://global.discourse-cdn.com/shotgunsoftware/original/2X/b/b1595564523fa2fd5cdeff196be40edbd1585084.png)

---

<div class="post-metadata">

**Author:** ![Dfulton1](https://avatars.discourse-cdn.com/v4/letter/d/3bc359/32.png) [@Dfulton1](https://community.shotgridsoftware.com/u/Dfulton1)\
**Post date:** [August 5, 2020, 7:21pm UTC](https://community.shotgridsoftware.com/t/substance-painter-integration/9563/7 "2020-08-05T19:21:40Z")

</div>

oh also you need to have the unreal engine framework not sure if you have that up to date

---

<div class="post-metadata">

**Author:** ![Diego\_Garcia\_Huerta](https://sea1.discourse-cdn.com/shotgunsoftware/user_avatar/community.shotgridsoftware.com/diego_garcia_huerta/32/373_2.png) [@Diego\_Garcia\_Huerta](https://community.shotgridsoftware.com/u/Diego_Garcia_Huerta)\
**Post date:** [August 6, 2020, 11:37am UTC](https://community.shotgridsoftware.com/t/substance-painter-integration/9563/8 "2020-08-06T11:37:47Z")

</div>

Hi there,

Just in case, make sure you have the latest version of the engine running, There was a change in the way the versioning system works for Substance Painter (2020.1 became 6.1 automagically!) and the engine had to be updated to cope with it.

[v1.2.2](https://github.com/diegogarciahuerta/tk-substancepainter/releases/tag/v1.2.2)

Check this section, and replace in the yml file the version number.  
[modifying-the-toolkit-configuration-files-to-add-this-engine-and-related-apps](https://github.com/diegogarciahuerta/tk-substancepainter#modifying-the-toolkit-configuration-files-to-add-this-engine-and-related-apps)

After that do not forget to run `tank cache_apps`  
[caching-and-downloading-the-engine-into-disk](https://github.com/diegogarciahuerta/tk-substancepainter#caching-and-downloading-the-engine-into-disk)

As @Dfulton1 has mention the [tk-framework-unrealqt](https://github.com/ue4plugins/tk-framework-unrealqt) is used. This is because PySide is required to run toolkit applications and Substance Painter does have it by default.

I believe as long as you do `tank cache_apps` the required frameworks listed by an engine are downloaded automatically.

Hopefully this solves the issues you are eperiencing.

---

<div class="post-metadata">

**Author:** ![miguel.oliveira](https://avatars.discourse-cdn.com/v4/letter/m/7ba0ec/32.png) [@miguel.oliveira](https://community.shotgridsoftware.com/u/miguel.oliveira)\
**Post date:** [August 13, 2020, 4:32am UTC](https://community.shotgridsoftware.com/t/substance-painter-integration/9563/9 "2020-08-13T04:32:38Z")

</div>

Hello!  
First, thanks @Dfulton1 and @Diego_Garcia_Huerta!

The shotgun button inside substance is showing, but the shotguns tools isnt.

 ![image](https://global.discourse-cdn.com/shotgunsoftware/original/2X/5/5b1c80df5d9afff231038dc17cdd480f0c648387.png)  
Actually I don’t know the proper workflow with the integration, but, How I publish the substance files?

I also attached the TkSubstance log [tk-substancepainter.log](https://community.shotgridsoftware.com/uploads/short-url/yAIpHSA3fSHolheqdDYNlSim7Sp.log) (28.4 KB) .

Thanks guys!

---

<div class="post-metadata">

**Author:** ![Diego\_Garcia\_Huerta](https://sea1.discourse-cdn.com/shotgunsoftware/user_avatar/community.shotgridsoftware.com/diego_garcia_huerta/32/373_2.png) [@Diego\_Garcia\_Huerta](https://community.shotgridsoftware.com/u/Diego_Garcia_Huerta)\
**Post date:** [August 15, 2020, 10:28am UTC](https://community.shotgridsoftware.com/t/substance-painter-integration/9563/10 "2020-08-15T10:28:32Z")

</div>

That menu shows as if the YAML configuration files have not been merged into your shotgun configuration YAML files.

Could you confirm you followed the steps to add the tk-apps:  
[modifying-the-toolkit-configuration-files-to-add-this-engine-and-related-apps](https://github.com/diegogarciahuerta/tk-substancepainter#modifying-the-toolkit-configuration-files-to-add-this-engine-and-related-apps)

`These yaml files provided should be merged with the original ones as they won't work on their own.`

You should merge the contents of YAML file from:  
[configuration files](https://github.com/diegogarciahuerta/tk-substancepainter/tree/master/config)  
into the ones from your shotgun environment configuration.

You can read more about shotgun environment configuration here:  
[Environment+Configuration+Reference](https://developer.shotgunsoftware.com/487a9f2c/?title=Environment+Configuration+Reference)

Once that is done you should see the tk-apps apearing in the menus.

_Workflow_  
To start working within shotgun , you would normally go to Shotgun Icon -\> File Open -\> Choose your asset -\> Choose your task -\> click “New File”  
This sets the context to the asset you have chosen. After that you can start a new project within substance painter.  
You should be able to save your file with Shotgun Icon -\> File Save  
And you will be able to publish your substance painter session and textures, with Shotgun Icon -\> Publish

Cheers

- Diego

---

<div class="post-metadata">

**Author:** ![Alefeve](https://avatars.discourse-cdn.com/v4/letter/a/a88e57/32.png) [@Alefeve](https://community.shotgridsoftware.com/u/Alefeve)\
**Post date:** [August 17, 2020, 10:25am UTC](https://community.shotgridsoftware.com/t/substance-painter-integration/9563/11 "2020-08-17T10:25:17Z")

</div>

Just for information, it’s now possible to use directly the Painter Python API and the Qt embedded in Painter 6.2.0 so the tk engine for Painter can be made much simpler, without any need for a separate server. Diego’s engine is a very good base to do this ;).

---

<div class="post-metadata">

**Author:** ![Diego\_Garcia\_Huerta](https://sea1.discourse-cdn.com/shotgunsoftware/user_avatar/community.shotgridsoftware.com/diego_garcia_huerta/32/373_2.png) [@Diego\_Garcia\_Huerta](https://community.shotgridsoftware.com/u/Diego_Garcia_Huerta)\
**Post date:** [August 17, 2020, 10:47am UTC](https://community.shotgridsoftware.com/t/substance-painter-integration/9563/12 "2020-08-17T10:47:02Z")

</div>

Yeah it will be way simpler. I actually have a prototype for this (I was too excited not to try when it came out), but unfortunately the python API has not catch up with the qml API yet, so I could not get all the features that are needed… Said this, they are adding more and more vey quickly, so I imagine it won’t be long until we have parity between both APIs.  
@Alefeve Have you tried the python API already ? if so, what is your experience with it ?

---

<div class="post-metadata">

**Author:** ![Alefeve](https://avatars.discourse-cdn.com/v4/letter/a/a88e57/32.png) [@Alefeve](https://community.shotgridsoftware.com/u/Alefeve)\
**Post date:** [August 18, 2020, 2:26pm UTC](https://community.shotgridsoftware.com/t/substance-painter-integration/9563/13 "2020-08-18T14:26:51Z")

</div>

We did the simplification, yes, and it went well, but we just have the very simple operations like open and save for the Painter project, no management of the exports yet.

---

<div class="post-metadata">

**Author:** ![jrapczak](https://sea1.discourse-cdn.com/shotgunsoftware/user_avatar/community.shotgridsoftware.com/jrapczak/32/3704_2.png) [@jrapczak](https://community.shotgridsoftware.com/u/jrapczak)\
**Post date:** [July 2, 2021, 7:02pm UTC](https://community.shotgridsoftware.com/t/substance-painter-integration/9563/17 "2021-07-02T19:02:56Z")

</div>

Hey all,

Any recent work on Substance Painter toolkit? It’s a key part of our pipeline so we’re trying to figure out how to get everything working with recent releases.

Jesse

---

<div class="post-metadata">

**Author:** ![mmoshev](https://sea1.discourse-cdn.com/shotgunsoftware/user_avatar/community.shotgridsoftware.com/mmoshev/32/476_2.png) [@mmoshev](https://community.shotgridsoftware.com/u/mmoshev)\
**Post date:** [July 6, 2021, 12:59pm UTC](https://community.shotgridsoftware.com/t/substance-painter-integration/9563/18 "2021-07-06T12:59:08Z")

</div>

We have submitted a [PR on github](https://github.com/diegogarciahuerta/tk-substancepainter/pull/15) making the engine compatible with Python 3.  
Diego has not responded on it yet, but I think it will be beneficial to get more eyes on it anyway. If you’d like to give it a spin…  
Edit: so far we tested with 2020.2.2.

---

<div class="post-metadata">

**Author:** ![jrapczak](https://sea1.discourse-cdn.com/shotgunsoftware/user_avatar/community.shotgridsoftware.com/jrapczak/32/3704_2.png) [@jrapczak](https://community.shotgridsoftware.com/u/jrapczak)\
**Post date:** [July 7, 2021, 8:24am UTC](https://community.shotgridsoftware.com/t/substance-painter-integration/9563/19 "2021-07-07T08:24:00Z")

</div>

Awesome, thanks! We’ll take a look 🙂

---

<div class="post-metadata">

**Author:** ![jrapczak](https://sea1.discourse-cdn.com/shotgunsoftware/user_avatar/community.shotgridsoftware.com/jrapczak/32/3704_2.png) [@jrapczak](https://community.shotgridsoftware.com/u/jrapczak)\
**Post date:** [August 11, 2021, 10:14am UTC](https://community.shotgridsoftware.com/t/substance-painter-integration/9563/20 "2021-08-11T10:14:42Z")

</div>

Btw the script path for Substance has changed, it is now \Documents\Adobe\Adobe Substance 3D Painter\plugins

---

<div class="post-metadata">

**Author:** ![andreascalleja](https://avatars.discourse-cdn.com/v4/letter/a/f9ae1b/32.png) [@andreascalleja](https://community.shotgridsoftware.com/u/andreascalleja)\
**Post date:** [March 10, 2023, 4:21pm UTC](https://community.shotgridsoftware.com/t/substance-painter-integration/9563/21 "2023-03-10T16:21:37Z")

</div>

I know this is from a long time ago, but has anyone tried converting the engine to use the Python API. Is it worth giving a go?

---

<div class="post-metadata">

**Author:** ![mmoshev](https://sea1.discourse-cdn.com/shotgunsoftware/user_avatar/community.shotgridsoftware.com/mmoshev/32/476_2.png) [@mmoshev](https://community.shotgridsoftware.com/u/mmoshev)\
**Post date:** [March 10, 2023, 5:24pm UTC](https://community.shotgridsoftware.com/t/substance-painter-integration/9563/22 "2023-03-10T17:24:40Z")

</div>

Seems like it would be a lot more straightforward. We haven’t tried it yet.  
It might be a weekend project, I don’t really know the surface of this plugin.

---

<div class="post-metadata">

**Author:** ![Ricardo\_Musch](https://sea1.discourse-cdn.com/shotgunsoftware/user_avatar/community.shotgridsoftware.com/ricardo_musch/32/405_2.png) [@Ricardo\_Musch](https://community.shotgridsoftware.com/u/Ricardo_Musch)\
**Post date:** [March 12, 2023, 10:29pm UTC](https://community.shotgridsoftware.com/t/substance-painter-integration/9563/23 "2023-03-12T22:29:22Z")

</div>

We have been looking into this and trying but I think we came to the conclusion there are a few things missing in the Substance Python API.

I can ask what it was we ran into, this was pretty recent.

[Next page](https://community.shotgridsoftware.com/t/substance-painter-integration/9563.md?page=2)
