Building my own benchmarking program

So, I’m doing some research for my next game. I want to know how many polys the Web Player can take. I make an empty scene and made a script that instantiates an object with 1000 triangles every .01 seconds. It will instantiate it within a box 200 units wide. I have the camera going around in an animation pattern.

You can play it here:

This should give me an OK benchmarking program, right? I mean, I know that AI scripts and the like will slow it down, but this is a good ballpark, right?

Script below (in UnityScript):
#pragma strict

var object : GameObject[];
var guiVerts : GUIText;

var waitTime : float;

var numOfVerts : int = 0;

var theBox : float;

private var goAhead : boolean = true;
private var wereDone : boolean = false;

function Update () 
	guiVerts.text = "Number of Vertices:  "+numOfVerts.ToString();

		wereDone = true;


function SpawnObject()
	goAhead = false;
	var modelNumber = Random.Range(0, 3);
	var randomNumX = Random.Range(-theBox, theBox);
	var randomNumY = Random.Range(-theBox, theBox);
	var randomNumZ = Random.Range(-theBox, theBox);
	var pos : Vector3 = Vector3(randomNumX, randomNumY, randomNumZ);
	var clone = Instantiate(object[modelNumber], pos, transform.rotation);
	numOfVerts += 1000;
	yield WaitForSeconds(waitTime);
	if(wereDone == false)
		goAhead = true;


No, it’s not a good benchmark.

Graphics cards these days can do a quijillion triangles per second- that’s not the bottlneck at all.
High draw calls from multiple materials and animating multiple skinned meshes are what are going to slow a game down. And OnGUI. And big loops in Update that check distances and such.

But your test scene isn’t testing any of those things so it isn’t really testing anything.