athenian200 wrote: ↑2023-10-22, 15:09
the browser definitely runs a lot of games, especially older Flash games
In this case, it's technically the Flash Player doing the heavy work.
While my personal reference sample is small, Pale Moon and even Firefox struggle in running some ports of the old "serious" games to web browsers. For example, Doom 3 demo at
https://wasm.continuation-labs.com/d3demo/, this one is rather heavy and I guess even the original id Tech 4 engine running Doom 3 natively outside of web browser is not the speediest, the subsequent BFG Edition tends to be more performant. This one is based on the dhewm3 fork of the original source code release.
Or Quake III demo at
http://www.quakejs.com/, this site hosts a web browser port of forked id Tech 3 engine called ioquake3, a version from 2014.
Chromium handles both significantly better, Quake III's frame-rate practically doesn't fall below 60 FPS on my machine, even when there's a lot of action going on, at least as much as can be with 5 bots on the map. I only tried Vanilla Q3 mode so far.
In Doom 3, I picked the spot on the left after exiting the first elevator you ride and positioning myself in the corner on the left, looking at the guard across. 11 FPS in Pale Moon, about 38 FPS in Chromium. That's a big difference in terms how many milliseconds it took to compose a frame. I ran it at my screen's native resolution 1920x1080, also used this script to add the button for switching to fullscreen, the in-game option doesn't really do it:
Code: Select all
// ==UserScript==
// @name d3wasm fullscreen
// @namespace https://github.com/UCyborg
// @description Adds a button for activating fullscreen mode in d3wasm demo.
// @match https://wasm.continuation-labs.com/d3demo/
// @version 1.0
// @author UCyborg
// @grant none
// ==/UserScript==
'use strict';
(function() {
let em = document.querySelector('div.emscripten:nth-child(3)');
let br = document.createElement('br');
let b = document.createElement('button');
b.setAttribute('onclick', "document.getElementById('canvas').requestFullscreen();");
b.appendChild(document.createTextNode('Fullscreen'));
em.insertAdjacentElement('beforeend', br);
em.insertAdjacentElement('beforeend', b);
})();
Another one is old Counter-Strike at
https://play-cs.com/, though this one is not exactly legal (those Russians!). Besides lower-than optimal performance, this one even shows a bug in Pale Moon, at least on my end, it doesn't seem to detect scrolling mouse wheel up or down.
In either case, all of these are asking a lot out of a mere web browser and some overhead and lower-than-native performance is to be expected, but Chromium is distinctly less bogged down than other available browsers.