• Global community
    • Language:
      • Deutsch
      • English
      • Español
      • Français
      • Português
  • 日本語コミュニティ
    Dedicated community for Japanese speakers
  • 한국 커뮤니티
    Dedicated community for Korean speakers
Exit
1

Newly revamped Substance 3D plugin for Unity

Adobe Employee ,
Mar 09, 2022 Mar 09, 2022

Copy link to clipboard

Copied

Hi everyone!

We are excited to announce that we've released a soft launch of the newly revamped Substance 3D plugin for Unity. The plugin lets users load, apply, and tweak Substance 3D parametric materials directly in Unity.

If you're interested in testing out the plugin, you can download it directly from the Unity asset store: Substance 3D in Unity.

Stay tuned for the official release.

If you have questions or comments, please reach out to us here. Thanks!

TOPICS
Discussion , Unity

Views

6.8K

Translate

Translate

Report

Report
Community guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
community guidelines
Community Beginner ,
Oct 26, 2022 Oct 26, 2022

Copy link to clipboard

Copied

Thank you, wouldn't be bad if the process of migration was somewhere in the documentation. I believe a lot of studios are still shipping with 2019 LTS and will need the migration steps sooner or later.

Votes

Translate

Translate

Report

Report
Community guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
community guidelines
Participant ,
Oct 26, 2022 Oct 26, 2022

Copy link to clipboard

Copied

After looking into this for some time, it doesn't seem like there is a way to migrate projects from older versions to a new ones. We will try our best to avoid these types of changes going forward that might not provide a smooth way to migrate from one version to another. 

 

Did you have any luck with trying a solution that was posted on the discord channel? 

 

Votes

Translate

Translate

Report

Report
Community guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
community guidelines
Community Beginner ,
Oct 27, 2022 Oct 27, 2022

Copy link to clipboard

Copied

Someone has suggested saving the material presets and load them back in the new plugin. Not sur how to do this though.

Votes

Translate

Translate

Report

Report
Community guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
community guidelines
Community Beginner ,
Oct 27, 2022 Oct 27, 2022

Copy link to clipboard

Copied

Hey @baliv ,
BM_Cregs is me on Discord.  If you follow the discussion we're having over there with "m_dev" you might get some better insight on how to follow the process I've discribed.  But if you have any question jump onto discord and maybe I can help you out.  I'm just trying to find work arounds to make this migration possible since the plugin doesn't work yet like it should.

Votes

Translate

Translate

Report

Report
Community guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
community guidelines
Participant ,
Oct 27, 2022 Oct 27, 2022

Copy link to clipboard

Copied

@baliv, You will be able to export presets from your materials and then use those presets to configure the inputs in the updated project. However, I believe there is nothing you can do about changing the material references in the scene.

We'll investigate this further into how we can resolve the issue with upgrading. That said, it will take some time to come up with a solution for this. 

 
 

Votes

Translate

Translate

Report

Report
Community guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
community guidelines
Community Beginner ,
Oct 27, 2022 Oct 27, 2022

Copy link to clipboard

Copied

I apparently see the process clearer following the discord answers, although we'd loose all material links. So while I'm not ready to create a migration script we'll probably stick with the 2.6 version while it's workable. 

Votes

Translate

Translate

Report

Report
Community guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
community guidelines
Participant ,
Oct 27, 2022 Oct 27, 2022

Copy link to clipboard

Copied

Sorry to hear that you'll not be able to upgrade to the latest version. We'll investigate further into how we can provide a way to update from the older versions to the new one smoothly. 

Votes

Translate

Translate

Report

Report
Community guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
community guidelines
Community Beginner ,
Dec 07, 2022 Dec 07, 2022

Copy link to clipboard

Copied

I'm starting to see a nasty issue with the plugin using 2021.3.15f1. I'm noticing that there are certain .sbsar materials that outright cause the entire editor to crash with no error report or messages. I can't find any rhyme or reason, and the materials that I'm importing have worked in the past, and can be opened in substnace designer and player without issue. I've tried updating the source .sbs files and re-exporting with the latest substance version, but that doesn't seem to make a difference.

