Question for SKILLED developers only. Texture sizes 1024 vs 2048, please help.

hello all…

one question for SKILLED developers only.

me and one more guy are making modular buildings pack, theme is brick buildings.
we want it to be unity 5 ready, futureproof, AAA ready, etc… basically really high quality.
we did most of the models already, and now we are a bit stuck at making atlas for different brick textures. atlas sizes will be 4k.

we cant decide if we want to go with 1024 or 2048px for brick texture
IF we go with 2k brick textures, every developer can still downscale that 4k atlas to 2k atlas, and he will get 1024px textures out of it. or every user can still downscale it in video options screen in the game.
problem is, then we will need atleast, 1 more atlas. so 1 more drawcall per building. (except if developer just goes with 1 brick style across whole building, which would mean he just uses 1 atlas on that building, so they would not get 1 more drawcall)

in latest assassins creed:unity fiasco, i’ve read that game uses 40-50k drawcalls. and that maximum for directx 11 is 7k-10k.
so if i do some maths. 1 building: 1 drawcall for windows material, 1 drawcall for doors/misc material, 1 drawcall for brick textures, Optional: 1 drawcall for additional brick textures
that comes to 1 building = 3 or 4 drawcalls. lets say 4 drawcalls for example, so 100 buildings on screen, gives you 400 drawcalls, which i believe is still really good for optimization/performance.

what do you guys think?
like i said, please only people that know what they are talking about should reply.
i attached pic of 1k vs 2k brick texture, side by side, that little cube is middle as you can see.


1 Like

I don’t know what I am talking about so I can’t reply.

Sorry. I couldn’t resist.

12 Likes

i know… that temptation. :slight_smile:

anyways, we are heavily leaning towards 2048px brick textures.

afterall modern PC’s are quite beasts thesedays…

Make them high resolution, change the import settings to 1024.

No one can tell you what resolution someone else’s game should be at. We especially can’t tell you what your asset pack for yet another someone else’s game should be. Half the time, even experienced developers can’t say at the start what resolution will be right for their own game. That’s why Unity created import settings. Use them.

2 Likes

i do understand all about import settings, as mentioned in my post…

the only problem i had, is that then i would have to increase drawcalls.
but yeh as i said, i’ve come to realize that its not really an issue, 4 drawcalls per building, not really a problem

1024 * 2 = 2048

Thanks for clarifying that. :slight_smile:

I was going to read, but I wasn’t SKILLED enough to respond anyway…

6 Likes

1024*4 = 2048 in context.

3 Likes

Skilled developer here… (i’m kidding, I have no f****** idea what I’m doing)

However, why do you think AAA = 2048 texture?

3 Likes

Just stress test it!

Rig a quick prototype with basic textured models and the viewpoint you will have in game then try it with 1028 and 2048 texture sizes to see the difference in performance in Unity. Ensure you use static, occlusion. MIP mapping and LOD settings you will use in your game.

I’m guessing in the time you spent writing this thread you could have built and run a few tests.

2048 for a brick wall is pushing it. You want large textures that are not tileable for the main focus. A brick wall @ 512 nicely tiled and broken up with other environment or decal objects will do just fine for a quality grfx based game. You want a good texture atlas then all those other small things like road signs, caution stripes, pole textures, sidewalk sections and similar should all be on the same atlas with objects that use custom UV mappings to pick up the atlas members. I can get a whole street worth of textures on a 2048x2048 and almost a whole town on a 4096x4096. I can get 16 brick texture variations on one 2048. You want to leave room for logic, AI, nav and physx

4 Likes

More is always better. If you were a pro you would know.

must.become.pro.

resizes all textures

#AAA

10 Likes

Now u no

the wizard is wise

2 Likes

goddamn, this. i’m using 2048 textures only for landscapes at the moment. I’ll see about other things, but i sure as heck won’t be using that much on a brick wall. A reasonably sized texture and a normal map should cover the needs

Yeah, I think the OP is a bit off. ( pun intended) For details and unique things you would want to put on a 2k or 4k, but for something like a brick wall, you can do very high quality at 512.

1 Like

this says enough… https://www.unrealengine.com/showcase/amazing-one-texture-enviroment

5 Likes

I’m not quite sure why you’d have to be “skilled” to answer this :smile:. I’m sure a lot of beginners would know…!

Also DX11 isn’t limited to 7 - 10K draw calls, but you can bet your sweet cherries some graphics cards might have a problem with it. Batch / merge / use color map ID’s (shared maps singular mats with instances), many ways to skin this puppy.

@ippdev

There should be no issues in this day and age using 4K textures all over the place for desktop and console with no (or little) impact to performance because they’re all streamed in, 90% of issues come from dynamic shadows and lighting / GI which if you bake doesn’t become an issue any more… (That’s obviously if you can) A 512 texture for anything but background material in this day and age, ohhh no! :smile:

I’ve tried this in a game that’s 32X32KM Squared (for one segment) with a metric ton of foliage and trees with a load of meshes running 60+ FPS on a GTX 460.