Welcome
Ladies and Gents:

These forums are now closed and registration disabled.

Please join us at our new forum on Proboards. Our hope is that these new forums are more stable, provide more and better features, and allow continuation of the project forums in a safer, more secure, long term environment.

me3explorer.proboards.com

--The ME3Explorer Team

Research - MIP Maps and Texturegroups

Area for texture-specific, modding-related discussion. Topics that involve models/meshes/actors go in the mesh area. As with other non-toolset related content, answers not guaranteed.

Re: MIP Maps

Postby giftfish » 08 Jun 2016, 15:40

CreeperLava wrote:What giftfish said, plus from what I can see you would need to get really far away to display them (at least if you use HR textures). The rate of transition between MIP Maps doesn't seem linear with distance. It goes very fast from 4096 to 2048-1024, but then transitions slow down, you have to get further by a few metres for 256, then a dozen metres for 128, etc.

This seems about right; it's certainly what I'd expect.

A lot of folks are 4K and 8K texture happy right now, and the thing is that 99% of the time, the game will not be rendering the texture at that resolution. I'd say 8K textures are still basically a waste -- unless, perhaps, you're playing a game at 4K on a 36" screen. Then, due to both the size and resolution, it might be worth it. But, even then, you won't be seeing 8K most of the time.

On a relatively normal 1080p, 20" monitor, 4K textures won't be rendered at all unless you're standing on top of the mesh in question. Therefore, they are almost entirely wasted. Even 2K textures will be overkill in many cases; it depends on what it is. But, there are lots of folks out there seem to want everything 4K on principle, which is silly. 4K tablewear? Entirely unnecessary. A 4K mountain or ship? Quite possibly. Assuming the monitor is large enough, and has a high enough resolution to warrant it.
User avatar
giftfish
Toolset Developer
 
Posts: 1247
Joined: 08 Jan 2016, 02:35
Has thanked: 129 time
Have thanks: 75 time

Re: MIP Maps

Postby CreeperLava » 08 Jun 2016, 16:30

I saw a mod for Skyrim, it used an 8k diff to replace the texture of a flower. Just crazy, and useless. Imagine the amount of VRAM used if you go outside and all flowers/grass are 8k... Imo, 2k should be the standard, I think most graphic cards can manage a 2k game. Just add some 4k for characters and you've got a nice looking game.
User avatar
CreeperLava
User
 
Posts: 844
Joined: 07 Feb 2015, 21:52
Has thanked: 119 time
Have thanks: 83 time

Re: MIP Maps

Postby Alvaro » 08 Jun 2016, 17:59

CreeperLava wrote:What giftfish said, plus from what I can see you would need to get really far away to display them (at least if you use HR textures). The rate of transition between MIP Maps doesn't seem linear with distance. It goes very fast from 4096 to 2048-1024, but then transitions slow down, you have to get further by a few metres for 256, then a dozen metres for 128, etc.


Can I translate this into something like we only had the 1st mip when very close, then the 2nd, 3rd... as soon as we got far and far away?

If so, to have a larger texture (4K, or 2K) to start with will be always better than to have a smaller one because having more mips those used will be more defined and detailed.

Just a guess but I would think UE scales the image acording to the mip level and not to its resolution but, once more, I can be completely wrong here. So if at a given distance to the object the mip to display is, i.e. the 5th, that mip will be used no matter if 256x256 (for a 4K texture) or 16x16 (for a 256x256 one). I see this as the best point to go for larger textures then. No doubt first level mip would be wasted most times but we would gain better lower level ones.

Regards
Alvaro
User avatar
Alvaro
User
 
Posts: 83
Joined: 15 Mar 2015, 13:06
Has thanked: 8 time
Have thanks: 12 time

Re: MIP Maps

Postby CreeperLava » 08 Jun 2016, 19:30

I was inspired by Alvaro's remarks, here is some more testing. This time I took each screenshot when the transition took place, to get a coherent set of results.
Spoiler:
Image 1024 texture at 1080p.
Image 1024 texture at 480p (or something around that).
Image 4096 texture at 480p.