Votes

Translate

Translate

Report

Report
Community guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
community guidelines
Community Beginner ,
Dec 07, 2022 Dec 07, 2022

Copy link to clipboard

Copied

To follow up with some findings;

- I've isolated one material in particular that is troublesome, and attempted to load it into the editor. The first attempt outright crashes the editor after attempting to import. It's able to half-create the plugin files before the editor dies. If I let those files remain and attempt to reopen the editor, I can open the editor this time, but I get this error when I click on the substance, and I the inspector screen is empty:

NullReferenceException: Object reference not set to an instance of an object
Adobe.SubstanceEditor.SubstanceEditorEngine.InitializeInstance (Adobe.Substance.SubstanceGraphSO substanceInstance, System.String instancePath) (at Assets/Adobe/Substance3DForUnity/Editor/Scripts/SubstanceEditorEngine.cs:343)
Adobe.SubstanceEditor.SubstanceGraphSOEditor.OnEnable () (at Assets/Adobe/Substance3DForUnity/Editor/Scripts/SubstanceGraphSOEditor.cs:85)
UnityEditor.Editor:CreateEditor(Object)
Adobe.SubstanceEditor.Importer.SubstanceImporterEditor:DrawSelectedInstanceProperties(SubstanceGraphSO) (at Assets/Adobe/Substance3DForUnity/Editor/Scripts/Importer/SubstanceImporterEditor.cs:324)
Adobe.SubstanceEditor.Importer.SubstanceImporterEditor:DrawMainUI() (at Assets/Adobe/Substance3DForUnity/Editor/Scripts/Importer/SubstanceImporterEditor.cs:151)
Adobe.SubstanceEditor.Importer.SubstanceImporterEditor:OnInspectorGUI() (at Assets/Adobe/Substance3DForUnity/Editor/Scripts/Importer/SubstanceImporterEditor.cs:127)
UnityEngine.GUIUtility:ProcessEvent(Int32, IntPtr, Boolean&) (at /Users/bokken/buildslave/unity/build/Modules/IMGUI/GUIUtility.cs:189)

- I attempted to walk back the editor to 2021.3.6f1 (Mid-july 2022), and this exact issue persists. Given that I'm using unchanged substances and the editor that was previously working, the only variable here is the latest subtance 3.4.0 version.

- Comparing the problematic material with one that works, there is no palpable difference between them. They all use the same input types (int2, int, float, bool). The problematic one even has fewer inputs than another that works fine.

- Opening up the Unity Editor.log doesn't even show a palpable error. When the editor crashes and I have full editor logs turned on, it looks like the crash happens halfway through importing the problematic material:

Registering precompiled user dll's ...
Registered in 0.001453 seconds.
Start importing ProjectSettings/ProjectSettings.asset using Guid(00000000000000004000000000000000) Importer(-1,00000000000000000000000000000000)  -> (artifact id: '38a39000ec82f1f2a41f747cc34ec812') in 0.001933 seconds 
Start importing Assets/LayeredIcyCliff_graph_0 using Guid(26c851950bfb74e5590d960cc6fb26bc) Importer(-1,00000000000000000000000000000000)

 

Votes

Translate

Translate

Report

Report
Community guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
community guidelines
Community Beginner ,
Dec 07, 2022 Dec 07, 2022

Copy link to clipboard

Copied

Root Cause: The Voronoi Fractal Node! A note from the node description itself:

Generates a fractal 3D Voronoi noise mapped to a 2D image using a Z-down orthographic projection.

Note
This noise is meant to be used with the GPU engine only (i.e., Direct3D or OpenGL). Go to Tools > Switch engine... or press the F9 key to select the desired engine.

After removing the occurence of this node I was able to get the plugin to load my material in Unity. I suspect it has something to do with the GPU engine requirement. What confuses me about this though is that the node seemed to work in previous versions of the plugin. Is this a regression, or was a change made to disable this? If it's purposeful, it would be useful if it could at least be gracefully handled and an error could be displayed in the editor to alert users that the material isn't compatable. Thanks!

