Author Topic: Substance Plugin 4.21.0.31 Released  (Read 4325 times)

Overview:
This is a compatibility release for UE4.21.0

Download Link:
https://drive.google.com/open?id=11vQ6fLDr4Nwxe_Pcp8-rh-tc7_3NZFrq

Notes:
This update is now available through the UE4 Marketplace. Alternatively, the most recent version of the Substance in UE4 plugin source can be downloaded from the link above.

Hi

Is there any chance I could download that plugin but also built for Linux ( CentOS 7.xx) please ?
From what I can see in Binaries folder there is only Windows version there from the downloaded Drive version ...

thanks

djczaps


These releases will build fine on Linux (Ubuntu). Just put it in your Engine's Plugins/Runtime folder

@Josh Green We are automating the Linux build with ue4-docker and ue4cli, and would like to contribute back the code if possible. Is there a place to do that? I know you used to do an Unreal fork on GitHub to distribute Linux sources, but you seemed to have moved away from that.

https://youtu.be/Eycq-v_BCdw

Here is a video showing what I am talking about. 
Basically I am trying to download materials into my UE4 project but I cannot see what any of the look like since when it tries to load the previews it only displays a white image of empty blankness.

What do I do?

Thanks in advance for any advice! :)

https://youtu.be/Eycq-v_BCdw

Here is a video showing what I am talking about. 
Basically I am trying to download materials into my UE4 project but I cannot see what any of the look like since when it tries to load the previews it only displays a white image of empty blankness.

What do I do?

Thanks in advance for any advice! :)

Hey @garretttru ,

This is a known issue that was fixed in the 4.21 release. Just to confirm, what version of UE4 are you using?
Integrations QA Analyst

Hey,

Thanks for the 4.21 release! This mostly works however, when building from source with clean intermediate files I am getting a number of compilation errors, it appears that these errors are related to missing include files, perhaps from the move to ICWYU mode?

See below for a list of files which are missing includes.

Runtime/Substance/Source/SubstanceCore/Private/SubstanceCallbacks.h
- #include "CoreMinimal.h" is missing for the TArray

Runtime/Substance/Source/SubstanceCore/Private/SubstanceCoreCustomVersion.cpp
- #include "Serialization/CustomVersion.h" is missing for the FCustomVersionRegistration

Runtime/Substance/Source/SubstanceCore/Private/SubstanceCoreCustomVersion.h
- #include "Misc/Guid.h" is missing for the FGuid

Runtime/Substance/Source/SubstanceCore/Private/SubstanceCoreHelpers.cpp
- SubstanceCorePrivatePCH.h and SubstanceCoreHelpers.h order needs to be swapped as a work around to the problems in SubstanceCoreHelpers.h
- #include "RenderUtils.h" is missing for the GPixel variable

Runtime/Substance/Source/SubstanceCore/Private/SubstanceGraphInstance.cpp
- #include "AssetToolsModule.h" is missing for the FAssetToolsModule reference

Runtime/Substance/Source/SubstanceCore/Private/SubstanceImageInput.cpp
- #include "HAL/FileManager.h" is missing for the IFileManager reference

Runtime/Substance/Source/SubstanceCore/Private/SubstanceStructuresSerialization.h
- #include "CoreMinimal.h" is missing for the FArchive reference

Runtime/Substance/Source/SubstanceCore/Private/SubstanceTexture2D.cpp
- #include "RenderUtils.h" is missing for the GPixel variable

Runtime/Substance/Source/SubstanceCore/Public/SubstanceCoreHelpers.h
- #include "CoreMinimal.h" is missing for the TMap reference (and others)
- #include "PixelFormat.h" is missing for the EPixelFormat reference
- class UMaterial; is missing as a forward declaration
- class UMaterialInstance; is missing as a forward declaration
- This header relies on SUBSTANCE_FRAMEWORK_INCLUDED being defined before its inclusion, this is currently only defined in the PCH, this means that the include order in SubstanceCoreHelpers.cpp cannot satisfy ICWYU requirements

Runtime/Substance/Source/SubstanceCore/SubstanceCore.Build.cs
- bEnforceIWYU needs to be disabled in order to work around the problem with SubstanceCoreHelpers.cpp

Cheers!

There are some more missing includes when performing a non-unity build, it would be great if you could add the testing of clean rebuilds and non-unity testing to your build process.

Plugins/Runtime/Substance/Include/substance/source/iattachment.h
- #include "substance/source/typedefs.h" is missing

Plugins/Runtime/Substance/Include/substance/source/memory.h
- #include <assert.h> is missing

Plugins/Runtime/Substance/Include/substance/source/typedefs.h
#include "substance/source/memory.h" is missing

Plugins/Runtime/Substance/Source/SubstanceCore/Public/SubstanceCoreHelpers.h
- Due to #ifdef SUBSTANCE_FRAMEWORK_INCLUDED only being defined in the PCH any includes within that block are not correctly included

Plugins/Runtime/Substance/Source/SubstanceEditor/Classes/ReimportSubstanceImageInputFactory.h
- #include "EditorReimportHandler.h" is missing

Plugins/Runtime/Substance/Source/SubstanceEditor/Private/AssetTypeActions_SubstanceImageInput.h
- #include "SubstanceImageInput.h" is missing

Plugins/Runtime/Substance/Source/SubstanceEditor/Private/AssetTypeActions_SubstanceInstanceFactory.h
- These are all missing
#include "AssetTypeActions_Base.h"
#include "SubstanceInstanceFactory.h"

namespace SubstanceAir
{
   struct GraphDesc;
}

Plugins/Runtime/Substance/Source/SubstanceEditor/Private/AssetTypeActions_SubstanceTexture2D.h
- #include "Classes/SubstanceTexture2D.h" is missing

Plugins/Runtime/Substance/Source/SubstanceEditor/Private/SSubstanceEditorPanel.h
- #include "ISubstanceEditor.h" is missing

Plugins/Runtime/Substance/Source/SubstanceEditor/Private/SubstanceOptionWindow.cpp
- #include "Widgets/Layout/SSeparator.h" is missing

Plugins/Runtime/Substance/Source/SubstanceSource/Private/SubstanceToolkit.cpp
- #include "Colors/SColorBlock.h" is missing

Plugins/Runtime/Substance/Source/SubstanceSource/Private/SubstanceToolkit.h
- #include "substance/source/asset.h" is missing

Hello,

When I try to import a sbsar from network location, the name of the material does not carry over to UE4.
I really don't want to copy past names, as I plan to import multiple sbsar materials.

Please advise and note that I have the latest plugin available and am on UE4 V 4.21.2.
Please also note that I did both downloaded from Market and when that did not work I
installed in runtime folder as per instructions:
C:\Program Files\Epic Games\UE_4.21\Engine\Plugins\Runtime

I really would like the names to carry over since I want to import over 100 materials all at once.
Please see attached.

Thanks!