servo / webrender

A GPU-based renderer for the web
https://doc.servo.org/webrender/
Mozilla Public License 2.0
3.13k stars 279 forks source link

http://keithclark.co.uk/labs/css-fps/nojs/ runs really badly #2429

Open jrmuizel opened 6 years ago

jrmuizel commented 6 years ago

Rendering is broken and performance is terrible See also https://bugzilla.mozilla.org/show_bug.cgi?id=1422051

glennw commented 6 years ago

There's (at least) two known issues here (that we have existing bugs for).

One is that we don't correctly handle bounding rect and plane-splitting when a plane goes behind the near plane (@kvark is planning to take a look at fixing this).

The other one is an optimization case - at the moment as soon as we enter a 3d rendering context, we apply plane-splitting and off-screen rendering to every plane encountered. In the vast majority of real cases, the plane-splitting is actually redundant (e.g. if there's no intersections) and we can detect this and skip the off-screen rendering for this context.