|
|
|
|
|
by chilmers
960 days ago
|
|
I love how level creation for games like Doom and Quake has developed into these small, independent scenes, with a rich community history and a real sense of taste and refinement in how they approach designing for these games. In the same way that "pixel art" has evolved from a necessity driven by the limits of early hardware, through early attempts to recreate a "retro" look, to the point where it is a well-developed aesthetic that is used as an informed choice. It might sound a bit pretentious, but it really feels like the video games have begun to reach a point of maturity akin to older forms of art, where people are no longer fumbling around in the dark so much, or chasing the technological zeitgeist. Instead creators are consciously embracing and exploring different limitations and aesthetics, in the same way a painter might use different types of paint, with all these diverse styles and scenes, which are at once independent yet also informed by each other. |
|
The only thing I personally think is a shame, is that the structure of interactive experience inherently lends itself to collage — to a potential for different "scenes" made from entirely distinct "media" — but that it's prohibitively difficult currently to (seamlessly) weave together different game engines into one game art project; especially when some of those engines aren't open-source engines, but only exist in the form of old games that are usually turned into art through ROM-hacking.
An artist should be able to have me walk through a door in an RPG Maker game end up playing a Quake level! And then, upon killing a certain enemy, be suddenly in a bossfight in a SMW ROMhack! And then, upon succeeding or failing in the boss fight, I should be able to either end up in their custom Unreal-engine-coded finale, or back in the RPG Maker "space" from before! All without loading times or futzing with the display settings!
I've been working on a "solution" to this "problem of artistic collage" — a runtime that supports custom (i.e. zero-installed from the internet on demand by a game) sandboxed cores wrapped in realtime-per-frame in-memory-state import/export logic, where "a game" is actually a set of sub-game modules, with each module being expressed in terms of its own core, and having either a plain API call (for open engines) or a RetroAchievements-like memory-watch rule, to trigger state-transitions over to other modules.