- Images cut off in some versions of safari code#
- Images cut off in some versions of safari Pc#
- Images cut off in some versions of safari mac#
It is the primary operating system for Apple's Mac computers. This reply was modified 3 years, 11 months ago by jem.MacOS ( / ˌ m æ k oʊ ˈ ɛ s/ previously Mac OS X and later OS X) is a proprietary graphical operating system developed and marketed by Apple Inc. I think that it would be better if I would probe the WebGL MAX_TEXTURE_IMAGE_UNITS support rather than inferring it from the agent string, but it will do for now. Here is a link to the new version of the scene on the CDN.Ī solution like this is acceptable. I did not need two different bin files because the meshes are the same. Var URL = '_URL_ios_render_test_ios.gltf' Here is my code: var iOS = /iPad|iPhone|iPod/.test(erAgent) & !window.MSStream To test this idea, I exported the GLTF with and without shadow casting and modified the application logic to load the appropriate GLTF. If I disable dynamic shadows, my tests work on iOS. I would rather lose the shadows than lose the amazing looking materials. It seems that my main problems with supporting iOS are lamps that cast shadows (as Yuri did point out).
Images cut off in some versions of safari code#
This code is easy enough to write myself, but I value your opinion and you may have a better strategy. What is your opinion of adding some custom user agent logic to the application to load the appropriate version? I am not asking for Soft8soft to do this. One version for iOS and another version for everything else. Let us assume that my goal is to show the best possible quality scene on all supported platforms (rather than show an iOS quality scene to all users) and I produce two versions of my gltf/bin files. If such a tool is not available, is it best to manually review the scene in Blender using the procedure that you explained?Ģ. Is there a way of examining a scene and observe or predict how many texture units will be required? For example is there something similar to Chrome’s developer tools that would report on WebGL resources in real time? This information may be helpful to developers building scenes. I will need to minimize shadow casters and use simpler materials than I would on other platforms.ġ. So, if I want my scenes to render properly on iOS, I will need to keep the scenes simple. iOS and Safari really do have the weakest WebGL 1.0 implementation of any platform that I must support. I have now looked at the WebGL reports for the various platforms and I can see what you are describing. Thank you for the response and explanation. IMHO, iOS seems to have a very bad implementation of WebGL.Īre there are best practices or workarounds for these issues if we want our scenes to be used on iOS? I am not claiming these are bugs in Verge3D.
X-Code will show messages such as “Trying to use 8 texture units while this GPU supports only 8” This seems to depend on other factors in the scene such as environmental lighting and materials. If I have more than one lamp in a scene, the scene may not initialize on iOS. This scene will not render properly on Safari on iOS (iOS v11.2.6, iPad 2017 wifi). This scene renders correctly on Ubuntu (Chromium).
This scene renders on Chrome OS on a six-year-old ARM-based machine.
Images cut off in some versions of safari Pc#
This scene renders properly on every platform I have tried on a PC (Edge, Chrome, Firefox). The plane has the mahogany material from the library applied. Suzanne should be casting shadows on to the plane below. The scene is lit with spot lamps from above. Here is a link to a simple scene that should demonstrate this. When I apply specific materials from the Verge3D library to a mesh, Safari omits the mesh.
I would like to know if anyone else has seen experienced these issues and if there are any fixes or workarounds.ġ. I have seen several issues when trying to view 3D scenes on an iOS device.