This entire topic is a high-level talk/thinking about hexes in games, not about hex based games but about the hexes and how they are implemented badly in games due to laziness or what do I know... this is partially about scale issues and partially about a simple fact of hexes, namely that a "terrain feature of a single hex, has to occupy a full hex" and anything aside from that terrain feature, has to be blended over or replace that terrain feature..
I want to rant/openly think about a certain kind of system in games. Hex based land grid systems
. And why the current implementation sucks. I bring this up because a few high profile games (CIV5, Beyond Earth) again show why hexes done the "stupid" way is stupid and more importantly, looks absolutely horrible when various game systems are applied on top (growing cities, roads, coast lines, heights, hills, resources etc..)
Now what do I mean? Well let me give you a (abstract, remember it's not about games, it's about how games currently use hexes)
In this you can see various problems abstracted
In order to draw a road through hexes, you need to create a layered texture, coastal areas are 1 hex, even though a coast is usually land and ocean combined. Most hex-based games make the coast an entire ocean hex, instead of a half land half ocean hex. (super lazy!)
In order to apply a layered texture, you need to give it alpha mapping but, alpha layered textures are not aware of textures underneath them, you can literally not solve the problem that Beyond Earth, Civ 5 and every other game with hexes ever made has if you use hexes like the above and what problem you ask is this?
Notice, farms "fading into the ocean" roads blended over farms, roads running through geometry, resource buildings going into oceans, city builds sitting in the ocean.
Notice river going through wall, floating city buildings, cutting actual texture mapped geometry where the farm is, and the most glaring problem, hexagonal heights.
It's worth mention that CIV5/Beyond Earth doesn't even *have* height as a concept. There are only mountains.
So I bring this up because most grid based games had these issues too, and it is imo absolute laziness. Because the solution requires but 1 simple additional step (but more importantly, more fine grained art-assets) Not more art, I am talking about more finely segmented art assets and some way to connect subdivisional points to bordering hexes in a pleasing visual manner
So basically I was thinking about something like this (I should probably put more effort into this, but I think the idea is clear)
Actual units would still walk on the "hexes" and not on the sub-divisions. Coastal area and land area can occupy 1 hex
the darker red is city expansion" area. That a city can pre-flag. Farms can occupy any subdiv tiles in a single hex. If a city say, expands beyond 1 hex, a new city source tile is created, and expansions grow from there. This still means that a hex can only have 1 primary purpose, but the actual art inside a hex can be finer placed and more pleasing connections and more realistic gameplay systems can be implemented. But more importantly, this would allow for a realistic display of growth. A farm wouldn't be a hex-spanning texture, but be a farm building with road connection and a number of farm plots. This doesn't change in any way how the game functions, it is merely there to properly simulate that a hex can be more than 1 visual asset. Ie you don't put a farm building down on a hex with a river, and then have to see the river glitch through the entire farm geometry and texture.
Now I wrote enough and I want to emphasize, this is an idea I had, not something I actually tested out whether it works in terms of art. I want to hear opinions. Do you think subdividing hexes in sub-plots would make sense? And that this kind of system would create a more fun 4x if applied to say, Beyond Earth or Alpha Centauri style games?
It is also worth noting that the reason I was thinking about this, is the way the (original!) Alpha Centauri did heights and mountains in the game. I know how this works in grid-based systems, but nobody has EVER properly implemented this same idea in hex based systems. With subdivisions, you can also change the height per tile in a far more finely grained fashion, a mountain could be spanning a dozen hexes, but it would not be all height, and there could even be flat surface tops and calderas that you can have gameplay related context in.
You are probably wondering why those subdivisions are round, this is a mathematical problem with hexes ;p If you subdivide a hex, you get triangles. Triangles are a problem, because they can't be neatly textured. So in order to do this, somehow there would have to be a way to subdivide in a way I can not think of. (I don't fully understand hexes)
So if this idea doesn't work mathematically, please tell me