It looks like resolution doesn't matter, but interestingly, neither does size of the texture. The higher resolution MIPs seem crammed into the distance beyond this transition, whatever the resolution of the texture ; like if the MIP transition was function of the distance, not of the resolution. So 4k textures are definitely useless for environments and stuff you only see from afar, even if they do have higher resolution MIPs. Psychologically though, it feels good to get 4k everywhere^^.

Obviously this could be a behaviour common only to the UE engine, and could be different in other games.
User avatar
CreeperLava
User
 
Posts: 844
Joined: 07 Feb 2015, 21:52
Has thanked: 119 time
Have thanks: 83 time

Re: MIP Maps

Postby Alvaro » 08 Jun 2016, 19:55

Oh, well... I was sure that was not going to be so simple! :oops:

No UE expert in the room? :)
Alvaro
User avatar
Alvaro
User
 
Posts: 83
Joined: 15 Mar 2015, 13:06
Has thanked: 8 time
Have thanks: 12 time

Re: MIP Maps

Postby giftfish » 09 Jun 2016, 00:25

CreeperLava wrote:I saw a mod for Skyrim, it used an 8k diff to replace the texture of a flower. Just crazy, and useless. Imagine the amount of VRAM used if you go outside and all flowers/grass are 8k... Imo, 2k should be the standard, I think most graphic cards can manage a 2k game. Just add some 4k for characters and you've got a nice looking game.

Yeah, the screenarchers love their 8K textures. The other problem you start to run into when going that high rez is consistency across textures. Not every modder releases 8K (since they know it's a waste), and unless you have all 8K textures, the hodgepodge of 2K, 4K, and 8K in game can be jarring.

My old laptop couldn't handle a fully-modded 2K game, and it was almost top of the line 5 years ago. So, it's all about what kind of system people are running. Most folks aren't picky about their components and don't build their own PCs -- they buy what's on sale at Best Buy or Dell. There is no "general rule". It's going to depend on their amount of VRAM and their monitor (and CPU and RAM certainly matters). Some folks might very well only be able to handle 1K, which is why there are a LOT of "performance" texture mod packs for Skyrim mods. The minute you say "everyone can handle 2K", you get a user who's still running an 8800GT and Wolfdale, with 2GB of RAM.

CreeperLava wrote:It looks like resolution doesn't matter, but interestingly, neither does size of the texture. The higher resolution MIPs seem crammed into the distance beyond this transition, whatever the resolution of the texture ; like if the MIP transition was function of the distance, not of the resolution. So 4k textures are definitely useless for environments and stuff you only see from afar, even if they do have higher resolution MIPs. Psychologically though, it feels good to get 4k everywhere^^.

Obviously this could be a behaviour common only to the UE engine, and could be different in other games.

Very interesting test :) Underscores everything we've been talking about. Looks like you have some good data for when users start pestering you for 4K textures, lol. They will not see them 99% of the time, so it isn't worth it. For characters rather than environments, I can see going that step further -- if their system can handle it.
User avatar
giftfish
Toolset Developer
 
Posts: 1247
Joined: 08 Jan 2016, 02:35
Has thanked: 129 time
Have thanks: 75 time

Re: MIP Maps

Postby Kinkojiro » 09 Jun 2016, 03:02

This is my take on what happens and why adding HR textures probably doesn't matter for a lot of things.

Just for those who don't know unreal works like this: Textures are applied to a 3d model via a material. This is a group of settings that control a whole bunch of possible things but come down to how light reacts to the textures. There are master materials and instances. Instances are children of the original material and allow you to control the material settings without using a different master material.

For example the armor all (pretty much) uses the same master material, but models each have their own instances that point to different textures, or change opacity, shininess, tint etc etc.

I can create new instances, but I have found no way to create a master material. Even creating it in UDK and importing just doesn't work. I believe this is because most of the material default settings are baked into the binary code of each object and the shaders. Unreal does this in order to speed processing of graphics.

Back to the original point. I am pretty certain that the LOD (level of depth settings) are built into the materials/shaders when the game is cooked. That is such a fundamental setting to how the game renders, it would be incredible if it wasn't included.

