MPC Actuator support

This commit is contained in:
Daniel Mills 2021-07-27 17:24:17 -04:00
parent 8d967856b5
commit 48f581525e
4 changed files with 21 additions and 9 deletions

View File

@ -63,7 +63,7 @@ public class IrisBiomeActuator extends EngineAssignedActuator<Biome> {
@BlockCoordinates
@Override
public void onActuate(int x, int z, Hunk<Biome> h) {
public void onActuate(int x, int z, Hunk<Biome> h, boolean multicore) {
PrecisionStopwatch p = PrecisionStopwatch.start();
int zf, maxHeight;
IrisBiome ib;

View File

@ -80,7 +80,7 @@ public class IrisDecorantActuator extends EngineAssignedActuator<BlockData> {
@BlockCoordinates
@Override
public void onActuate(int x, int z, Hunk<BlockData> output) {
public void onActuate(int x, int z, Hunk<BlockData> output, boolean multicore) {
if (!getEngine().getDimension().isDecorate()) {
return;
}

View File

@ -53,7 +53,7 @@ public class IrisTerrainIslandActuator extends EngineAssignedActuator<BlockData>
@BlockCoordinates
@Override
public void onActuate(int x, int z, Hunk<BlockData> h) {
public void onActuate(int x, int z, Hunk<BlockData> h, boolean multicore) {
PrecisionStopwatch p = PrecisionStopwatch.start();
int i, zf, depth, surface, realX, realZ;
IrisBiome biome;

View File

@ -51,8 +51,11 @@ public class IrisTerrainNormalActuator extends EngineAssignedActuator<BlockData>
@BlockCoordinates
@Override
public void onActuate(int x, int z, Hunk<BlockData> h) {
public void onActuate(int x, int z, Hunk<BlockData> h, boolean multicore) {
PrecisionStopwatch p = PrecisionStopwatch.start();
if(multicore)
{
BurstExecutor e = getEngine().burst().burst(h.getWidth());
for (int xf = 0; xf < h.getWidth(); xf++) {
int finalXf = xf;
@ -60,6 +63,15 @@ public class IrisTerrainNormalActuator extends EngineAssignedActuator<BlockData>
}
e.complete();
}
else
{
for (int xf = 0; xf < h.getWidth(); xf++) {
terrainSliver(x, z, xf, h);
}
}
getEngine().getMetrics().getTerrain().put(p.getMilliseconds());
}