2

Games written using OpenGL are relatively easy to port to many platforms, and look and feel the same everywhere implementing their own UI. Web browsers have to solve a very similar problem. So, why don't we have web browsers written using the OpenGL specification?

Would not having the same specification for the graphics rendering across platforms simplified development a lot? And wouldn't this also mean better rendering performance with animations utilising 3D acceleration, etc.

  • 1
    Short answer: no. You'd solve some problems, and create new different ones. – whatsisname Feb 23 '17 at 7:47
  • 5
    Modern browsers do use hardware acceleration when available (esp. for page layout composition and WebGL). But browsers target a much wider install base than games, and parts of this install base may not have OpenGL available. So while OpenGL is used on some operating systems, it doesn't actually simplify development. – amon Feb 23 '17 at 10:24
  • Web browsers have to satisfy a lot of conformance and compatibility standards. – rwong Sep 30 '17 at 15:02
  • Also, look at WebRender, the Servo rendering engine being integrated into Firefox right now. It is, in fact, completely based on OpenGL. – Sebastian Redl Sep 30 '17 at 18:05
9

Web browsers have to solve a very similar problem.

No, they do not.

When you put a game on a different platform, you rely almost entirely on your game's data to make that game work. Those fonts you see? Those are shipped with the game, either as bitmap images or as a font file that gets rasterized at load time. Generally speaking, games do not use system fonts. Or pretty much anything provided by the system; they do as much themselves as they possibly can.

Web browsers do not. They use fonts provided by the system. Oh, they may install their own, but users will expect them to be able to use system fonts.

Users also expect browsers to conform to the general UI requirements of the OS in which they operate. Close buttons should look like the close buttons on any other program of that OS. Dialogs should be laid out the way OS dialogs work in other applications for that OS. Same goes for scroll-bars and the like.

Most games make their own dialogs. They make their own UI elements like buttons and scroll bars. They look and feel as is appropriate for the game they're making, so that it aesthetically fits into the game's appearance.

At the end of the day, videogames are a matter of artistic expression. Web browsers are functional tools first and foremost. And thus, they need to behave like they belong on that OS. A one-size-fits-all approach just isn't a good idea.

Not to mention, the platform-specific aspects of a browser are probably the easiest part of them. So even if they took a one-size-fits-all approach, it wouldn't simplify development.

And wouldn't this also mean better rendering performance with animations utilising 3D acceleration, etc.

Hardware acceleration is often used in aspects of various web browsers' rendering engines.

  • I cannot upvote this enough times. Nicely said. – user1118321 Feb 26 '17 at 5:48

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.