So when it cooks the master materials for say a character the lod settings are baked much higher than say a floor or wall. When viewing a wall it says the maximum lod for this material is 1024 so display that. The lod level is entirely preset and tied to the material.

Unfortunately there is not a lot we can do about this. You can change the master material but then you run into problems of settings meant for shiny armor being used on walls.
User avatar
Kinkojiro
Modder
 
Posts: 578
Joined: 02 Dec 2013, 04:14
Has thanked: 233 time
Have thanks: 249 time

Re: MIP Maps

Postby CreeperLava » 09 Jun 2016, 07:00

Very interesting, kinko, thank you for the explanation. What can you edit in instances ? Every setting of the master material ? If so, can you create a new virtual master, that would technically be an instance but have such different settings that it can be considered independent from it's master ?

This lod setting, does it limit the maximum resolution of textures that will be displayed ? If so, does the game simply fisplay a lower res mip or do we get graphical glitcjes like with the aquarium plants or visors ? Last question, does editing the coalesced have any real impact on the max resolution ?

A lot of questions, but you're one of the only people that can answer them :p.
User avatar
CreeperLava
User
 
Posts: 844
Joined: 07 Feb 2015, 21:52
Has thanked: 119 time
Have thanks: 83 time

Re: MIP Maps

Postby Alvaro » 09 Jun 2016, 07:46

Kinkojiro wrote:Back to the original point. I am pretty certain that the LOD (level of depth settings) are built into the materials/shaders when the game is cooked. That is such a fundamental setting to how the game renders, it would be incredible if it wasn't included.


Good to know, thanks! That sounds pretty logical to me.

And I also agree with CreeperLava that may explain some very surprising vissual glitches like we have been experiencing when replacing an ordinary vanilla 128x128 texture with a new 512x512 one. No need to go for larger sizes to be in trouble, I´m afraid. In some cases the replacement didn,t worked at all and, in some others, just worked for any of the mips, being corrupted at some point depending on the distance so looks like UE was "unable" to handle the actual texture mips correctly.

[email protected], do you remember those Normandy consoles that became faulty as soon as you get close to them? Seems the case here-

Thank you all for you input, very informative!
Alvaro

EDIT --> funny thing here is that while many textures can be upscalled sucessfuly then, suddenly, you may find some that, simply, can not. So those are certainly "locked" -to say something- in some way by design. I could find logical that those "special" textures like GUI or those including some motion could not be replaced due its different nature or purpose but there are some other cases making no sense when, suddenly, the simplest static object does not admit upscalling -like the pretty basic ME2 binders Diff, ie-. Oh... BW rules! :roll:
User avatar
Alvaro
User
 
Posts: 83
Joined: 15 Mar 2015, 13:06
Has thanked: 8 time
Have thanks: 12 time

Re: MIP Maps

Postby Kinkojiro » 09 Jun 2016, 08:33

What we do know is if Texplorer didn't change the LOD settings on each texture added to ShadowMap we cant see the new texture at all. So clearly changing the texture object itself matters for the game to be actually able to handle it.

I doubt changing the LOD settings in the coalesced changes anything. If, as I think, the LOD setting is baked into the material/shader then that would be much much faster than looking up a json table (at least for an xbox).

Every texture that you say has problems is also one with quite a few special effects like opacity and emissivity. It maybe a very complex material just cannot handle a texture which has bigger mips but they are used.

As to you question about what can you set on the instances, it depends on the parent material. Some have only 1 item eg texture, some have dozens of possible settings. Most have a few. For example a visor has cubemap texture, norm texture, opacity, visor colour, visor colour 2. These are either set as Vectors (RGBA) or Scalars (Floats) or Object references (e.g. textures).
User avatar
Kinkojiro
Modder
 
Posts: 578
Joined: 02 Dec 2013, 04:14
Has thanked: 233 time
Have thanks: 249 time

PreviousNext

Return to Texture Discussion

Who is online

Users browsing this forum: No registered users and 1 guest

suspicion-preferred