External textures not being shown

Shapediver stopped loading external textures (from Dropbox, via dl=1 links) on new models I upload.

Old models using the same source still work. Any idea?

I just uploaded this model with a texture linked from Dropbox and it works fine.

https://app.shapediver.com/m/test-2093686

Could you test your Dropbox links with the model?

Textures can render unpredictably without texture mapping and objects may look grey. Could this be an issue?

Thanks for checking;

if I load my texture(s) into your model, I also don’t see them:

https://www.dropbox.com/s/7qweow7om0b4wix/200717_Texture.png?dl=1

https://www.dropbox.com/s/e0ddbramhvoo0xj/texture_2mm.png?dl=1

I guess the file size was way too big…

Yes, that’s most likely the issue here and resizing them below 4MB should solve this. However, I recommend textures smaller that 1MB for the fastest performance of your model. Learn more about the best practices for texture mapping including Power Of Two rule in this blog post.

In this upload the Dropbox URLs are not working…
https://www.shapediver.com/app/m/pegboard-v005

[url](https://www.dropbox.com/s/4mgq0rtnbdwtjmq/Artboard%201%201.png?dl=1)


....however in this other upload with the same URLs are loading.
https://www.shapediver.com/app/m/pegboard-v003

When I use other URLs as the Goolge images it works.

**url**
https://www.cnnbrasil.com.br/wp-content/uploads/sites/12/2021/11/2021-11-10T164428Z_1_LYNXMPEHA9153_RTROPTP_4_GERMANY-GOOGLE.jpg?w=293

Why does the same Dropbox URL work on a upload and another does not work?
Considering that I also tested different URLs off Dropbox to check if there was some error in the definition of Grasshopper.

Are you able to reproduce the issue on a minimal example? In the current state, there could be multiple reasons:

  • Wrong texture coordinates on some geometry
  • Using different versions of the shapediver plugin
  • Cached solutions which timed out and did not download the textures.
  • …

Not to mention that dropbox can change the way textures are stored over time, not guaranteeing that the same links will always work with shapediver. If the first model was uploaded a while ago, textures have been cached on our servers and calls to dropbox do not happen anymore. If something changed on dropbox’s side since then, that would explain why the urls stopped working.

1 Like

Hi @mathieu1
I created a file with 4 different URLs with the same image.
Just a URL that I used from Google images worked,

(https://s2.glbimg.com/jOIPhAjMAiyTcNxQ4E5DZz5b9jk=/540x304/top/smart/https://i.s3.glbimg.com/v1/AUTH_59edd422c0c84a879bd37670ae4f538a/internal_photos/bs/2021/Z/O/9AJLu0TuOrfK5ANIsdrA/2021-09-27t140216z-522803667-rc2eyp9xndtg-rtrmadp-3-google-india.jpg)

but the Dropbox URL, our site and a storage in WordPress did not work.

https://www.shapediver.com/app/m/test-source-image-v002
TEST_SOURCE_IMAGE_V002.gh (26.7 KB)

In Rhino the Web and Dropbox URL work.

Would you like to know what might be happening so that in Rhino the Dropbox image works but in Shapediver does not work?

And what do I need to do for the hosted URLs on our website work?

Thanks

Many thanks for taking the time to create this example. I will investigate your file and find out whether there is an issue on our side, or if this is just standard storage requirements from the image providers that need to be checked.

1 Like

@mathieu1
No url texture from dropbox or our website is loading.
Only when we use the Import Bitmap component that uses a lot of computational memory.
image

We recommend to not use dropbox anymore, as it seems they have made changes to the service, and in general provide unreliable headers for the files they serve. In the plugin, it might sometimes work but does not mean it will work online.

Out of all the methods you are using, it seems that you have access to Amazon S3, which is the best possible way forward. Right now, it does not work because you have not setup the file headers correctly on s3. When you upload files, make sure the “Content-Type” header is set according to the file format you are uploading, for example png:

This is easily done through the console interface of S3.

Let me know if you have further questions.

1 Like

Hi @mathieu1
Even configuring the content type we have the same problem, but now it appears in the grasshopper component. Before it didn’t happen in the component but it happened in the shapediver.


Can you please post here the url of the image from the example above ?

Also please double check the url used in the file and that the Content-Type is really set correctly. Also empty your browser cache.

I just tested using the definition you posted earlier. The url in there works fine, both in Grasshopper and on ShapeDiver:

For this url, I could check using the network tab of my browser console that the Content-Type is correct, you could do the same with the other one, or I can give it a go if you post the URL here:

@mathieu1 when I changed my vpn it worked on shapediver.
I was using a vpn from South Africa and it wouldn’t load, but I changed it to one from Germany and it worked fine.

But the problem still remains when I use the url directly in shapediver material component.

only bitmap uploaded from shapediver Import Bitmap works

image

this is the url from the example

[type or paste code here](https://snowdev.s3.amazonaws.com/userfiles/217/fe566e4d0ff184aafdb694a34dcf51bc.jpg)

That url works fine for me:


Make sure you have the latest version of the ShapeDiver plugin.
You could also try adding a dummy query string at the end of the url, in case some local caching is causing the issue (for example www.myurl.com?seed=1).

1 Like

After upgrading the plugin it worked.

I believe that in this post there is a huge list of solutions for other users.

Thanks @mathieu1