Votes

Translate

Translate

Report

Report
Community guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
community guidelines
Adobe Employee ,
Dec 09, 2022 Dec 09, 2022

Copy link to clipboard

Copied

Hi @andrew22696707bn0e , sorry to hear about this editor crash! Could you provide some info as to how the Voronoi Fractal node is being used in your graph? And are there any steps taken in the editor that can reproduce the crash? You should be able to attach screenshots here. In a quick test on my end it looks like simply having the node connected to base color and exposing the Distortion Intensity isn't enough to triggering the editor crash in 2021.3, so it would be great to have the additional info to be able to reproduce this. If possible, could you attach the sbs as well?

Votes

Translate

Translate

Report

Report
Community guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
community guidelines
Community Beginner ,
Dec 10, 2022 Dec 10, 2022

Copy link to clipboard

Copied

Certainly! I'm using the Chebychev distance node on teh voronoi fractal with an Add blend node and non-square expansion set to true. I hook that into a blend and later a few histograms with sliders exposed. I've attatched an sbs and sbsar of the substance that can minimally reproduct this issue for me. To get the crash to occur, I only have to open up a project in Unity (with latest substance plugin installed) and import the .sbsar.

If it's possibly a hardware issue, my specs are:

2.9 GHz i9

32GB ram

Radeon Pro Vega 20 4GB

macOS Monterey version 12.6

I've exported the sbsar from the steam edition of Substance designer version 12.3.1 and imported the substance into Unity version 2021.3.15f1

 

Hopefully this helps!

Votes

Translate

Translate

Report

Report
Community guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
community guidelines
New Here ,
Dec 13, 2022 Dec 13, 2022

Copy link to clipboard

Copied

Are you going to support terrain material generation? Right now it's pretty much impossible to use substances with terrain.

 

The main problem is that Unity expects the height data to be in the blue channel of the mask file instead of a separate file. Manually copying the height data to the blue channel of the mask for each output material is a complete pain and not even worth considering if you're working with more than a few of them.

 

Ideally changing the shader to the HDRP/URP terrain shader in the substance graph would generate this output configuration, but if you do that currently there simply is no output at all.

Votes

Translate

Translate

Report

Report
Community guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
community guidelines
Adobe Employee ,
Jan 17, 2023 Jan 17, 2023

Copy link to clipboard

Copied

Hi,

We are currently not planning to add support for terrain material generation. Could you provide more information about your use case and how critical this feature is for it? 

Thanks!

Votes

Translate

Translate

Report

Report
Community guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
community guidelines
New Here ,
Feb 06, 2023 Feb 06, 2023

Copy link to clipboard

Copied

image.png

 

Material previews in the graph editor are busted in the latest release when Probe Volumes are enabled.

Votes

Translate

Translate

Report

Report
Community guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
community guidelines
Adobe Employee ,
Feb 07, 2023 Feb 07, 2023

Copy link to clipboard

Copied

Hi @ebaender , thanks for reporting this. I can reproduce the blank material preview in the inspector after enabling Probe Volumes in the HDRP Global Settings. We'll track this as a new bug. Since Probe Volumes are an experimental settings things may brake as it develops, but we will be keeping an eye on this.

Votes

Translate

Translate

Report

Report
Community guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
community guidelines
Adobe Employee ,
Dec 15, 2023 Dec 15, 2023

Copy link to clipboard

Copied

LATEST

@ebaender: I just wanted to check if you're still encountering this issue.

Votes

Translate

Translate

Report

Report
Community guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
community guidelines
New Here ,
Mar 02, 2023 Mar 02, 2023

Copy link to clipboard

Copied

The plugin is completely unusable in the 2021.3 and 2022.2 editor as of version 3.5.0. Every time you close the project after importing the plugin all of your substances will be broken and not display any of their graphs the next time you open the project again.

 

Unexpected recursive transfer of scripted class. 'Adobe.SubstanceEditor.Importer.SubstanceImporter' is being transferred while trying to transfer 'graph_0'

