Home Technical Talk

How often are 4096 textures used in next-gen gaming.

1
polycounter lvl 9
Offline / Send Message
MeshMagnet polycounter lvl 9
Those of you who are working on new, next-gen titles; how often would you use a 4k texture?
Do most characters today get a 4096 texture map?
Or would that be overkill?
Would it be common today to use a 4k texture on say a car/vehicle?

Replies

  • almighty_gir
    Offline / Send Message
    almighty_gir ngon master
    depends on the car/vehicle. i've seen some cars that just use fancy shader work and colour values without using any actual UV's.
  • AlexCatMasterSupreme
  • Quack!
    Offline / Send Message
    Quack! polycounter lvl 17
    This next generation will be less about single massive texture sizes, and more about multiple smaller textures blended together in the shader.

    I suspect very few things will just be explicitly a 4096^2 texture as there are ways to do it now via material blending which can be similar in cost but 'infinite' resolution.

    With that said, if it is for your portfolio I suggest making the texture at 4096 and then downsize in engine to see if there is any difference between 4096 and 2048. For most things, your monitors resolution will be restricting the pixel count so that many resolutions above 2048 are moot.

    Test it out!
  • peanut™
    Offline / Send Message
    peanut™ polycounter lvl 18
    420 times.

    ACMS, What are you talking about ? it was clearly used 458 times.
  • thomasp
    Offline / Send Message
    thomasp hero character
    i use them all the time - but only for texturing eyeballs. razor sharp vision!
  • cptSwing
    Offline / Send Message
    cptSwing polycounter lvl 11
    this thread makes me happy
  • Computron
    Offline / Send Message
    Computron polycounter lvl 7
    perna wrote: »
    Alex, here's five internet

    Why can't I hold all these internets?!?
  • Shrike
    Offline / Send Message
    Shrike interpolator
    Depends on the scene, with culling active, you could say you have a budget of 1500 video ram for high end cards with 2048 MB, so if a 4k takes 25 MB you know how often you can use it. Theres graphic settings / mip mapping to turn them lower on people having a older GPU. I would avoid uncompressed 4k however, theyre like 60+ mb and that is a lot to load at once, but it depends on the engine how they are loaded. Always check if you see a difference between the current and the lower resolution. The resolution is not really what counts, its the size in MB that results and that is loaded in your scene. If you use too much, the API is mip mapping automatically, but that has downsides I suppose.

    I think guerilla said they used multiple 4k or 4x2k for characters on shadowfall btw, but consoles are another thing again, they have one strict budget with one strict FPS number they want to achieve and adjust everything accordingly.
  • Millenia
    Offline / Send Message
    Millenia polycount sponsor
    I used some for massive spaceships/space stations, but these things are several hundred metres or even several kilometres in size. The most I used on a single asset was 3x 4096.
  • OBlastradiusO
    Offline / Send Message
    OBlastradiusO polycounter lvl 11
    Aren't 4096 textures used for cinematics now?
  • Shrike
    Offline / Send Message
    Shrike interpolator
    @Oblastradius

    Haha

    I read people were using about 100-120 8192 X 8192 textures in avatar on one CGI character

    One side of a hand = a patch of 8k

    I dont remember correctly, it was in the 3D world magazine or so, may be another movie, but it was something along these lines of ridiculous
  • WarrenM
    Avatar type stuff is likely PTex ...

    4096 textures are starting to come into play in game art but it's still a dicey issue. They usually get mipped down by the time you ship anyway. They are the easy, low hanging optimization...
  • EarthQuake
    Yeah 4096 rarely makes sense in a shipping product as most people are going to play your game at 1080P. Unless you're doing something really silly like uv mapping an entire building uniquely there just isn't much benefit, and the texture would be mipped down in 99% for real world situations at normal viewing distance in a game.

    Maybe for source textures or something but I've never been a proponent of authoring source at a higher res than the end target, just takes more time, computer resources/space to manage.
  • sprunghunt
    Offline / Send Message
    sprunghunt polycounter
    I make every texture nowadays at 4096x4096 for ps4/xbone/pc spec. You can always downsample, but never upsample, despite what CSI would have you believe. Almost every engine has some kind of texture streaming technology anyway so unloading the top mips of a texture is quite easy.
  • rogelio
    Offline / Send Message
    rogelio greentooth
    zero times 4096x4096 texture is like 6 or 9 times your screen resolution it is overkill.

    Most are at 1024x1024 or lower since honestly that still looks good the way I use them.

    2048x2048 are the kind of uncommon ones. More so for special unique items.

    4096x4096 is really ridicules. very rare cases. <
    and honestly I am that annoying guy in a company that will tell you to reduce it...
  • akaChris
    Offline / Send Message
    akaChris polycounter lvl 6
    rogelio wrote: »
    zero times 4096x4096 texture is like 6 or 9 times your screen resolution it is overkill.

    isn't that statement a bit misleading? if you unwrap a 4k texture on a mesh (or if you use it as an atlas of sorts), the on screen texel resolution changes dramatically depending on the shape and complexity of the mesh. more uv isles means more loss of actual space and long shapes or just big areas are different than using a 4k texture on the plug of a bathtub.

    for example if you have an object that is 8meters long and can't be devided, you are left with 512px per meter on a 4k texture. if you stand directly in front of the object with a screen res of 1080p, your object is actually already less then half the screen res.

    so the use case matters a lot I think. In general talking about texel ratio is a better way to tackle the subject I think as it relates to the bath tub plug as well as the single texture Boing 747.(for examplea texel ratio of 5px per cm, which means one meter would be 500px, which would be really crisp)

    You need to establish how textures are used, how close you get, what your budget is (limation of engine, what do other ppl on the project need that affects your tex budget, etc). Then you should come up with a general texel ratio that should be mostly consistent throughout the game (nothing hurts more than a blurry texture next to a crisp one. crisp on crisp and blurry on blurry action is mostly the better way to go).

    And yes, depending on the engine, 4k textures are workable with modern graphics cards. There is even the trend to go much much higher, see megatexture of rage, amplify texture 2 for unity and tools like Mari and Modo to make Udims usable.


    cheers,
    Chris
  • jgreasley
    Shrike wrote: »
    @Oblastradius

    Haha

    I read people were using about 100-120 8192 X 8192 textures in avatar on one CGI character

    One side of a hand = a patch of 8k

    I dont remember correctly, it was in the 3D world magazine or so, may be another movie, but it was something along these lines of ridiculous

    You're pretty much spot on. It was 120 2k and 4k textures per channel with lots of channels. The full texture set for a N'avi was about 10,000 textures.

    This is only ridiculous when you're never going to zoom into any part of the character. A full screen face shot rendered at 2k very quickly makes you appreciate having a lot of detail.

    Also bear in mind cinematic assets have to support the directors vision in full production. If they decide to place something in the hand of the character and film that close up it has to work, you don't have time to go back and rework that area. As the assets are often created before the script is finished, you can understand the tendency to overpaint detail.
  • Bal
    Offline / Send Message
    Bal polycounter lvl 17
    We use 4k maps for the heads of main characters, so despite only being in 1080p, you know you can have real closeups on the faces and still have a crisp resolution. Having large maps where needed isn't such a big deal now with proper streaming systems, just have to budget it right.
  • marks
    Offline / Send Message
    marks greentooth
    Yeah emphasize the budgeting though. Even on next-gen consoles, streaming bandwidth isn't really ever what you'd like it to be.
  • DevconOne
    Saying 4k maps make no sense in a 1080p environment is just not true. That may be in a hypothetical situation where an object using a 4k is just a plane with one side.
    But actual objects usually have 6 sides+, that would want that "1080p" resolution atleast.

    Best example is a planet in a space game. It may even want to have 8k or more, depending how its done.

    Is it something huge that needs unique detail and you dont want to split it up ? Nothing wrong with 4k
    Are you using multiple small meshes in one UV to reduce drawcalls ? 4K all the way
    Especially if you do not have a high end batching solution, putting multiple meshes in one UV is a good thing to do to save performance.

    Saying 4k is too much and should be sampled down is a very strange and not reconstructive logic, as you cannot just say that without background information.

    Telling someone to just downscale his 4k just for the sake of it being 4k feels a little ignorant to me, as there is just nothing that makes a 4k worse than 4 2k maps, and you likely wouldnt tell anyone to scale his 2ks down, if they made sense right ;) ?

    Theres no generalization for texture usage I would say
  • Alphavader
    Offline / Send Message
    Alphavader polycounter lvl 11
    We use it only for Prerendered Stuff and CG
  • EarthQuake
    DevconOne wrote: »
    Saying 4k maps make no sense in a 1080p environment is just not true. That may be in a hypothetical situation where an object using a 4k is just a plane with one side.
    But actual objects usually have 6 sides+, that would want that "1080p" resolution atleast.

    Best example is a planet in a space game. It may even want to have 8k or more, depending how its done.

    Is it something huge that needs unique detail and you dont want to split it up ? Nothing wrong with 4k
    Are you using multiple small meshes in one UV to reduce drawcalls ? 4K all the way
    Especially if you do not have a high end batching solution, putting multiple meshes in one UV is a good thing to do to save performance.

    Saying 4k is too much and should be sampled down is a very strange and not reconstructive logic, as you cannot just say that without background information.

    Telling someone to just downscale his 4k just for the sake of it being 4k feels pretty ignorant to me, as there is just nothing that makes a 4k worse than 4 2k maps, and you likely wouldnt tell anyone to scale his 2ks down, if they made sense right ?

    Theres no generalization for this.

    Certainly, textures size should be set on a per case basis, and factors like the size, complexity, importance of item and viewing distance need to be taken into consideration. The previous example of a character's face that will be seen up close in a cinematic is a good example (as long as the texture density isn't noticeably different than the rest of the character's body, this always looks really weird when you have the super high res face and low res body).

    Something like a full planet, or a large section of terrain that needs a unique normal/color variation map are good examples of when you might need 4K, or even much higher resolution, but these are not typical situations in game development. For every huge global texture texture in a game you're going to have 10s or 100s of much smaller textures. I agree that without more information you can't tell someone what texture resolution to use, and really people should never ask someone else what res to use without providing in depth information.

    However, I do think its quite easily to make a general statement that 4K textures are not commonly used for your average asset in a game... Because they simply are not. Saying otherwise is misleading to less experienced artists and may give the impression that using whatever size texture you want is fine with no considerations made for texture memory or smart/optimal uv mapping.

    Again, for your average asset in a game, not a special case, viewed at moderate viewing distances, uv mapped in an efficient way, at 1080P, you're usually not going to notice the difference between 2k and 4k (and often 1K!). Its a generalization that is perfectly safe and reasonably to make as it is tends to be true. Obviously, logic and reason should always be used and nobody should blindly follow some "rules" that they find on the internet. If unsure, you should talk to your technical artist/director or engineers. Its a simple generalization, of course there will be exceptions to the generalization, however, that doesn't disprove the generalization, the key thing with a generalization is that you're talking about something in general, not absolute terms.

    In theoretical situations above, you're assuming the object takes up *the entire screen* which just isn't a reasonable use case for most things. Generally, when high texel density is needed over large surfaces, tiling textures, blended tiling textures, and detail maps are used.

    Again with the planet example, chances are 4K or even 8K is not going to be enough if you can see it from space and then land on it as well. You will need much, much, much higher density than is reasonable to fit into a single map. So you will end up using a global normal and color variation map for the large forms, mountain ridges etc, and then blended tiling textures for the detail. Perhaps some sort of streamed set of unique tiles ala google maps where you have a huge dataset if you need even more unique detail than that. This is an interesting, but very esoteric example.

    There's also the question of actual detail vs resolution. To notice a big difference between a 2k map and a 4k map you have to have two things:
    1. Unique pixel level detail for the majority of the texture (often not the case)
    2. a 1:1 or near texel to screen resolution ratio

    With all this talk about detail and texels, I think its really important to mention what tends to matter more than absolute detail, is consistent, even texel distribution in games. Whenever you have a really high res object sitting next to a low res object, it sticks out like a sore thumb. In general, I think its easier to get away with less than 1:1 texel to screen res than it is to get away with wildly varying texal density.
    But actual objects usually have 6 sides+, that would want that "1080p" resolution atleast.

    Some basic math.
    Ok, if we assume you can only see 1/6th of an object with a 4K map, you're talking about 2.7MP of resolution, which is still higher than 1080P at 2.07MP, so most likely that texture will be mipped down to 2K by the game engine. But that's assuming you have a cube that you can only see one side of at once and you're not using any mirroring/texture repeating which is very inefficient. This isn't even taking into consideration that a square object taking up all the horizontal space = 1080x1080 on screen, or 1.1MP, or less than half of a 4K texture even in your worst case 1/6th of the texture taking up the entire screen scenario.

    Most 3d objects are... three dimensional, and you will see more than 1/6th of them from any given viewing angle, say 1/3rds or 1/2 of the model at once, which puts you at 5.6MP and 8.3MP respectively, which is way higher than 1080P. So those will definitely be mipped down.

    So, for it to really make sense, that 4K mapped object needs to be significantly larger than the the entire screenspace, at which point tiling textures would be generally used.
    sprunghunt wrote: »
    I make every texture nowadays at 4096x4096 for ps4/xbone/pc spec. You can always downsample, but never upsample, despite what CSI would have you believe. Almost every engine has some kind of texture streaming technology anyway so unloading the top mips of a texture is quite easy.

    Certainty you can more easily downsize than upsize. However, I think there is a trap that artists fall into when doing very high resolution textures (not saying you do this, just something I've seen many times and even had to force myself not to do):

    Quite often, when someone works on a really high res texture, they lose sense of scale for the object, and spend way, way too much time fussing over little pixel level details that look really cool at 4K but completely vanish at 2k or 1k. If you're authoring super high res, its important to keep scale in mind and make all of your details large and readable so that the interest in the texture doesn't disappear at further viewing distances when the textures mip down or at lower texture quality settings for PC games.

    I would also be curious to know the % of assets that you end up shipping at full res, and also the % of time you see that asset in game at the highest mip. I know this isn't an easy question to answer, but perhaps something to consider.
  • Obscura
    Offline / Send Message
    Obscura grand marshal polycounter
    EarthQuake, you are always very informative and helpful :) This thread is very cool, what you said guys are pretty much confirmed my theories about this. Thanks! I am not that experienced as some of you, but personally I never used a 4k map, because it was always looking the same as the 2k (or even 1k in some cases, yes!) when I was looking at it from a reasonable distance, and not from like 5 centimeters. I hope that the layered material thing (UE4) will be a standard and more popular method in the future, because its basically solving this resolution question in every cases because you can get "infinite" resolution with it, with using not too big masks, and highly tiled textures, when still getting convincing result. I think its much more efficient than using extremely big textures.
  • EarthQuake
    Obscura wrote: »
    EarthQuake, you are always very informative and helpful :) This thread is very cool, what you said guys are pretty much confirmed my theories about this. Thanks! I am not that experienced as some of you, but personally I never used a 4k map, because it was always looking the same as the 2k (or even 1k in some cases, yes!) when I was looking at it from a reasonable distance, and not from like 5 centimeters. I hope that the layered material thing (UE4) will be a standard and more popular method in the future, because its basically solving this resolution question in every cases because you can get "infinite" resolution with it, with using not too big masks, and highly tiled textures, when still getting convincing result. I think its much more efficient than using extremely big textures.

    Yeah, tiling/blended textures for general purpose use is a very interesting topic. Generally here you're trading texture memory for shader complexity. Some game engines bake the tiled content down into unique maps so you really don't get any more resolution (the order 1886 for instance) while other engines like EU4 let you load the raw tiled content.

    One of the very cool benefits with this system is you can make global material changes that effect multiple assets just by updating a base tiling texture.
  • rogelio
    Offline / Send Message
    rogelio greentooth
    EarthQuake wrote: »
    Certainly, textures size should be set on a per case basis, and factors like the size, complexity, importance of item and viewing distance need to be taken into consideration.....

    I agree :)

    :thumbup:
  • illo
    thats the mip mapping everyone is talking about, and what is being said is: 99% of the time you wont see the full 4k map because it gets mipped down automatically. so unless you require stupidly close up shots of things, authoring at 4k doesnt give you any benefit.
  • EarthQuake
    Hermit wrote: »
    I'm wondering, don't we have a technology already that allows us to create 4k or 8k textures, but that res gets changed on the fly in-game for distance purposes, basically turning a 4k into 2k, 1k, 512 or less? Or is the full texture always kept in memory?

    This depends on the specific engine, if your engine supports streaming in textures at lower mips then no, you wouldn't load the full texture into VRAM, or if you manually cap the max texture size in your level editor it won't load the full texture either.

    But this isn't the whole story. Working on textures at 4x or 16x the size they will be viewed at in the game engine means longer bake times, longer texturing times, larger files that require faster computers and more ram to handle, with longer load/save times in photoshop, source that takes up more space on disk, and shipping content that takes up more size on disk as well. How important any of these issues are to you will of course vary.
  • EarthQuake
    Ok, some more math and science. So, this is what 4K actually looks like when mapped to a character's head that fills the frame, at 1080P. I've turned off mipping, filtering and anisotropic filtering so you can really see whats going on (with those on, the differences are further blurred, figuratively and literally).

    421k01.png

    4K is way, way too much texel density, and you see serious moire because of it, this is definitely getting mipped down
    2K is about right, still a little higher res than our screen res so even this might get mipped down(depends on how your mips are calculated or if you force a negative mip bias)
    1K is a bit less than ideal, but even then this will probably look good

    421k02.png

    Now, if we zoom in so that the eye area is basically filling the frame, you see the benefits of a 4K map vs a 2K map, though the difference between 4K and 2K would still probably be difficult to tell in a real situation. 1K is clearly too low here.

    Even still, this is operating under the assumption that your source content has enough actual pixel level detail to make a big difference, this would require very, very high resolution base highpoly mesh to bake from, or some very detailed texture work. Simply upping your baked output maps from 2K to 4K isn't going to help if you don't have the detail to support it.

    If you're getting this close, it probably makes more sense to use a set of tiling, masked skin detail textures, which would get you similar detail but with much less texture memory usage.

    Here is a breakdown of how much vertical resolution you get for the general face region at 4K, 2K and 1K
    baseuv.jpg
    Again, even 2K is plenty for filling the frame with a head at 1080P.

    When 4K TVs are a common thing and consoles can actually output 4K at 60/30fps, this will all be moot, but for today with 1080P displays, 4x4K texture maps are total overkill even with cinematic characters, unless you're really getting up close, eg, framing just the eyes (which may be a common occurrence for main characters in certain games). Another exception would be if you're doing a main character that needs a super high res texture for marketing/printing purposes where resolution demands are much higher than 1080P.

    At medium distances away, a characters head may be only 100-200 pixels tall or so, which means a 256, or 512 is what you'll see.

    If anyone has source content that holds up at 4K with unique pixel detail(unfortunately I don't), I will be happy to do the same test again to show more of a real world case.

    This also doesn't account for post effects like motion blur, grain, chromatic aberration, etc which tend to hurt acutance more than help it.
  • Quack!
    Offline / Send Message
    Quack! polycounter lvl 17
    Fantastic post EQ.

    I want to highlight this part:
    If you're getting this close, it probably makes more sense to use a set of tiling, masked skin detail textures, which would get you similar detail but with much less texture memory usage.

    As I also stated above, using masked tiling textures would allow for similar, if not higher, resolution as 1 massive texture AND it may come in cheaper in terms of texture memory budget at the cost of shader computation.

    Anyone on the fence, just test it out! Luckily in most game packages you can force the engine to move to a lower mip. So if you author a map at 4k, bring it into UE4, you can then bounce back and forth between your 2k mip and 4k mip. Often times ,even at really close distances, you won't notice the difference, except for the obvious ultra closeups and cinematics.
  • EarthQuake
    Quack! wrote: »
    Fantastic post EQ.

    I want to highlight this part:



    As I also stated above, using masked tiling textures would allow for similar, if not higher, resolution as 1 massive texture AND it may come in cheaper in terms of texture memory budget at the cost of shader computation.

    Test it out!

    Yeah, it should be significantly less memory, though at the cost of a more complex shader (which is not really a problem if you've got one mesh taking the majority of the screenspace). I've seen a lot of skin shader white papers that use this technique.

    You could use like 4 tiling 256x256(1 512's worth of memory) or 512x512 maps(1 1024's worth of memory) while dropping the base texture to 2048 or possibly even 1024.
  • Obscura
    Offline / Send Message
    Obscura grand marshal polycounter
    Yeah, tiling/blended textures for general purpose use is a very interesting topic. Generally here you're trading texture memory for shader complexity. Some game engines bake the tiled content down into unique maps so you really don't get any more resolution (the order 1886 for instance) while other engines like EU4 let you load the raw tiled content.

    Yeah I saw that pdf from the shader technology behind that game, it was really interesting. But the baking down doesn't sounds good because you loose the resolution. Then I don't really see reason for doing the layering.


    There is an example that I forgot yestarday, but its in my head again, so I write it down, I think its a good example. A 1024x1024 texture's "real size" is 36,12x36,12 centimeters. a 2k is 72,25x72,25 centimeters. a 4k is 144,5x144,5 centimeters. You have 28x28 pixels at one centimeter^2. Sounds brutal but if you would cut off the skin from your head and flatten it, it wouldn't fill even the 2k (72,25centimeters^2) paper, or it would almost fill it. So the 4k^2 is almost the 4x of the real size of a skin on a real head. What about thinking in this way? I think we would go with a lot higher surface size than the real is, when we would go with the 4k map. Sure, you can add more small details if you go with higher resolution. But I'm not sure about that the heads are showing up often from a few centimeters. You usually see them from far, or they fill the screen. So theoretically even the 2k should be enough if you don't want to show closeups from certain parts of the face.

    Please let me know if I'm thinking wrong!
  • Obscura
    Offline / Send Message
    Obscura grand marshal polycounter
    I mean you can measure the image size in centimeters for example. When I view a 1k image in ps and I switch the unit to centimeters, it says the 1k^2 (pixels)image is 36,12 centimeters^2. When I have a one centimeter^2 image and I switch the units to pixels, it says its 28x28 pixels.
  • Ashaman73
    Offline / Send Message
    Ashaman73 polycounter lvl 6
    EarthQuake wrote: »
    Ok, some more math and science. So, this is what 4K actually looks like when mapped to a character's head that fills the frame, at 1080P. I've turned off mipping, filtering and anisotropic filtering so you can really see whats going on (with those on, the differences are further blurred, figuratively and literally).
    A simple technical test is to build your own DDS texture, fill each mipmap layer with an unique color and test it out. This way you can exactly see what mipmap-level is used when rendering your model at the different distances.

    I would bet, that the next-gen texture size will not differ a lot from the last generation (720p->1080p = +50%), it is more likely that there will be more equally distributed texture resolution for the complete scene instead of super-hi and useless textures for single models.
  • Obscura
    Offline / Send Message
    Obscura grand marshal polycounter
    "Do you believe that 1/28th cm is the smallest detail that can exist in the world?" lol, no.

    I see what you mean by the DPI thing, but why is this?--> "which is of relevance only to those who work in print"

    I didn't said that my previous theory is actually good, I'm just curious about it can work in any way, or thinking this way can work.
  • marks
    Offline / Send Message
    marks greentooth
    perna wrote: »
    A texture map doesn't have a "real world size".

    Tell that to Quixel ;)
  • Obscura
    Offline / Send Message
    Obscura grand marshal polycounter
    Then the "actual size" zooming option in ps is misleading, and the unit changing too.
  • Froyok
    Offline / Send Message
    Froyok greentooth
    I thought the slides about the texture size in this talk were very interesting :
    [...]

    However, I think the skin shader still needs to be improved.
    Is it probable that Toolbag will have an updated skin shader implemented based on Jorge Jimenez's (and co workers) research and shader solution explained in this presentation? :

    (312MB)
    http://www.iryoku.com/projects/nextgen/downloads/Next-Generation-Character-Rendering-v6.pptx

    1400768454-texture_size.png
  • huffer
    Offline / Send Message
    huffer interpolator
    Obscura wrote: »
    Then the "actual size" zooming option in ps is misleading.
    The "real size" tells you that a 2048 pixel wide file would be ~10 inches wide when printed at 200dpi, or ~100 inches printed at 20dpi. You can't exactly associate real-life materials like skin with dpi (unless you're printing your unwrapped head texture to be used as a mask, then you determine the actual size in centimeters it needs, then the size in pixels). And in gaming, you'd have to take in consideration the size of the object in-game, the number of pixels per centimeter (texel ratio) it gets, the monitor resolution, the viewing distance from the object and camera field of view to make any relevance! :poly142:
  • Obscura
    Offline / Send Message
    Obscura grand marshal polycounter
    And in gaming, you'd have to take in consideration the size of the object in-game, the number of pixels per centimeter (texel ratio) it gets, the monitor resolution, the viewing distance from the object and camera field of view

    This is not a new thing to me.
    unless you're printing your unwrapped head texture to be used as a mask, then you determine the actual size in centimeters it needs, then the size in pixels

    This is almost the same thing as what I wrote earlier, when you cut off the skin from your head, and flatten it.

    Okay I measured the image sizes in ps with a ruler (seriously...) and now I see that the "actual size" is actually not the actual size.

    But what I wanted to say with the busted theory is that the 4k size is an overkill.
    if you would cut off the skin from your head and flatten it, it wouldn't fill even the 2k(like a printed texture with 2k resolution)
  • Obscura
    Offline / Send Message
    Obscura grand marshal polycounter
    Just please be aware that the theory is rooted in misconceptions and has no relevance to reality.

    This is why I said plase let me know if I'm thinking wrong. Thanks for the informations anyways!
  • Justo
    Offline / Send Message
    Justo polycounter
    Do correct me if I'm wrong, but all this time I thought it wasn't that outlandish to use a 4k atlas to texture a whole level in a tablet game, where low numbers of drawcalls is priority?
  • Hazardous
    Offline / Send Message
    Hazardous polycounter lvl 12
    EQ that breakdown with images is legendary - thanks so much for that! Can we get this stickied or added to the wiki? The man's a god-damn genius and all round top bloke to boot.
  • SeveredScion
    Offline / Send Message
    SeveredScion polycounter lvl 12
    I'm late to the party on this one, just wanted to say thanks for the super useful thread!
  • GlowingPotato
    Offline / Send Message
    GlowingPotato polycounter lvl 10
    In our Studio, we often use a 4K map for texture atlas, to reduce draw calls.
  • almighty_gir
    Offline / Send Message
    almighty_gir ngon master
    In our Studio, we often use a 4K map for texture atlas, to reduce draw calls.

    Atlases are super useful for specific pipelines and rendering techniques. for example if there are a lot of assets on screen that share the same exact material and can be combined into a single drawcall, then placing all of those textures into one large atlas makes a lot of sense.
  • FelixL
    Offline / Send Message
    FelixL polycounter lvl 4
    I don't think 4Ks are always excessive. Imagine something like a helicopter in an FPS game. It's big, you can walk up to it up close and it has an interior. A 4k wouldn't be excessive for this kind of surface area.

    Sure you can use tiling detail textures and all kinds of overlays, but there are better ways to spend the shader power. Remember the new consoles have about 5GB of memory available. On PS3/360 you'd have a texture streaming pool of about 50-100 MB. That was 10-20 percent of the total available memory just for textures. Assuming 500MB-1GB for textures, that's a tenfold increase.

    In general, if you find a 1024 or 2048 isn't enough, it's better to change the mapping and use two of them instead, rather than going from 2048 to 4k.
  • EarthQuake
    FelixL wrote: »
    I don't think 4Ks are always excessive. Imagine something like a helicopter in an FPS game. It's big, you can walk up to it up close and it has an interior. A 4k wouldn't be excessive for this kind of surface area.

    Sure you can use tiling detail textures and all kinds of overlays, but there are better ways to spend the shader power. Remember the new consoles have about 5GB of memory available. On PS3/360 you'd have a texture streaming pool of about 50-100 MB. That was 10-20 percent of the total available memory just for textures. Assuming 500MB-1GB for textures, that's a tenfold increase.

    In general, if you find a 1024 or 2048 isn't enough, it's better to change the mapping and use two of them instead, rather than going from 2048 to 4k.

    Yeah, I'm not sure anyone has said 4k is always excessive here, there are certainly situations where you're talking about very large and complex objects with a lot of unique detail that you can get close to, which make sense to use larger textures for. Large vehicles are a pretty good example of such an asset.

    The real takeaway from this thread shouldn't be NEVER USE X or ALWAYS USE Y, but rather, to understand your target resolution, the scale of your asset and how close you can get to it. At that point figuring out what sort of texture resolution you need becomes a lot easier.
  • spahr
    Offline / Send Message
    spahr polycounter lvl 8
    I dont think I can speak at technical as Earthquake, but I worked on the Battlefield Hardline vehicle team. Just about everything was made with 4096. In game, it was almost always compressed based on platform. PC left at 4096 sometimes, Gen4 at 2048, last gen at 512. Something like that. I think the mindset was to have the option to downsize, rather than be hamstrung by not being able to upsize in the future. Lots of BF4 textures had to be redone from being 1024/2048.
  • fade1
    Offline / Send Message
    fade1 polycounter lvl 14
    Using less textures per material means more performance(actually, in my experience, performace drops quite linear to texture usages). Shader instructions are not the bottleneck on next-gen.
    One example: roads in our new game are done with 4k textures, as "mixing" the texture together with more small textures would kill the framerate.
    For landscapes, big mountains or rock assets 4k is a big plus, even more would be better. Combining multiple textures in your shader would give the same result, but again, this kills the framerate.
    And remember, in next-gen shaders, you have to combine ALL your inputs, i.e. albedo, normal, etc.. so that's a heavy load and this is often the reason for bad framerates.

    On the other hand, working wth 2k and above is still a tough thing. My work monitors are still 1080p and working with huge textures(file size, converting to engine format, etc..) is still a bit slow and unhandy. You still have to fill them with the same amount of information per square meter(or whatever res you have) then in smaller texture.

    At the end of the day, you have to choose the fine line between performance and workability.
  • reedweinstock
    Offline / Send Message
    reedweinstock polycounter lvl 8
    depends on the car/vehicle. i've seen some cars that just use fancy shader work and colour values without using any actual UV's.

    @ almight_gir
    How does the shader tell the difference between car paint and something like head lights without some sort of mask?

    I know for a fact that the "Lynx" sniper rifle in call of duty ghosts has a 4k texture and the scope for it is 2k. Until 4k monitors become more common I doubt anything besides fps weapons will get a 4k texture.

    Reed
1
Sign In or Register to comment.