Jump to content
Sign in to follow this  
Sensual Lettuce

Pro Builder crashes with Substances in Unity 4.5.3

Recommended Posts

Hello,

 

I have encountered a bug that will crash Unity3d 4.5.3.

 

1. Pro builder

 

2. 3D models created with Pro builder will crash if a 'Substance' is textured to it. (A substance is a material that can be very customized to create a lot of variation). This problem only exists in Unity 4.5.3, this problem does not exist in Unity 4.5.2 or earlier.
Substances are: https://www.assetstore.unity3d.com/en/#!/content/2337 http://www.allegorithmic.com/products/substance-full-database

 

3. I am currently using Unity3d 4.5.3 Pro. I am running Windows 7. The latest version of ProCore Bundle version 1.0.3 (released July 07, 2014).

 

4. This problem only exists in the latest version of Unity (4.5.3) because Unity3d added more fixes and additional support for Substances (ctrl+f "substances") http://unity3d.com/unity/whats-new/unity-4.5.3. Substance files are like materials but instead of the .mat extension, it has a .sbsar extension.

 

5. To recreate the problem: Create a procore object. Attach the texture (.sbsar) to the object. Change any other scene. Exit unity3d. Open up unity3d. Go to the scene with .sbsar and the crash will happen.
 

There are a few free .sbsar files from the Publisher: https://www.assetstore.unity3d.com/en/#!/content/1352 so you can test the problem.

 

 

6. the exact error message is

"Fatel error!

GetManagerFromContext: pointer to object of

manager 'RenderSettings' is NULL (table index 18)

UnityEditor.DockArea:OnGUI()"

Then it has a button to press "Quit" this error happens on just telling Unity3d to change scenes.

Share this post


Link to post
Share on other sites

I'm using the latest version of Unity and currently PB beta but previously the standard PB release, we don't use standard textures in our project only substances and we have had no problems what so ever, are you trying to drag the substance onto the pb_object or using the UV Editor?

Share this post


Link to post
Share on other sites

I'm able to reproduce this crash, but only when Unity directly opens to a Scene with a ProBuilder + Substance object.  If I open to an empty scene then switch the ProBuilder scene, it seems to load okay.  Does this also work for you?

Share this post


Link to post
Share on other sites

We use Substance designer and create all our own substances, as far as I am aware we have never used the database.

 

I seem to remembers something about having to enable tessellation shaders for our substances to work correctly.....
 

The Tessellation Shaders must be imported. They are situated in "Standard packages". So you have to import them by clicking with the right mouse button on the Project page --> Import Package --> Tessellation Shaders (DX11).
 
First of all you must enable the DirectX 11 option in Edit --> Project Settings --> Player and then in the menu that appears click on Other Settings and finally click on Use Direct3D 11. 

Share this post


Link to post
Share on other sites

Hello Boldee,

I am using DirectX 9 however I do plan on using DirectX 11. I don't think I'm using any Tessellation Shaders as I don't think the Substance Database uses tessellation? My current database substances are located in their own folder (not plugins or standard packages). I will upgrade my project to DirectX 11 and give it a try.

Share this post


Link to post
Share on other sites

Well at least we have eliminated that as a possible issue, I just have substances in a folder in my project called textures. I will ask our substance creator to see if he can help solve your problem.

Share this post


Link to post
Share on other sites

Boldee contacted me regarding this, and I can confirm that this crash occurs in Unity 4.5.3.

I also tried creating a new PB object and applying various Substances then saving the Scene. Trying to load every scene I have that has a PB object plus a substance crashes every time with the message as quoted in the OP. I also used the primitives built into Unity to see if the issue is with the Substance files but they all worked as intended.

 

In the previous version of Unity I have installed (4.5.2) the crash does not occur.

 


I seem to remembers something about having to enable tessellation shaders for our substances to work correctly.....

 

As for the Tessellation shaders, I suggested to enable them so that tessellation I put into some of the substances worked as intended - in DirectX 9 they'd use Parallax mapping. I think we can discount this as a cause of the issue.

Share this post


Link to post
Share on other sites

Hello,

Thank you both for chiming in and confirming that the problem also exists on your end. Does the problem also exist with the Substance Designer (created substances)? Or does it only exist with the Substance Database when you use Pb_Objects? Thank you.

Share this post


Link to post
Share on other sites

Hello,

Thank you both for chiming in and confirming that the problem also exists on your end. Does the problem also exist with the Substance Designer (created substances)? Or does it only exist with the Substance Database when you use Pb_Objects? Thank you.

 

I tried using various freely available substances from online sources and using substances I had created myself.

I don't think substances are the cause of the bug and we need to look elsewhere.

Share this post


Link to post
Share on other sites

Hello everyone, 

I think Unity3d team may have fixed the problem. Here are their patch notes for their beta versions: http://forum.unity3d.com/threads/unity-patch-releases.246198/#post-1734940. 

If you take a look at the patch note 4.5.3p2 that is posted on August 20th (currently the latest post). One of the fixes is:

  • (625893) - Substance: Fixed crash when loading a scene with an object that has a script with a ProceduralMaterial assigned to a Material property.

I have yet to try it, but it seems like this would be the fix. As when the scene is loading, Unity3d crashes. I will update everyone soon.

Share this post


Link to post
Share on other sites

Hello everyone, 

I think Unity3d team may have fixed the problem. Here are their patch notes for their beta versions: http://forum.unity3d.com/threads/unity-patch-releases.246198/#post-1734940. 

If you take a look at the patch note 4.5.3p2 that is posted on August 20th (currently the latest post). One of the fixes is:

  • (625893) - Substance: Fixed crash when loading a scene with an object that has a script with a ProceduralMaterial assigned to a Material property.

I have yet to try it, but it seems like this would be the fix. As when the scene is loading, Unity3d crashes. I will update everyone soon.

 

 

Cool!  I just double checked on my 4.3 install and can confirm that it's not happening anymore.

Share this post


Link to post
Share on other sites

Please sign in to comment

You will be able to leave a comment after signing in



Sign In Now
Sign in to follow this  

×