SubstanceException: The operation failed to complete
Adobe.Substance.SubstanceNativeGraph.ApplyPreset (System.String presetXML) (at Assets/Adobe/Substance3DForUnity/Runtime/Scripts/SubstanceNativeGraph.cs:145)
Adobe.SubstanceEditor.SubstanceEditorEngine.SetStateFromSerializedData (Adobe.Substance.SubstanceGraphSO substanceInstance, System.String data) (at Assets/Adobe/Substance3DForUnity/Editor/Scripts/SubstanceEditorEngine.cs:419)
Adobe.SubstanceEditor.EditorTools.UpdateSubstanceInstance (Adobe.Substance.SubstanceGraphSO instanceAsset, Adobe.Substance.SubstanceFileRawData newFileData) (at Assets/Adobe/Substance3DForUnity/Editor/Scripts/Utilities/EditorTools.cs:44)
Adobe.SubstanceEditor.Importer.SubstanceImporter.UpdateSubstanceFile (UnityEditor.AssetImporters.AssetImportContext ctx) (at Assets/Adobe/Substance3DForUnity/Editor/Scripts/Importer/SubstanceImporter.cs:215)
Adobe.SubstanceEditor.Importer.SubstanceImporter.OnImportAsset (UnityEditor.AssetImporters.AssetImportContext ctx) (at Assets/Adobe/Substance3DForUnity/Editor/Scripts/Importer/SubstanceImporter.cs:164)
UnityEditor.AssetImporters.ScriptedImporter.GenerateAssetData (UnityEditor.AssetImporters.AssetImportContext ctx) (at <7fef092428a04dc89d2aa6ad3ce5d856>:0)

 

 

Votes

Translate

Translate

Report

Report
Community guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
community guidelines
Adobe Employee ,
Mar 02, 2023 Mar 02, 2023

Copy link to clipboard

Copied

Hi, What platform are you using and could you share the SBSAR file that you are using? 


Votes

Translate

Translate

Report

Report
Community guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
community guidelines
Adobe Employee ,
May 05, 2023 May 05, 2023

Copy link to clipboard

Copied

Hi, this issue has been fixed in v3.6. Please update the plugin to get the latest build. 

 

You can download the plugin from the Unity asset store here: https://assetstore.unity.com/packages/tools/utilities/substance-3d-for-unity-213208#reviews 

Votes

Translate

Translate

Report

Report
Community guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
community guidelines
New Here ,
Sep 18, 2023 Sep 18, 2023

Copy link to clipboard

Copied

hello and welcome back to unity 
This is David from Amplify Shader Editor support and i like to ask if you wish to regain support for your asset 
please recah out to me when your ready. 

cheers 
David amplify support 


Votes

Translate

Translate

Report

Report
Community guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
community guidelines
Adobe Employee ,
Oct 02, 2023 Oct 02, 2023

Copy link to clipboard

Copied

Hi David,

What do you mean by "regaining support"? Some of our team members are no longer with Adobe, so it would be helpful to get some context here.

Votes

Translate

Translate

Report

Report
Community guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
community guidelines
New Here ,
Oct 06, 2023 Oct 06, 2023

Copy link to clipboard

Copied

It says on update 3.9.0: "Fixed an issue where the Unity plugin was not functional on Android."
But the update is still not functional on Android for me.
I get this error still. (Which is the exact same error I got before Android was "Fixed".)

Error:

AndroidPlayer "samsung_SM-N960U" A scripted object (probably Adobe.Substance.SubstanceGraphSO?) has a different serialization layout when loading. (Read 1552 bytes but expected 7628 bytes)
Did you #ifdef UNITY_EDITOR a section of your serialized properties in any of your scripts?"

 

I've tried various things like disabling libsubstance_linker.so.9 plugin because it complained about that when building for Android, as well as other similar plugins. No luck. Still busted no matter what I do. No documentation saying any other special steps are required to make it work on Android.

 

Votes

Translate

Translate

Report

Report
Community guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
community guidelines
Resources
Documentation
Download Latest Versions