brave / brave-browser

Brave browser for Android, iOS, Linux, macOS, Windows.
https://brave.com
Mozilla Public License 2.0
17.72k stars 2.31k forks source link

getAttachedShaders is failing (WebGL) #37044

Closed Treata11 closed 3 months ago

Treata11 commented 6 months ago

Test plan

  1. Visit https://www.shadertoy.com/view/X3cXDj
  2. Ensure there are graphics showing in the display portion. It should look like this: image

Description

If you head to ShaderToy, you can see the shader previews without any issues. But if you select one to view it in brave (like this example), they simply won't be shown on your screen. Not even when you go full screen.

Steps to Reproduce

  1. Select a desired shader from ShaderToy
  2. You'll instantly notice that the shader fails to compile

Actual result:

You'll only see a black screen. The shaders will fail to compile

Untitled

Expected result:

The web used to work fine in the previous version of brave & you were able to see the shader.

Reproduces how often:

Easily reproduced.

Brave version (brave://version info)

Brave 1.64.109 Chromium: 123.0.6312.58 (Official Build) (arm64) Revision ded360c0dc8a4bd8aecb9cbe32a7aa4477d42246 OS macOS Version 14.4 (Build 23E214)

Version/Channel Information:

Other Additional Information:

Miscellaneous Information:

BaRaDa74 commented 6 months ago

works fine on chrome, but doesnt on brave nightly

Rex109 commented 6 months ago

Bump, i have this problem too and i'm actually about to switch browser once and for all

Treata11 commented 6 months ago

Bump, i have this problem too and i'm actually about to switch browser once and for all

It arguably is the best browser I've ever used ... Never bumped to an issue like this before personally while using Brave for almost 3 years now.

LeonFedotov commented 6 months ago

please fix this! maybe theres a flag one needs to flip in the config to make shadertoy work, they are using some internal gl api or something that is restricted by default on brave or what?

Diffus3d commented 6 months ago

I've tried disabling fingerprinting, site blockers, buttons (rewards, etc.) and numerous other settings with no luck. I was on the site a couple weeks ago and everything worked fine. All other webgl sites work fine for me, and my browser passes all webgl checks. I noticed the console is filled with errors. Not sure if this is a brave issue or a shadertoy website issue, but the site works fine in Firefox and Edge.

The attached error log shows a tag manager being blocked at the very beginning, and a number of other errors.

www.shadertoy.com-1711889759164.log

andradei commented 6 months ago

Using firefox for shadertoy until this is fixed.

TotoShampoin commented 6 months ago

Using firefox for shadertoy until this is fixed.

Same here. Also, I was starting to think it was a flatpak issue or something, but I'm glad I'm not the only one

mvinaround commented 6 months ago

Also still the same issue here.

DigvijaysinhGohil commented 6 months ago

Same issue for me as well.

btipling commented 5 months ago

This still seems broken.

kylegrover commented 5 months ago

i'm about 3 days away from switching browsers because of this.

here's as far as i bothered to trace it before just using another browser: image

what should be happening: image

you can see as well that a shader string is present, sourced, compiled, attached, and linked, and when you try getAttachedShaders at this point you get null image

wssbck commented 5 months ago

I am facing the same issue. Commenting to increase visibility.

LeonFedotov commented 5 months ago

Since no brave people are brave enough to chip in perhaps we can discuss possible alternatives, hows firefox these days, is opera a good alternative?

wssbck commented 5 months ago

Not a dealbreaker for me, I will continue using Brave. To add more details:

Version 1.65.126 Chromium: 124.0.6367.118 (Official Build) (64-bit)

blamegames commented 5 months ago

also having this issue.

flowstate247 commented 5 months ago

This is frankly embarassing :( Should be a priority 1 to fix this.

LeonFedotov commented 5 months ago

@brave-dev Screenshot 2024-05-06 at 20 46 48

pierwmaria commented 5 months ago

new to gls coding and shading in general but it's hard to start without some shadertoy renders...waiting for the debug too

fizzzydev commented 5 months ago

still not working bumping this

njberman commented 5 months ago

This is really bad, someone please fix this I have to use brave

LeonFedotov commented 4 months ago

@BrendanEich duuuuudeeee!!!!!!!!!!!!

mrmetaverse commented 4 months ago

c'mon! image

help us out 😅

bdan-codes commented 4 months ago

bump

robiot commented 4 months ago

desert-tumbleweed

LeonFedotov commented 4 months ago

@rebron can you specify the timeline for fixing this bug please?

arcin commented 4 months ago

bump

dnewman-gpsw commented 4 months ago

Just discovered this issue too.

BaRaDa74 commented 4 months ago

there seems to be no interest as this hasnt even been triaged as of yet. I've moved to Vivaldi, and there doesn't seem to be any issues so far.

LeonFedotov commented 4 months ago

More comments will get us to the front page of sort by comments maybe that will help!

On Tue, 4 Jun 2024 at 22:56 Joel Rowney @.***> wrote:

there seems to be no interest as this hasnt even been triaged as of yet. I've moved to Vivaldi, and there doesn't seem to be any issues so far.

— Reply to this email directly, view it on GitHub https://github.com/brave/brave-browser/issues/37044#issuecomment-2148314691, or unsubscribe https://github.com/notifications/unsubscribe-auth/AAA72JXPWEOC53ICHHXCJTTZFYLYRAVCNFSM6AAAAABFGVWJSCVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZDCNBYGMYTINRZGE . You are receiving this because you commented.Message ID: @.***>

Laguna720 commented 4 months ago

Switched to Vivaldi because Brave doesnt want to acknowledge the issue

johnpitchers commented 4 months ago

Same. [Version 1.66.118 Chromium: 125.0.6422.147 (Official Build) (64-bit)]

catboy-catfish commented 4 months ago

Same thing here Version 1.66.118 Chromium: 125.0.6422.147 (Official Build) (64-bit)

Switched to Vivaldi because Brave doesnt want to acknowledge the issue Did that work for you?

Laguna720 commented 4 months ago

Same thing here Version 1.66.118 Chromium: 125.0.6422.147 (Official Build) (64-bit)

Switched to Vivaldi because Brave doesnt want to acknowledge the issue Did that work for you?

Vivaldi works for me on Shadertoy. It also fixed a MPO issue I was having related to Windows.

Miolith commented 4 months ago

At least this issue is a nice way of listing some graphic programming enthusiasts

TheJeran commented 4 months ago

You know why I'm here

LeonFedotov commented 4 months ago

sooo.... Iv'e got this cool toy i'm developing: https://curve.localheist.com its based on threejs am considering porting this to something native as running this on a RPI turns out to be super slow, any recommendations? if anyone wants to see the code haller at me iil share its pretty short...

fleity commented 3 months ago

please fix this issue :-/

ShinghoiXu commented 3 months ago

plz fix this issue!!!

jbunyadzade commented 3 months ago

Please, fix this

whoisnaisu commented 3 months ago

follow up... I'm so sad it can't be use on brave

robiot commented 3 months ago

Daily empty desert gif until they resolve this

Day 2

335807698-586a02c8-eb2e-4b2a-83e9-285ef1bd2d5a

brianpmaher commented 3 months ago

Bump

jakeembodiedlabs commented 3 months ago

Same here. What's the story?

Yona-Appletree commented 3 months ago

pretty annoying now that I've been playing with shaders, what do we need to do to get attention?

bsclifton commented 3 months ago

Thanks for your patience folks - and thanks for being persistent and re-raising. I got it over to @ShivanKaul and he's got a very minimally reproducible example here: https://shivankaul.com/brave/webgl/get_attached_shaders.html

It seems the problem is with getAttachedShaders. Maybe he can give an update here as more info becomes available

ShivanKaul commented 3 months ago

For some reason, Brave always return null for getAttachedShaders() even if you attach one previously. This happens even without Shields on, so I don't think it's a fingerprinting protection issue. Still looking.

jakeembodiedlabs commented 3 months ago

For some reason, Brave always return null for getAttachedShaders() even if you attach one previously. This happens even without Shields on, so I don't think it's a fingerprinting protection issue. Still looking.

I found the same thing. My current idea is making a Chrome plugin to fix it. If we find this can be fixed by modifying the JS, I can do that and post the source here (I have experience making Chrome plugins).

I also have tried to compile Brave in the past and failed to fully compile it into a build with a working installer, and found the entire process to be extremely complex. So, that is part of the reason behind my Chrome plugin idea. If anyone has experience building this from source and we can identify the fix then a PR would be appreciated.

bsclifton commented 3 months ago

@ShivanKaul has a fix up! https://github.com/brave/brave-core/pull/24446

Seems this was unintentionally caused by https://github.com/brave/brave-core/commit/19b9a04a06016dd1bbf0af824933a658bb13f20c#diff-d2b2184840d764ae72b93a75e08b8c7b87aea6013f622435fde429595805b9d9R25

ShivanKaul commented 3 months ago

Single-statement if blocks are the worst

bsclifton commented 3 months ago

Fix by @ShivanKaul merged; we'll be uplifting so the next release of Brave (on Nightly / Beta / Release) will have this patch 😄 Stay tuned