Open paulrouget opened 5 years ago
I do not use mozangle, but https://github.com/microsoft/angle.
Here is how I initialize OpenGLES: https://github.com/paulrouget/HLServo/blob/master/OpenGLES.cpp
/cc @pcwalton @gw3583
@paulrouget what if you just do cargo test
inside the WR folder? That should build all the shaders with mozangle, it would be interesting if this also fails for you.
Extracting the shader code generated by Angle (in case of errors like this) is somewhat painful. We could break here and inspect the state closely.
what if you just do cargo test inside the WR folder?
All green.
Extracting the shader code generated by Angle (in case of errors like this) is somewhat painful. We could break here and inspect the state closely.
I guess the equivalent would be this function. If I manage to break here, what should I be looking at?
All green.
Do you see "angle_shader_validation" test running? I wonder if we got the test diverging from what renderer is using, again.
If I manage to break here, what should I be looking at?
Identifier "s3"
I have reproduced this loading google.com in the UWP Servo app, so I'll poke around in the debugger.
Additionally, we get a gl error 1282 (INVALID_OPERATION) after a call to glDrawElementsInstanced.
Might be related to https://bugzilla.mozilla.org/show_bug.cgi?id=1556763
Failed to link shader program: cs_border_solid
C:\fakepath(606,1-4): error X3004: undeclared identifier 's849'
Failing shader:
ANGLE output:
I fixed the shader problem by avoiding the ? construct and using an explicit if/else instead.
Great find @jdm ! Apparently we already faced this problem before - https://github.com/servo/webrender/wiki/Driver-issues#1285---declarations-in-switch-cases
Too bad we don't have any tooling to check for those cases on CI.
I'm running Servo on Windows via Angle. Servo crashes after this failure: