Hacker News new | ask | show | jobs
by Manishearth 3279 days 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.

1 comments

Game 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.
Yes, 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.