3 ms·
Shaders are a completely different thing from styling (cascading). GPUs work here because games fundamentally operate on a list-like datastructure (the display
by Manishearth 9y ago
Shaders are a completely different thing from styling (cascading).
GPUs work here because games fundamentally operate on a list-like datastructure (the display list), with little interdependence.
Styling on the other hand operates on a tree like datastructure (the DOM), with lots of interdependence.
Cascading isn't something games need at all, and if it was, it could be precomputed. THis can't be done in webpages.
- mianos 9y agoGame engines are pretty much completely sitting on complex tree structures. Way more than the DOM. The main reason the DOM all looks so tricky is it is a hack on a hack on a hack. A lot of game engines have been rewritten from scratch many times over.
- Manishearth 9y agoYes, trees are involved in games too, but not at the level I'm talking about. You don't have analogues for tree-structure-based "selectors" and anything more than straightforward property inheritance (e.g. inheritance of transformations in a skeleton) in game engines. CSS is much more complex in this aspect. The DOM having lots of legacy issues is not the reason styling is slow. CSS is designed for a lot of flexibility and can't be precompiled, which is why it is slow to style.