swapping arrays correctly
All checks were successful
studiorailgun/fluid-sim/pipeline/head This commit looks good
All checks were successful
studiorailgun/fluid-sim/pipeline/head This commit looks good
This commit is contained in:
parent
67f12b7eb4
commit
f1d3c3d011
@ -178,16 +178,17 @@ JNIEXPORT void JNICALL Java_electrosphere_FluidSim_simulate(
|
|||||||
{
|
{
|
||||||
//swap vector fields
|
//swap vector fields
|
||||||
for(int i = 0; i < numChunks; i++){
|
for(int i = 0; i < numChunks; i++){
|
||||||
chunkJRaw = getChunk(i);
|
Chunk * currentChunk = chunks[i];
|
||||||
chunkMask = (*env)->GetIntField(env,chunkJRaw,chunkmaskJId);
|
chunkJRaw = currentChunk->jchunk;
|
||||||
d = getBuffArr(dJId);
|
chunkMask = currentChunk->chunkMask;
|
||||||
d0 = getBuffArr(d0JId);
|
d = currentChunk->jd;
|
||||||
u = getBuffArr(uJId);
|
d0 = currentChunk->jd0;
|
||||||
v = getBuffArr(vJId);
|
u = currentChunk->ju;
|
||||||
w = getBuffArr(wJId);
|
v = currentChunk->jv;
|
||||||
u0 = getBuffArr(u0JId);
|
w = currentChunk->jw;
|
||||||
v0 = getBuffArr(v0JId);
|
u0 = currentChunk->ju0;
|
||||||
w0 = getBuffArr(w0JId);
|
v0 = currentChunk->jv0;
|
||||||
|
w0 = currentChunk->jw0;
|
||||||
setBuffArr(uJId,u0);
|
setBuffArr(uJId,u0);
|
||||||
setBuffArr(u0JId,u);
|
setBuffArr(u0JId,u);
|
||||||
|
|
||||||
@ -196,6 +197,19 @@ JNIEXPORT void JNICALL Java_electrosphere_FluidSim_simulate(
|
|||||||
|
|
||||||
setBuffArr(wJId,w0);
|
setBuffArr(wJId,w0);
|
||||||
setBuffArr(w0JId,w);
|
setBuffArr(w0JId,w);
|
||||||
|
|
||||||
|
jobject tmpObj;
|
||||||
|
tmpObj = currentChunk->ju;
|
||||||
|
currentChunk->ju = currentChunk->ju0;
|
||||||
|
currentChunk->ju0 = u;
|
||||||
|
|
||||||
|
tmpObj = currentChunk->jv;
|
||||||
|
currentChunk->jv = currentChunk->jv0;
|
||||||
|
currentChunk->jv0 = v;
|
||||||
|
|
||||||
|
tmpObj = currentChunk->jw;
|
||||||
|
currentChunk->jw = currentChunk->jw0;
|
||||||
|
currentChunk->jw0 = w;
|
||||||
}
|
}
|
||||||
//copy neighbors
|
//copy neighbors
|
||||||
for(int i = 0; i < numChunks; i++){
|
for(int i = 0; i < numChunks; i++){
|
||||||
@ -392,16 +406,17 @@ JNIEXPORT void JNICALL Java_electrosphere_FluidSim_simulate(
|
|||||||
{
|
{
|
||||||
//swap vector fields
|
//swap vector fields
|
||||||
for(int i = 0; i < numChunks; i++){
|
for(int i = 0; i < numChunks; i++){
|
||||||
chunkJRaw = getChunk(i);
|
Chunk * currentChunk = chunks[i];
|
||||||
chunkMask = (*env)->GetIntField(env,chunkJRaw,chunkmaskJId);
|
chunkJRaw = currentChunk->jchunk;
|
||||||
d = getBuffArr(dJId);
|
chunkMask = currentChunk->chunkMask;
|
||||||
d0 = getBuffArr(d0JId);
|
d = currentChunk->jd;
|
||||||
u = getBuffArr(uJId);
|
d0 = currentChunk->jd0;
|
||||||
v = getBuffArr(vJId);
|
u = currentChunk->ju;
|
||||||
w = getBuffArr(wJId);
|
v = currentChunk->jv;
|
||||||
u0 = getBuffArr(u0JId);
|
w = currentChunk->jw;
|
||||||
v0 = getBuffArr(v0JId);
|
u0 = currentChunk->ju0;
|
||||||
w0 = getBuffArr(w0JId);
|
v0 = currentChunk->jv0;
|
||||||
|
w0 = currentChunk->jw0;
|
||||||
setBuffArr(uJId,u0);
|
setBuffArr(uJId,u0);
|
||||||
setBuffArr(u0JId,u);
|
setBuffArr(u0JId,u);
|
||||||
|
|
||||||
@ -410,6 +425,19 @@ JNIEXPORT void JNICALL Java_electrosphere_FluidSim_simulate(
|
|||||||
|
|
||||||
setBuffArr(wJId,w0);
|
setBuffArr(wJId,w0);
|
||||||
setBuffArr(w0JId,w);
|
setBuffArr(w0JId,w);
|
||||||
|
|
||||||
|
jobject tmpObj;
|
||||||
|
tmpObj = currentChunk->ju;
|
||||||
|
currentChunk->ju = currentChunk->ju0;
|
||||||
|
currentChunk->ju0 = u;
|
||||||
|
|
||||||
|
tmpObj = currentChunk->jv;
|
||||||
|
currentChunk->jv = currentChunk->jv0;
|
||||||
|
currentChunk->jv0 = v;
|
||||||
|
|
||||||
|
tmpObj = currentChunk->jw;
|
||||||
|
currentChunk->jw = currentChunk->jw0;
|
||||||
|
currentChunk->jw0 = w;
|
||||||
}
|
}
|
||||||
//copy neighbors
|
//copy neighbors
|
||||||
for(int i = 0; i < numChunks; i++){
|
for(int i = 0; i < numChunks; i++){
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user