PC Will the Fun Pimps ever allow better painting choices

That scheme you are suggesting here is identical to storing color as a separate number. It needs free bits in the block definition, i.e. the problem I was talking about previously.


I think he was riffing on a question I asked. I was asking if a 2nd texture atlas was possible?

If so, you'd need a way to associate a POI with it's atlas and that could be done in XML, even if wasteful because it would be only a few bytes per POI. In this example, it is smaller than the number of unused XML tags that are still being carried around by POIs.

<atlas>2</atlas>




Then, the Prefab Editor knows which textures are to use for that POI.

We'd need a way for the Game to know which textures to display. And I was asking that since F11 seems to know which POI the player is standing on, would the same logic allow the Game to get a reference to the POI and find the associated atlas code?

If that were possible, then it boils down to is that process fast enough to not mess up play.

There are a number of trip-up points in there and I'm sure the Devs have looked at this kind of approach. It is similar to memory paging.

If it worked, POI designers would have to pick an atlas (~palette) to use with a POI and you'd only get the textures on that atlas to use, so there would likely be a high number of duplicate textures.

Update: Indeed, I worry that even if the technicalities were adequately addressed, this approach would be of limited appeal. Perhaps if you wanted all POIs in the Industrial district of a city to use an "industrial" palette, so you end up with the "residential" version of "yellow concrete" versus the "industrial" version of "yellow concrete", versus etc. While it adds new appearances on a large scale, it doesn't add new functionality to the available textures. You might find a few of the textures can become something different... like an industrial palette might not need the "log cabin" texture, making room for one new texture but only if you're on an industrial Tile.

So, while this might be technically feasible, it creates all sorts of POI and Tile design complications. I'd skip doing it.

 
Last edited by a moderator:
I was asking if a 2nd texture atlas was possible?
With 0 overlap, perhaps. But you'll lose your ability to build in POIs. The atlas is the size of "every bit of memory you're willing to sacrifice for it", so you can't load 2 simultaneously. Loading one, takes out the other. Any texture that can be used in an area, must be in the current one. So you couldn't use "blocks of POI 1" in POI 2, and vice versa.

Additionally, everything outside the POI in drawing range would need to be from the same atlas, so you couldn't place POI 1 and POI 2 next to one another. Not even in the same town, as you can't have both sides of the boundary visible at once.

 
Additionally, everything outside the POI in drawing range would need to be from the same atlas, so you couldn't place POI 1 and POI 2 next to one another. Not even in the same town, as you can't have both sides of the boundary visible at once.


Ah, I was afraid that might be a limitation. Even if it switched at city district borders, or biome borders, there's still be times when you'd want multiple atlases. Thanks for thinking it through.

 
I am curious, and maybe no one can answer this... does an atlas have to increase size by a certain amount?  In other words, if you wanted to increase the atlas size by one level, does that add one texture or 50 or 100 or ...?  And how much extra memory is needed to increase it by one level?  I'm just thinking that if you could add only 10 or 20 textures without increasing RAM required by a significantly large amount, it could be worth it.  I'm assuming they've already looked at this and determined that what we have is what they think is acceptable for RAM usage, but I'm just wondering what that difference would be if it's known and allowed to be stated.

Is it possible for unpainted surfaces (wood, cobble, cement, etc.) need to be included in the available textures?  I have a feeling they do, but is there a way to move those out of there and make room for textures you'd actually use to paint with?

And, could we at least see the textures/atlas opened up for modding?  Even if you can't change the number of textures, just being able to make your own could be nice.  I do understand that making such a change would affect the textures on all POI, so you'd either have to disable vanilla POI or else edit them so they look okay.  But I would imagine overhaul mod authors would be open to that as an option so they can make a more appropriate theme for their overhaul mods.

 
In other words, if you wanted to increase the atlas size by one level
I haven't handled them for reals, so some salt to be taken, but one "level" is basically a new bit of addressing to a two-dimensional array. So if you had 16x16 textures earlier, next "optimal" step is 32x32; quadrupling the memory.

And then it all depends on the tool chain, GPUs may have demands, the game engine may have demands etc - I don't even know where the thing is actually handled, but wherever it is, there's going to be plenty of algorithmic optimization going on based on some standard solutions decided somewhere at some point in time ... :)

 
I haven't handled them for reals, so some salt to be taken, but one "level" is basically a new bit of addressing to a two-dimensional array. So if you had 16x16 textures earlier, next "optimal" step is 32x32; quadrupling the memory.

And then it all depends on the tool chain, GPUs may have demands, the game engine may have demands etc - I don't even know where the thing is actually handled, but wherever it is, there's going to be plenty of algorithmic optimization going on based on some standard solutions decided somewhere at some point in time ... :)
Ok, that would make sense... but then, would it not be possible to instead create a second, smaller atlas?  Say you have 16x16 now and you create a 4x4, which is certainly a much smaller amount of RAM needed and use it as a second atlas that is also loaded into memory?  The impact would be lower than having two full-sized atlases or increasing the atlas size, and you could still add in some small amount of extra textures that could be used.  I'm not sure how much impact a smaller atlas would have, and it would certainly depend on the size of it, but anything that offers even a handful of additional textures would be nice.  Obviously, more is even better.

 
would it not be possible to instead create a second, smaller atlas?
In theory, absolutely. In practice, it would likely need a whole lot of rewrite just for a "side atlas".

I mean, there probably are several atlases in different uses already, blocks vs mobs vs weapons as an idea, different things with different requirements. But to get one type to load from several, might be a lot of effort. If even supported by the engine at all - at which point you could modify the engine, but the effort and risks start skyrocketing.

There's so much I know I don't know about the situation, and likely 10x more actual issues that I don't have a clue of ... the pimps would probably like to have all of the textures, but they've chosen this amount after serious consideration; I have no choice but to trust them.

 
Back
Top