gBuildScores = gpu.createKernel(function(agents, r){
var currentState = agents[this.thread.y][this.thread.x];
var winState = (currentState + 1) % 3;
var nextState = currentState;
var score = 0;
var radius = Math.floor(r);
for (var i = -radius; i <= radius; i++) {
var p = (this.thread.y + i + 640) % 640;
for (var j = -radius; j <= radius; j++) {
var q = (this.thread.x + j + 640) % 640;
if (agents[p][q] == winState) {
score +=0;
} else if (agents[p][q] == currentState) {
score +=1;
} else {
score +=2;
}
}
}
return score;
}).setOutput([640, 640]);