new Matrix(new Vec(rshift, depth, halfup)),
new Matrix(new Vec(lshift, -depth, halfup)),
new Matrix(new Vec(rshift, -depth, halfup)),
- /*
- new Matrix(new Vec(lshift, depth, -halfup)),
- new Matrix(new Vec(rshift, depth, -halfup)),
- new Matrix(new Vec(lshift, -depth, -halfup)),
- new Matrix(new Vec(rshift, -depth, -halfup)),
- */
new Matrix(new Vec(lshift, 0, height)),
new Matrix(new Vec(rshift, 0, height)),
new Matrix(new Vec( width, 0, 0)),
new Matrix(new Vec(-width, 0, 0)),
+
};
tile.score_against = goal;
goal.score_against = tile;
+ tile.tilemesh = true;
}
public synchronized void breakit() {
}
public synchronized void rand(float temp, Mesh.Vert p) {
- double tile_score = tile.score();
- double goal_score = goal.score();
//p.reComputeError();
p.reComputeErrorAround();
+ double tile_score = tile.score();
+ double goal_score = goal.score();
- Vec v = new Vec((random.nextFloat() - (float)0.5) / 400,
- (random.nextFloat() - (float)0.5) / 400,
- (random.nextFloat() - (float)0.5) / 400);
+ Vec v = new Vec((random.nextFloat() - (float)0.5) / 200,
+ (random.nextFloat() - (float)0.5) / 200,
+ (random.nextFloat() - (float)0.5) / 200);
/*
Matrix inv = p.errorQuadric();
- Vec v = new Vec(inv.d, inv.h, inv.l).norm().times(1/(float)1000);
+ v = new Vec(inv.d, inv.h, inv.l).norm().times(1/(float)1000);
*/
+
boolean good = p.move(v);
p.reComputeErrorAround();
if (breaks) {
breaks = false;
breakit();
+ //gamma = 1;
gamma = 2;
//temp = last * 0.8f;
//last = temp;
} else {
breakit();
gamma = 2;
+ //gamma = 1;
//temp = last * 0.8f;
//last = temp;
//temp = hightemp;