Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Most Examples not working on Safari (context hash 1M+-1n, webgl 1) #269

Open
anne-gropler opened this issue Oct 8, 2020 · 1 comment
Open
Labels
bug Something isn't working

Comments

@anne-gropler
Copy link
Collaborator

anne-gropler commented Oct 8, 2020

I opened webgl-operate.org/examples on Safari and found several issues. Below you find the list of Examples and their state of functionality. Looking at that list, it seems that everything related to textures is broken.
Opening the broken examples shows several errors in the console related to shader compilation, e.g.

  • 'textureLod': no matching overloaded function found
  • 'textureCubeLod': no matching overloaded function found
  • 'dFdx': no matching overloaded function found
  • 'normalize': operation result is undefined for the values passed in
  • 'switch': illegal use of reserved word, 'switch': syntax error
  • '<<' bit-wise operator supported in GLSL ES 3.00 and above only
  • ...

but also other errors like:

  • INVALID_ENUM: texImage2D: invalid texture format,
  • drawArrays: texture bound to texture unit 0 is not renderable. It maybe non-power-of-2 and have incompatible texture filtering or is not 'texture complete', or it is a float/half-float type with linear filtering and without te relevant float/half-float linear extension enabled
  • loading image from 'https://webgl-operate.org/examples/data/triangle-texture.webp' failed
  • Unhandled Promis Rejection (probably due to failed image loading)

To me it seems that webgl1 is not handled, or maybe just not recognized as such. I see this as critical, since the code uses facades and masquerades to make webgl-operate handle webgl1 and webgl2 and handle querying/enabling of extensions.

I used Safari Version 13.1.2 (latest), Backend is webgl1, Context Hash is 1M+-1n.

List of Examples:

Examples that work well:
Canvas Size
Color Lerp
Color Scale
Label 3D
Label Anchor
Label Elide
Shadow Mapping
Shadow Mapping (Progressive)

Examples that work in parts:
Environment Mapping (from left to right: black, landscape, white, landscape)
Perlin Noise (only shows grey background; but at least it stopped loading)
Tile-based 4k Rendering (it renderes a coloured cube without texture)

Examples that keep loading forever:
Context Lost Example
Gouraud/Phong Shading
Image Based Lighting
Scene
Textured Cube
Textured Cube (Progressive)
Textured Triangle
Xtoon Shading

@anne-gropler anne-gropler added the bug Something isn't working label Oct 8, 2020
@anne-gropler
Copy link
Collaborator Author

Enabling webgl2 as experimental feature on Safari results in the context hash of 20401h and in a whole new world of not-working examples.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Something isn't working
Projects
None yet
Development

No branches or pull requests

1 participant