final JCGLShadersType s = g3.shaders();
@Test public final void testSumFloatArray() throws Exception { final JCGLInterfaceGL33Type g3 = this.getGL33(); final JCGLShadersType s = g3.shaders(); final JCGLVertexShaderType v = s.shaderCompileVertex( "uniform_eval", this.getShaderLines("uniform_eval.vert")); final JCGLFragmentShaderType f = s.shaderCompileFragment( "uniform_eval_float", this.getShaderLines("uniform_eval_float.frag")); final JCGLProgramShaderType p = s.shaderLinkProgram( "uniform_eval_float", v, Optional.empty(), f); final JCGLShaderTestFunctionEvaluator eval = new JCGLShaderTestFunctionEvaluator(g3, p); final FloatBuffer fb = ByteBuffer.allocateDirect(8 * 4) .order(ByteOrder.nativeOrder()) .asFloatBuffer(); for (int index = 0; index < 8; ++index) { fb.put(index, 1.0f); } final Vector4D r = eval.evaluateArrayF(fb); System.out.println(r); Assert.assertEquals(8.0, r.x(), 0.0); }
@Test public final void testSumVector2fArray() throws Exception { final JCGLInterfaceGL33Type g3 = this.getGL33(); final JCGLShadersType s = g3.shaders(); final JCGLVertexShaderType v = s.shaderCompileVertex( "uniform_eval", this.getShaderLines("uniform_eval.vert")); final JCGLFragmentShaderType f = s.shaderCompileFragment( "uniform_eval_vec2", this.getShaderLines("uniform_eval_vec2.frag")); final JCGLProgramShaderType p = s.shaderLinkProgram( "uniform_eval_vec2", v, Optional.empty(), f); final JCGLShaderTestFunctionEvaluator eval = new JCGLShaderTestFunctionEvaluator(g3, p); final FloatBuffer fb = ByteBuffer.allocateDirect(8 * (2 * 4)) .order(ByteOrder.nativeOrder()) .asFloatBuffer(); for (int index = 0; index < 8; ++index) { fb.put((index * 2) + 0, 1.0f); fb.put((index * 2) + 1, 2.0f); } final Vector4D r = eval.evaluateArrayF(fb); System.out.println(r); Assert.assertEquals(8.0, r.x(), 0.0); Assert.assertEquals(16.0, r.y(), 0.0); }
final JCGLShadersType s = g3.shaders();
final JCGLShadersType s = g3.shaders();
final JCGLClearType g_c = g.clearing(); final JCGLDrawType g_d = g.drawing(); final JCGLShadersType g_sh = g.shaders(); final JCGLTexturesType g_tex = g.textures();
final JCGLClearType g_c = g.clearing(); final JCGLDrawType g_d = g.drawing(); final JCGLShadersType g_sh = g.shaders(); final JCGLTexturesType g_tex = g.textures();
@Override public void onFinish(final JCGLInterfaceGL33Type g) { final JCGLArrayBuffersType g_ab = g.arrayBuffers(); final JCGLArrayObjectsType g_ao = g.arrayObjects(); final JCGLIndexBuffersType g_ib = g.indexBuffers(); final JCGLShadersType g_sh = g.shaders(); /* * Delete everything. */ g_ib.indexBufferDelete(this.index_buffer); g_ab.arrayBufferDelete(this.array_buffer); g_ao.arrayObjectDelete(this.array_object); g_sh.shaderDeleteProgram(this.program); } }
@Override public void onFinish(final JCGLInterfaceGL33Type g) { final JCGLArrayBuffersType g_ab = g.arrayBuffers(); final JCGLArrayObjectsType g_ao = g.arrayObjects(); final JCGLIndexBuffersType g_ib = g.indexBuffers(); final JCGLShadersType g_sh = g.shaders(); /* * Delete everything. */ g_ib.indexBufferDelete(this.index_buffer); g_ab.arrayBufferDelete(this.array_buffer); g_ao.arrayObjectDelete(this.array_object); g_sh.shaderDeleteProgram(this.program); } }
@Override public void onFinish(final JCGLInterfaceGL33Type g) { final JCGLArrayBuffersType g_ab = g.arrayBuffers(); final JCGLArrayObjectsType g_ao = g.arrayObjects(); final JCGLIndexBuffersType g_ib = g.indexBuffers(); final JCGLShadersType g_sh = g.shaders(); /* * Delete everything. */ g_ib.indexBufferDelete(this.index_buffer); g_ab.arrayBufferDelete(this.array_buffer); g_ao.arrayObjectDelete(this.array_object); g_sh.shaderDeleteProgram(this.program); } }
@Override public void onFinish(final JCGLInterfaceGL33Type g) { final JCGLArrayBuffersType g_ab = g.arrayBuffers(); final JCGLArrayObjectsType g_ao = g.arrayObjects(); final JCGLIndexBuffersType g_ib = g.indexBuffers(); final JCGLShadersType g_sh = g.shaders(); /* * Delete everything. */ g_ib.indexBufferDelete(this.index_buffer); g_ab.arrayBufferDelete(this.array_buffer); g_ao.arrayObjectDelete(this.array_object); g_sh.shaderDeleteProgram(this.program); } }
@Override public void onFinish(final JCGLInterfaceGL33Type g) { final JCGLArrayBuffersType g_ab = g.arrayBuffers(); final JCGLArrayObjectsType g_ao = g.arrayObjects(); final JCGLIndexBuffersType g_ib = g.indexBuffers(); final JCGLShadersType g_sh = g.shaders(); /* * Delete everything. */ g_ib.indexBufferDelete(this.index_buffer); g_ab.arrayBufferDelete(this.array_buffer); g_ao.arrayObjectDelete(this.array_object); g_sh.shaderDeleteProgram(this.program); } }
@Override public void onFinish(final JCGLInterfaceGL33Type g) { final JCGLArrayBuffersType g_ab = g.arrayBuffers(); final JCGLArrayObjectsType g_ao = g.arrayObjects(); final JCGLIndexBuffersType g_ib = g.indexBuffers(); final JCGLShadersType g_sh = g.shaders(); /* * Delete everything. */ g_ib.indexBufferDelete(this.index_buffer); g_ab.arrayBufferDelete(this.array_buffer); g_ao.arrayObjectDelete(this.array_object); g_sh.shaderDeleteProgram(this.program); } }
@Override public void onFinish(final JCGLInterfaceGL33Type g) { final JCGLArrayBuffersType g_ab = g.arrayBuffers(); final JCGLArrayObjectsType g_ao = g.arrayObjects(); final JCGLIndexBuffersType g_ib = g.indexBuffers(); final JCGLShadersType g_sh = g.shaders(); /* * Delete everything. */ g_ib.indexBufferDelete(this.index_buffer); g_ab.arrayBufferDelete(this.array_buffer); g_ao.arrayObjectDelete(this.array_object); g_sh.shaderDeleteProgram(this.program); } }
final JCGLClearType g_c = g.clearing(); final JCGLDrawType g_d = g.drawing(); final JCGLShadersType g_sh = g.shaders();
@Override public void onRender(final JCGLInterfaceGL33Type g) { final JCGLArrayObjectsType g_ao = g.arrayObjects(); final JCGLClearType g_c = g.clearing(); final JCGLDrawType g_d = g.drawing(); final JCGLShadersType g_sh = g.shaders(); /* * Clear the window. */ g_c.clear(this.clear); /* * Activate the program, bind the created array object, draw a triangle. */ g_sh.shaderActivateProgram(this.program); g_ao.arrayObjectBind(this.array_object); g_d.drawElements(JCGLPrimitives.PRIMITIVE_TRIANGLES); g_ao.arrayObjectUnbind(); g_sh.shaderDeactivateProgram(); }
@Override public void onRender(final JCGLInterfaceGL33Type g) { final JCGLArrayObjectsType g_ao = g.arrayObjects(); final JCGLClearType g_c = g.clearing(); final JCGLDrawType g_d = g.drawing(); final JCGLShadersType g_sh = g.shaders(); final JCGLTexturesType g_tex = g.textures(); /* * Clear the window. */ g_c.clear(this.clear); /* * Activate the program, bind the created array object, draw a triangle. */ final List<JCGLTextureUnitType> units = g_tex.textureGetUnits(); final JCGLTextureUnitType u0 = units.get(0); g_tex.texture2DBind(u0, this.texture); g_sh.shaderActivateProgram(this.program); g_sh.shaderUniformPutTexture2DUnit(this.texture_uniform, u0); g_ao.arrayObjectBind(this.array_object); g_d.drawElements(JCGLPrimitives.PRIMITIVE_TRIANGLES); g_ao.arrayObjectUnbind(); g_sh.shaderDeactivateProgram(); }
final Vector4D x) final JCGLShadersType gs = this.gl.shaders(); final JCGLTexturesType gt = this.gl.textures(); final JCGLArrayObjectsType ga = this.gl.arrayObjects();
final FloatBuffer x) final JCGLShadersType gs = this.gl.shaders(); final JCGLTexturesType gt = this.gl.textures(); final JCGLArrayObjectsType ga = this.gl.arrayObjects();
final JCGLClearType g_c = g.clearing(); final JCGLDrawType g_d = g.drawing(); final JCGLShadersType g_sh = g.shaders(); final JCGLTexturesType g_tex = g.textures();