createobj

Benchmark created on


Setup

var entities = {};
    for (var i = 0; i < 900; ++i) entities[i] = {
      x: 10,
      y: 10,
      view: {}
    };
    var viewport = {
      x: 10,
      y: 10,
      offsetX: 20,
      offsetY: 20
    };
    var toViewPos = function(x, y) {
      return {
        x: x - viewport.x + viewport.offsetX,
        y: y - viewport.y + viewport.offsetY
      };
    };

Test runner

Ready to run.

Testing in
TestOps/sec
testtimer
for (var id in entities) {
  var entity = entities[id],
    p, angle;
  if (!entity.view) continue;
  if (entity.lerpViewPos) {
    entity.view = entity.lerpViewPos();
    entity.view.angle = entity.lerpAngle();
  } else {
    entity.view = toViewPos(entity.x, entity.y);
    entity.view.angle = entity.angle;
  }
}
ready
testtimer
for (var id in entities) {
  var entity = entities[id],
    p, angle;
  if (!entity.view) continue;
  if (entity.lerpViewPos) {
    entity.view = entity.lerpViewPos();
    entity.view.angle = entity.lerpAngle();
  } else {
    entity.view = toViewPos(entity.x, entity.y);
    entity.view.angle = entity.angle;
  }
}
ready

Revisions

You can edit these tests or add more tests to this page by appending /edit to the URL.