swap adding forces
This commit is contained in:
parent
6afbbd7e2a
commit
52e853f8ad
@ -183,12 +183,12 @@ JNIEXPORT void JNICALL Java_electrosphere_FluidSim_simulate(
|
|||||||
chunkJRaw,
|
chunkJRaw,
|
||||||
DIM,
|
DIM,
|
||||||
chunkMask,
|
chunkMask,
|
||||||
u,
|
currentChunk->u,
|
||||||
v,
|
currentChunk->v,
|
||||||
w,
|
currentChunk->w,
|
||||||
u0,
|
currentChunk->u0,
|
||||||
v0,
|
currentChunk->v0,
|
||||||
w0,
|
currentChunk->w0,
|
||||||
DIFFUSION_CONSTANT,
|
DIFFUSION_CONSTANT,
|
||||||
VISCOSITY_CONSTANT,
|
VISCOSITY_CONSTANT,
|
||||||
timestep
|
timestep
|
||||||
@ -694,6 +694,19 @@ JNIEXPORT void JNICALL Java_electrosphere_FluidSim_simulate(
|
|||||||
Java_electrosphere_FluidSim_copyNeighbors(env,chunkJRaw,DIM,chunkMask,0,3,w0);
|
Java_electrosphere_FluidSim_copyNeighbors(env,chunkJRaw,DIM,chunkMask,0,3,w0);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
///------------------------------------------------------------------------------------------------------------------------------------------------------------------------
|
||||||
|
///------------------------------------------------------------------------------------------------------------------------------------------------------------------------
|
||||||
|
///------------------------------------------------------------------------------------------------------------------------------------------------------------------------
|
||||||
|
///------------------------------------------------------------------------------------------------------------------------------------------------------------------------
|
||||||
|
///------------------------------------------------------------------------------------------------------------------------------------------------------------------------
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
//add density
|
//add density
|
||||||
{
|
{
|
||||||
for(int i = 0; i < numChunks; i++){
|
for(int i = 0; i < numChunks; i++){
|
||||||
|
|||||||
@ -17,7 +17,7 @@ JNIEXPORT jint JNICALL Java_electrosphere_FluidSim_calculateChunkMask
|
|||||||
* Signature: (II[Ljava/nio/ByteBuffer;[Ljava/nio/ByteBuffer;[Ljava/nio/ByteBuffer;[Ljava/nio/ByteBuffer;[Ljava/nio/ByteBuffer;[Ljava/nio/ByteBuffer;FFF)V
|
* Signature: (II[Ljava/nio/ByteBuffer;[Ljava/nio/ByteBuffer;[Ljava/nio/ByteBuffer;[Ljava/nio/ByteBuffer;[Ljava/nio/ByteBuffer;[Ljava/nio/ByteBuffer;FFF)V
|
||||||
*/
|
*/
|
||||||
JNIEXPORT void JNICALL Java_electrosphere_FluidSim_addSourceToVectors
|
JNIEXPORT void JNICALL Java_electrosphere_FluidSim_addSourceToVectors
|
||||||
(JNIEnv *, jobject, jint, jint, jobjectArray, jobjectArray, jobjectArray, jobjectArray, jobjectArray, jobjectArray, jfloat, jfloat, jfloat);
|
(JNIEnv *, jobject, jint, jint, float **, float **, float **, float **, float **, float **, jfloat, jfloat, jfloat);
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* Class: electrosphere_FluidSim
|
* Class: electrosphere_FluidSim
|
||||||
|
|||||||
@ -27,18 +27,18 @@ JNIEXPORT void JNICALL Java_electrosphere_FluidSim_addSourceToVectors
|
|||||||
jobject this,
|
jobject this,
|
||||||
jint N,
|
jint N,
|
||||||
jint chunk_mask,
|
jint chunk_mask,
|
||||||
jobjectArray jru,
|
float ** jru,
|
||||||
jobjectArray jrv,
|
float ** jrv,
|
||||||
jobjectArray jrw,
|
float ** jrw,
|
||||||
jobjectArray jru0,
|
float ** jru0,
|
||||||
jobjectArray jrv0,
|
float ** jrv0,
|
||||||
jobjectArray jrw0,
|
float ** jrw0,
|
||||||
jfloat DIFFUSION_CONST,
|
jfloat DIFFUSION_CONST,
|
||||||
jfloat VISCOSITY_CONST,
|
jfloat VISCOSITY_CONST,
|
||||||
jfloat dt){
|
jfloat dt){
|
||||||
add_source(N,GET_ARR(env,jru,CENTER_LOC),GET_ARR(env,jru0,CENTER_LOC),dt);
|
add_source(N,GET_ARR_RAW(env,jru,CENTER_LOC),GET_ARR_RAW(env,jru0,CENTER_LOC),dt);
|
||||||
add_source(N,GET_ARR(env,jrv,CENTER_LOC),GET_ARR(env,jrv0,CENTER_LOC),dt);
|
add_source(N,GET_ARR_RAW(env,jrv,CENTER_LOC),GET_ARR_RAW(env,jrv0,CENTER_LOC),dt);
|
||||||
add_source(N,GET_ARR(env,jrw,CENTER_LOC),GET_ARR(env,jrw0,CENTER_LOC),dt);
|
add_source(N,GET_ARR_RAW(env,jrw,CENTER_LOC),GET_ARR_RAW(env,jrw0,CENTER_LOC),dt);
|
||||||
}
|
}
|
||||||
|
|
||||||
void add_source(int N, float * x, float * s, float dt){
|
void add_source(int N, float * x, float * s, float dt){
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user