Draw calls not batch for simple cube prefab

OK I have a simple cube that has a simple material applied to it with a custom texture of 64 x 64. And my code looks something like this:

public Transform brick;

void Start () {
    for (int i = 1; i < 5; i++) {
	    for (int j = 0; j < 10; j++) {
	        Transform temp = (Transform)Instantiate(brick, new Vector3((-2.5f+i),(0),(0.5f+j)), Quaternion.identity);
	    }
    }
}

All I am trying to do is build a simple road, but I need them as single objects so that I can turn off their renderer’s dynamically. But the problem I am having is that none of the objects are being dynamically batched and I am producing 72 draw calls. And now I need to duplicate this still at least 3 more times. And the draw calls still don’t batch when I use a basic color material, only when I remove the material all together do they finally batch. Been pulling my hair out for days, any help would be greatly appreciated.

Look at this forum thread: How to get Dynamic Batching to work?

Here is a short summary of what can go wrong (answers by @Dreamora and @Cameron):

  1. you use lightmaps
  2. you don’t use uniform scaling (try with no scaling at all aside of the default 1 1 1)
  3. the material is transparent which has impacts on batching
  4. they are not meshes but skinned meshes and have skinned mesh renderers which will not batch at all
  5. same goes for softbody stuff.
  6. same option regarding shadows in all renderers (or no shadow at all is even better)
  7. “cast shadows” looks like to be breaking the dynamic batching, while “receive shadows” should work (don’t ask me why, and I didn’t test it)