chunk level pressure/density transfer
Some checks failed
studiorailgun/Renderer/pipeline/head There was a failure building this commit

This commit is contained in:
austin 2024-12-19 19:43:53 -05:00
parent b5cd111e34
commit ec5a9b3a65

View File

@ -290,6 +290,19 @@ public class ServerFluidManager {
ServerFluidChunk fluidChunk = this.getChunk(worldX, worldY, worldZ);
if(fluidChunk.isAllocated() && !fluidChunk.isAsleep()){
this.simulationQueue.add(fluidChunk);
for(int i = 0; i < 27; i++){
if(fluidChunk.neighbors[i] != null){
fluidChunk.pressureIncoming[i] = fluidChunk.neighbors[i].pressureOutgoing[ServerFluidChunk.CENTER_BUFF];
fluidChunk.pressureOutgoing[i] = 0;
fluidChunk.densityIncoming[i] = fluidChunk.neighbors[i].densityOutgoing[ServerFluidChunk.CENTER_BUFF];
fluidChunk.densityOutgoing[i] = 0;
} else {
fluidChunk.pressureIncoming[i] = 0;
fluidChunk.pressureOutgoing[i] = 0;
fluidChunk.densityIncoming[i] = 0;
fluidChunk.densityOutgoing[i] = 0;
}
}
}
}
}