Revision 9f9924f8
Added by Leszek Koltunski over 3 years ago
src/main/java/org/distorted/library/main/DistortedLibrary.java | ||
---|---|---|
264 | 264 |
|
265 | 265 |
mMainProgramH = mMainProgram.getProgramHandle(); |
266 | 266 |
EffectQueue.getUniforms(mMainProgramH,0); |
267 |
MeshBase.getUniforms(mMainProgramH,0); |
|
267 | 268 |
mMainTextureH= GLES30.glGetUniformLocation( mMainProgramH, "u_Texture"); |
268 | 269 |
mTransformFeedbackH= GLES30.glGetUniformLocation( mMainProgramH, "u_TransformFeedback"); |
269 | 270 |
|
... | ... | |
362 | 363 |
|
363 | 364 |
mFullProgramH = mFullProgram.getProgramHandle(); |
364 | 365 |
EffectQueue.getUniforms(mFullProgramH,3); |
366 |
MeshBase.getUniforms(mFullProgramH,3); |
|
365 | 367 |
} |
366 | 368 |
|
367 | 369 |
/////////////////////////////////////////////////////////////////////////////////////////////////// |
... | ... | |
396 | 398 |
|
397 | 399 |
mMainOITProgramH = mMainOITProgram.getProgramHandle(); |
398 | 400 |
EffectQueue.getUniforms(mMainOITProgramH,1); |
401 |
MeshBase.getUniforms(mMainOITProgramH,1); |
|
399 | 402 |
mMainOITTextureH = GLES30.glGetUniformLocation( mMainOITProgramH, "u_Texture"); |
400 | 403 |
mMainOITSizeH = GLES30.glGetUniformLocation( mMainOITProgramH, "u_Size"); |
401 | 404 |
mMainOITNumRecordsH = GLES30.glGetUniformLocation( mMainOITProgramH, "u_numRecords"); |
... | ... | |
545 | 548 |
mesh.bindVertexAttribs(mFullProgram); |
546 | 549 |
queue.compute(1); |
547 | 550 |
queue.send(0.0f,3); |
548 |
mesh.send(mFullProgramH); |
|
551 |
mesh.send(mFullProgramH,3);
|
|
549 | 552 |
|
550 | 553 |
GLES30.glBindBufferBase(GLES30.GL_TRANSFORM_FEEDBACK_BUFFER, 0, tfo ); |
551 | 554 |
GLES30.glBeginTransformFeedback( GLES30.GL_POINTS); |
... | ... | |
573 | 576 |
GLES30.glUniform2ui(mMainOITSizeH, surface.mWidth, surface.mHeight); |
574 | 577 |
GLES30.glUniform1ui(mMainOITNumRecordsH, (int)(mBufferSize*surface.mWidth*surface.mHeight) ); |
575 | 578 |
mesh.bindVertexAttribs(mMainOITProgram); |
576 |
mesh.send(mMainOITProgramH); |
|
579 |
mesh.send(mMainOITProgramH,1);
|
|
577 | 580 |
|
578 | 581 |
float inflate = mesh.getInflate(); |
579 | 582 |
float distance = surface.mDistance; |
... | ... | |
586 | 589 |
if( mesh.getShowNormals() ) |
587 | 590 |
{ |
588 | 591 |
mMainProgram.useProgram(); |
589 |
mesh.send(mMainProgramH); |
|
592 |
mesh.send(mMainProgramH,0);
|
|
590 | 593 |
EffectQueue.send(queues, distance, mipmap, projection, inflate, 0 ); |
591 | 594 |
displayNormals(projection,mesh); |
592 | 595 |
} |
... | ... | |
607 | 610 |
mMainProgram.useProgram(); |
608 | 611 |
GLES30.glUniform1i(DistortedLibrary.mMainTextureH, 0); |
609 | 612 |
mesh.bindVertexAttribs(DistortedLibrary.mMainProgram); |
610 |
mesh.send(mMainProgramH); |
|
613 |
mesh.send(mMainProgramH,0);
|
|
611 | 614 |
|
612 | 615 |
float inflate = mesh.getInflate(); |
613 | 616 |
float distance = surface.mDistance; |
Also available in: Unified diff
Remove the 'binding' parameter from the UBO in the vertex shader - this is not part of OpenGL ES 3.0, only introduced in 3.1, and we want to be compatible with 3.0.
Now we need to dynamically detect the UBO index and form a BlockBinding ourselves.