Refreshing Textures got slower & annoying

I have my workflow with Photoshop and Rhino exchanging graphic data with each other. This way of designing, thinking is very important for me.
Photoshop generates Image Assets which are used as textures in materials.

Unfortunately, some time ago Rhino changed its behavior about refreshing those textures. You can see in the video that it turns white until I use RefreshAllTextures command. Sometimes, with smaller textures it works ok, but most of the time it doesn’t. Is there a chance to get back to previous behavior?

Acts the same in RH6 and WIP.

It looks like no one cares besides me.

Different project, same method, even bigger problem.
I was succesfully using this method for many projects in the past, but at least in
Rhino WIP 7.0.20105.12495, 14.04.2020 it is not responsive enough.

As I said in previous post, I am generating Image Assets in Photoshop. These assets are used as my textures inside Rhino.

Generating Image Assets:

Problem is, that Rhino is having hard time updating to those changes. My worksession is huge and RefreshAllTextures is really not a way to go. It takes 24 seconds… who plays basketball knows that you can do a lot of things in that span of time. Is there something like RefreshOneTexture?

You may find interesting that after RefreshAllTextures Rhino reacts instantly only once to the texture change. After I make another change, texture is either black or white.

Selecting the same file for texture input is not helping and black texture in Rhino window is not updating.

I’m not sure if I am calling for help from correct people but it seems to me that @andy, you can know what is happening in the background. Thanks.

Another project, the same problem. I am writing because I know that there were some changes in the Materials Panel which made it faster, so maybe this problem can be solved also.

Material that I am reloading is only around 100 KB big. It is not updating correctly and the way to refresh it is command Refresh All Textures which is in my case a 24 seconds long process… This is because in the file I got a bunch of 8k textures in other materials.


Note to me, other people facing this issue and devs:

Hypothesis

I was trying different things and noticed that If the texture has a checkmark On Treat as linear, it refreshes better, although it takes some time before I can toggle back to Rhino window.
(you can see me waiting before Rhino window shows after Alt + Tab operation)

I hope that Treat as linear will solve this problem before It can be looked at by some devs.

Jakub

I don’t know how I’ve missed this thread. I’m sorry about that.

I think I know what this is. If you are using very large textures, the file watcher can time-out. There’s no point in trying to make RefreshAllTextures go faster…if you have a bunch of 8k textures, it will take a while to load them and upload them to the GPU.

https://mcneel.myjetbrains.com/youtrack/issue/RH-59085

Thanks, Andy

I hope it will get a little better at some time.
In most of my cases, I am updating png files with some hand-sketches only. Other, big textures stay intact and I am only “hot-swapping” rather small files (small in terms of file size, resolutions can go very high).

I did not test “Create Physically Based material from texture files…” yet, but there, quick hot-swapping could be even more important - for example when linking textures generated by Substance Player.

Just to collect some more examples with problematic textures & responsiveness, this time inside panels:

In this rhino file, I have only 1 material with 1 texture. I agree texture file it is pretty big - 8k resolution and 71,7 Mb size. But 28 seconds of waiting until texture shows up in the panel (note that in the viewport it’s already loaded) is a way too long.

After switching texture to 4k, (23 Mb file size) and reopening Rhino, the time needed to show texture in the panel lowered to 10 seconds.

Jakob

I have now tripled the timeout to 3 seconds. Let me know if that solves your problem with 8k textures.

I don’t want to go too far - I might end up with some nasty hangs as Rhino waits for a file that just won’t open.

Fix will be available in the next WIP

  • Andy

Please send me the file - andy@mcneel.com

  • Andy

Thank you for looking into it.
3 seconds sound promising! I hope it will solve my problems. I will let you know. I’ve sent you the file shown in the last video.

Jakub

I’m not seeing that email.

  • Andy

RH-59085 is fixed in the latest WIP

Hi @andy, @stevebaer,

i got a related an reproducable problem with a single assigned 2K or 4K texture in png format using RH7 SR9 on Windows 10 Systems (either Quadro P5000 on Desktop or Quadro M2200M on a laptop). Both systems use realively recent drivers.

  1. I can assign a single 2K or 4K texture while i am in rendered display mode
  2. Texture assignments are done almost instantly, maybe 0.5s until i can see it

If i overwrite an assigned texture on disk eg. with Photoshop or my own tools, the assignment is still done fast, but the framerate in Rendered displaymode drops to a crawl. If i had 130 fps before ovewriting the texture, i have 3.3 fps after (measured with TestMaxSpeed). Once i save and re-open the same file, display speed is back to normal. If i make a change to the texture again and overwrite, i’m back at 3.3 fpx.

Is this someting you can help with ? I can provide a video showing this via PM if required.

thanks.
c.

Clement

Please provide a complete model with textures and steps to repeat.

By PM would be fine.

Andy

Hi @andy, OK i send via PM.

_
c.

C.

Got it - the fix will be in 7.13.

  • Andy

Great ! Thanks @andy.

_
c.