Terrain... 2000 drawcalls?

Is it normal?

Yupp if you go overboard with multiple terrains or large size terrains and paint it with more than 4 textures, add foliage and detail objects that happens pretty easily.

The terrain does not use the mesh class and in consequence does not respect stuff like batching etc at all.

Problem is, I only have one terrain with nothing else on it, just some splatmapping.

Sure, the terrain is 2048 resolution but I wouldn’t expect this loss of performance.
Even if you will slice the terrain in 16 pieces per side, you still come up with only 256 parts… and you only have some of them rendered in the frustum.
And for a 2048 resolution terrain a 1/16 chunk is 1281282=32768 tri each.
If Unity is splicing the terrain in smaller chunks it’s an error imho.

I tried another engine’s terrain system and it was much better on performance and also you could configure the chunks size of terrain so to optimize the number of drawcalls.

Also, maybe I’m wrong on this, but I think that in earlier versions of Unity it was better optimized, I don’t recall having seen something similar in number of drawcalls ever.

Adjusting the pixel error slider will change the amount of detail, and therefore the number of meshes. A 513x513 terrain with 4 textures and 1 light source will have around 50-200 draw calls, depending on complexity, pixel error, and position of the camera. The only way you should be able to get a 2049x2049 terrain to 2000 draw calls would be with a quite complex terrain and a low pixel error setting.

It works the same in Unity 3.5 as earlier versions.

–Eric

also splitting the terrain to multiple terrains will only make it worse actually, as that means new meshes for granted not ‘potentially’ as its the case with a single terrain.

And another thing not mentioned before but thats common knowledge: pixel lights cause redraws of each hit object, this holds for every mesh including terrains which consist of several dozen meshes easily if you don’t have a 100+ pixel (around 13 is the first time you might see a real change in the numbers, but up to 100 they are relatively limited), so the more pixel lights you have the more drawcalls you will have.

Thank you for reply, guys.
I raised a bit the pixel error and things are better, though not so much.
Terrain looks still too much blocky for my tastes, how the hell do the other developers?

Also, I would like to have normal maps and specular on the terrain, I remember a thread about somebody who realized it but can’t find it…