View Issue Details

IDProjectCategoryView StatusLast Update
0001531NoesisGUIUnity3Dpublic2021-07-27 20:05
Reporterstonstad Assigned Tojsantos  
PrioritynormalSeverityminorReproducibilityalways
Status resolvedResolutionfixed 
Product Version2.2.3 
Target Version3.1Fixed in Version3.1.0 
Summary0001531: Noesis Premultiply Alpha Texture Import Setting Ignored by Noesis
DescriptionWhen the \library folder is deleted ... or new files are checked out from SCM ... Noesis does not apply the premultiply alpha texture transformation specified in import settings until the import UI for that specific image is flagged dirty and changes are applied. See enclosed screenshots

1) image is configured with sRGB and Noesis Premultiplied Alpha is requested.
2) See runtime use of image. Image does not have alpha premultiplied.

This is an issue for projects with several hundred images. Every time I checkout from SCM I have to change a setting on an image to make the UI dirty, and then apply changes so that Noesis premultiplied alpha is applied. I have 690 images spread across multiple directories. This is not fun! :( I can confirm .meta metadata is stored in SCM, and that Noesis is not detecting or applying the change on initial project load. Maybe I'm doing something wrong...?


Steps To Reproduce1) Import Image
2) Request Noesis Premultiplied Alpha
3) Use Image in Scene with Noesis Image UserControl. Confirm Premultiplied Alpha is applied.
3) Close Unity
4) Delete \Library
5) Reopen Unity.
6) Restart Scene. Premultiplied Alpha is lost but setting is still assigned.
TagsNo tags attached.
PlatformAny

Activities

jsantos

jsantos

2019-08-08 17:18

manager   ~0005916

Last edited: 2019-08-08 17:18

I think we are hitting another Unity bug. If you go to NoesisPostprocessor.cs you can find

if (AssetDatabase.GetLabels(assetImporter).Contains("Noesis") || assetPath.StartsWith("Assets/NoesisGUI/Samples"))

So, probably, the GetLabel is not working at that point. If you read the comment above that line you will see that we already experimented weird behaviors.

Not sure, how to overcome this, but we will. Could you please confirm that's the problem you have?

stonstad

stonstad

2019-08-16 00:46

reporter   ~0005925

Okay. Next time I need to dump /library and have Unity rebuild assets ... or I pull from SCM ... I'll test the above code to see how and why it might be failing.
stonstad

stonstad

2019-10-08 17:13

reporter   ~0005984

OK, I setup a new laptop and did a fresh pull from SCM.

1) After initial project asset import, I confirmed that premultiply alpha was not applied to Noesis textures.
2) I confirmed that these texture assets have the Noesis tag applied and IsAlpha is checked.
3) I modified the line of code you shared to include my "User Interface" directory and I then instructed Unity to reimport assets via the project folder hierarchy.
4) Success! Textures show premultiplied on playback.

It would appear that GetLabels is not working as expected.
jsantos

jsantos

2019-10-09 04:45

manager   ~0005985

Yes, it seems to be a bug in Unity we need to workaround, I have a few ideas about it. Thanks for your feedback!
jsantos

jsantos

2021-06-24 18:46

manager   ~0007314

In 3.1 we added support for having a .noesis file to mark Noesis content, this is the most robust solution we found

Issue History

Date Modified Username Field Change
2019-08-08 16:37 stonstad New Issue
2019-08-08 17:16 jsantos Assigned To => jsantos
2019-08-08 17:16 jsantos Status new => assigned
2019-08-08 17:18 jsantos Note Added: 0005916
2019-08-08 17:18 jsantos Note Edited: 0005916
2019-08-08 17:18 jsantos Status assigned => feedback
2019-08-16 00:46 stonstad Note Added: 0005925
2019-08-16 00:46 stonstad Status feedback => assigned
2019-10-08 17:13 stonstad Note Added: 0005984
2019-10-09 04:45 jsantos Note Added: 0005985
2021-05-07 18:06 jsantos Target Version => 3.1
2021-06-24 18:46 jsantos Note Added: 0007314
2021-06-24 18:46 jsantos Status assigned => resolved
2021-06-24 18:46 jsantos Resolution open => fixed
2021-06-24 18:46 jsantos Fixed in Version => 3.1
2021-07-27 20:05 jsantos Fixed in Version 3.1 => 3.1.0