@Test public final void testProgramUniformVector3fCorrect() { final JCGLShadersType s = this.getShaders("main"); final JCGLVertexShaderType v = s.shaderCompileVertex("uniforms0", this.getShaderLines("uniforms0.vert")); final JCGLFragmentShaderType f = s.shaderCompileFragment("valid0", this.getShaderLines("valid0.frag")); final JCGLProgramShaderType p = s.shaderLinkProgram("uniforms0", v, Optional.empty(), f); final Map<String, JCGLProgramUniformType> us = p.getUniforms(); Assert.assertTrue(us.containsKey("fv3")); final JCGLProgramUniformType u = us.get("fv3"); Assert.assertEquals(JCGLType.TYPE_FLOAT_VECTOR_3, u.getType()); s.shaderActivateProgram(p); s.shaderUniformPutVector3f(u, VectorI3F.ZERO); }
@Test public final void testProgramUniformVector3fCorrect() { final JCGLShadersType s = this.getShaders("main"); final JCGLVertexShaderType v = s.shaderCompileVertex("uniforms0", this.getShaderLines("uniforms0.vert")); final JCGLFragmentShaderType f = s.shaderCompileFragment("valid0", this.getShaderLines("valid0.frag")); final JCGLProgramShaderType p = s.shaderLinkProgram("uniforms0", v, Optional.empty(), f); final Map<String, JCGLProgramUniformType> us = p.uniforms(); Assert.assertTrue(us.containsKey("fv3")); final JCGLProgramUniformType u = us.get("fv3"); Assert.assertEquals(JCGLType.TYPE_FLOAT_VECTOR_3, u.type()); s.shaderActivateProgram(p); s.shaderUniformPutVector3f(u, Vectors3D.zero()); }
@Test public final void testProgramUniformVector3fWrong() { final JCGLShadersType s = this.getShaders("main"); final JCGLVertexShaderType v = s.shaderCompileVertex("uniforms0", this.getShaderLines("uniforms0.vert")); final JCGLFragmentShaderType f = s.shaderCompileFragment("valid0", this.getShaderLines("valid0.frag")); final JCGLProgramShaderType p = s.shaderLinkProgram("uniforms0", v, Optional.empty(), f); final Map<String, JCGLProgramUniformType> us = p.getUniforms(); Assert.assertTrue(us.containsKey("b")); final JCGLProgramUniformType u = us.get("b"); Assert.assertEquals(JCGLType.TYPE_BOOLEAN, u.getType()); s.shaderActivateProgram(p); this.expected.expect(JCGLExceptionProgramTypeError.class); s.shaderUniformPutVector3f(u, VectorI3F.ZERO); }
@Test public final void testProgramUniformVector3fNotActive() { final JCGLShadersType s = this.getShaders("main"); final JCGLVertexShaderType v = s.shaderCompileVertex("uniforms0", this.getShaderLines("uniforms0.vert")); final JCGLFragmentShaderType f = s.shaderCompileFragment("valid0", this.getShaderLines("valid0.frag")); final JCGLProgramShaderType p = s.shaderLinkProgram("uniforms0", v, Optional.empty(), f); final Map<String, JCGLProgramUniformType> us = p.getUniforms(); Assert.assertTrue(us.containsKey("fv3")); final JCGLProgramUniformType u = us.get("fv3"); Assert.assertEquals(JCGLType.TYPE_FLOAT_VECTOR_3, u.getType()); s.shaderDeactivateProgram(); this.expected.expect(JCGLExceptionProgramNotActive.class); s.shaderUniformPutVector3f(u, VectorI3F.ZERO); }
@Test public final void testProgramUniformVector3fWrong() { final JCGLShadersType s = this.getShaders("main"); final JCGLVertexShaderType v = s.shaderCompileVertex("uniforms0", this.getShaderLines("uniforms0.vert")); final JCGLFragmentShaderType f = s.shaderCompileFragment("valid0", this.getShaderLines("valid0.frag")); final JCGLProgramShaderType p = s.shaderLinkProgram("uniforms0", v, Optional.empty(), f); final Map<String, JCGLProgramUniformType> us = p.uniforms(); Assert.assertTrue(us.containsKey("b")); final JCGLProgramUniformType u = us.get("b"); Assert.assertEquals(JCGLType.TYPE_BOOLEAN, u.type()); s.shaderActivateProgram(p); this.expected.expect(JCGLExceptionProgramTypeError.class); s.shaderUniformPutVector3f(u, Vectors3D.zero()); }
@Test public final void testProgramUniformVector3fNotActive() { final JCGLShadersType s = this.getShaders("main"); final JCGLVertexShaderType v = s.shaderCompileVertex("uniforms0", this.getShaderLines("uniforms0.vert")); final JCGLFragmentShaderType f = s.shaderCompileFragment("valid0", this.getShaderLines("valid0.frag")); final JCGLProgramShaderType p = s.shaderLinkProgram("uniforms0", v, Optional.empty(), f); final Map<String, JCGLProgramUniformType> us = p.uniforms(); Assert.assertTrue(us.containsKey("fv3")); final JCGLProgramUniformType u = us.get("fv3"); Assert.assertEquals(JCGLType.TYPE_FLOAT_VECTOR_3, u.type()); s.shaderDeactivateProgram(); this.expected.expect(JCGLExceptionProgramNotActive.class); s.shaderUniformPutVector3f(u, Vectors3D.zero()); }
g_sh.shaderUniformPutVector3f( this.u_view_rays_origin_x0y0, view_rays.originX0Y0()); g_sh.shaderUniformPutVector3f( this.u_view_rays_origin_x1y0, view_rays.originX1Y0()); g_sh.shaderUniformPutVector3f( this.u_view_rays_origin_x0y1, view_rays.originX0Y1()); g_sh.shaderUniformPutVector3f( this.u_view_rays_origin_x1y1, view_rays.originX1Y1()); g_sh.shaderUniformPutVector3f( this.u_view_rays_ray_x0y0, view_rays.rayX0Y0()); g_sh.shaderUniformPutVector3f( this.u_view_rays_ray_x1y0, view_rays.rayX1Y0()); g_sh.shaderUniformPutVector3f( this.u_view_rays_ray_x0y1, view_rays.rayX0Y1()); g_sh.shaderUniformPutVector3f( this.u_view_rays_ray_x1y1, view_rays.rayX1Y1()); g_sh.shaderUniformPutVector3f( this.u_light_directional_direction, this.direction_eye3); g_sh.shaderUniformPutVector3f( this.u_light_directional_color, light.color()); g_sh.shaderUniformPutFloat(
g_sh.shaderUniformPutVector3f( this.u_view_rays_origin_x0y0, view_rays.originX0Y0()); g_sh.shaderUniformPutVector3f( this.u_view_rays_origin_x1y0, view_rays.originX1Y0()); g_sh.shaderUniformPutVector3f( this.u_view_rays_origin_x0y1, view_rays.originX0Y1()); g_sh.shaderUniformPutVector3f( this.u_view_rays_origin_x1y1, view_rays.originX1Y1()); g_sh.shaderUniformPutVector3f( this.u_view_rays_ray_x0y0, view_rays.rayX0Y0()); g_sh.shaderUniformPutVector3f( this.u_view_rays_ray_x1y0, view_rays.rayX1Y0()); g_sh.shaderUniformPutVector3f( this.u_view_rays_ray_x0y1, view_rays.rayX0Y1()); g_sh.shaderUniformPutVector3f( this.u_view_rays_ray_x1y1, view_rays.rayX1Y1()); g_sh.shaderUniformPutVector3f( this.u_light_spherical_position, this.position_eye3); g_sh.shaderUniformPutVector3f( this.u_light_spherical_color, light.color()); g_sh.shaderUniformPutFloat(
g_sh.shaderUniformPutVector3f( this.u_view_rays_origin_x0y0, view_rays.originX0Y0()); g_sh.shaderUniformPutVector3f( this.u_view_rays_origin_x1y0, view_rays.originX1Y0()); g_sh.shaderUniformPutVector3f( this.u_view_rays_origin_x0y1, view_rays.originX0Y1()); g_sh.shaderUniformPutVector3f( this.u_view_rays_origin_x1y1, view_rays.originX1Y1()); g_sh.shaderUniformPutVector3f( this.u_view_rays_ray_x0y0, view_rays.rayX0Y0()); g_sh.shaderUniformPutVector3f( this.u_view_rays_ray_x1y0, view_rays.rayX1Y0()); g_sh.shaderUniformPutVector3f( this.u_view_rays_ray_x0y1, view_rays.rayX0Y1()); g_sh.shaderUniformPutVector3f( this.u_view_rays_ray_x1y1, view_rays.rayX1Y1()); g_sh.shaderUniformPutVector3f( this.u_light_spherical_position, this.position_eye3); g_sh.shaderUniformPutVector3f( this.u_light_spherical_color, light.color()); g_sh.shaderUniformPutFloat(
g_sh.shaderUniformPutVector3f( this.u_light_directional_direction, this.direction_eye3); g_sh.shaderUniformPutVector3f( this.u_light_directional_color, light.color()); g_sh.shaderUniformPutFloat(
g_sh.shaderUniformPutVector3f( this.u_light_spherical_position, this.position_eye3); g_sh.shaderUniformPutVector3f( this.u_light_spherical_color, light.color()); g_sh.shaderUniformPutFloat(
@Override public void onReceiveMaterialValues( final JCGLInterfaceGL33Type g, final R2ShaderParametersMaterialType<R2RefractionMaskedDeltaParameters> mat_parameters) { NullCheck.notNull(g); NullCheck.notNull(mat_parameters); final JCGLTexturesType g_tex = g.getTextures(); final JCGLShadersType g_sh = g.getShaders(); final JCGLTextureUnitContextMutableType tc = mat_parameters.textureUnitContext(); final R2RefractionMaskedDeltaParameters values = mat_parameters.values(); final JCGLTextureUnitType unit_mask = tc.unitContextBindTexture2D(g_tex, values.maskTexture().texture()); final JCGLTextureUnitType unit_scene = tc.unitContextBindTexture2D(g_tex, values.sceneTexture().texture()); final JCGLTextureUnitType unit_delta = tc.unitContextBindTexture2D(g_tex, values.deltaTexture().texture()); g_sh.shaderUniformPutFloat(this.u_refraction_scale, values.scale()); g_sh.shaderUniformPutVector3f(this.u_refraction_color, values.color()); g_sh.shaderUniformPutTexture2DUnit(this.u_refraction_mask, unit_mask); g_sh.shaderUniformPutTexture2DUnit(this.u_refraction_scene, unit_scene); g_sh.shaderUniformPutTexture2DUnit(this.u_refraction_delta, unit_delta); }
@Override public void onReceiveMaterialValues( final JCGLInterfaceGL33Type g, final R2ShaderParametersMaterialType<R2RefractionMaskedDeltaParameters> mat_parameters) { NullCheck.notNull(g); NullCheck.notNull(mat_parameters); final JCGLTexturesType g_tex = g.getTextures(); final JCGLShadersType g_sh = g.getShaders(); final JCGLTextureUnitContextMutableType tc = mat_parameters.textureUnitContext(); final R2RefractionMaskedDeltaParameters values = mat_parameters.values(); final JCGLTextureUnitType unit_mask = tc.unitContextBindTexture2D(g_tex, values.maskTexture().texture()); final JCGLTextureUnitType unit_scene = tc.unitContextBindTexture2D(g_tex, values.sceneTexture().texture()); final JCGLTextureUnitType unit_delta = tc.unitContextBindTexture2D(g_tex, values.deltaTexture().texture()); g_sh.shaderUniformPutFloat(this.u_refraction_scale, values.scale()); g_sh.shaderUniformPutVector3f(this.u_refraction_color, values.color()); g_sh.shaderUniformPutTexture2DUnit(this.u_refraction_mask, unit_mask); g_sh.shaderUniformPutTexture2DUnit(this.u_refraction_scene, unit_scene); g_sh.shaderUniformPutTexture2DUnit(this.u_refraction_delta, unit_delta); }
@Override public void onReceiveMaterialValues( final JCGLInterfaceGL33Type g, final R2ShaderParametersMaterialType<R2RefractionMaskedDeltaParameters> mat_parameters) { NullCheck.notNull(g); NullCheck.notNull(mat_parameters); final JCGLTexturesType g_tex = g.getTextures(); final JCGLShadersType g_sh = g.getShaders(); final JCGLTextureUnitContextMutableType tc = mat_parameters.textureUnitContext(); final R2RefractionMaskedDeltaParameters values = mat_parameters.values(); final JCGLTextureUnitType unit_mask = tc.unitContextBindTexture2D(g_tex, values.maskTexture().texture()); final JCGLTextureUnitType unit_scene = tc.unitContextBindTexture2D(g_tex, values.sceneTexture().texture()); final JCGLTextureUnitType unit_delta = tc.unitContextBindTexture2D(g_tex, values.deltaTexture().texture()); g_sh.shaderUniformPutFloat(this.u_refraction_scale, values.scale()); g_sh.shaderUniformPutVector3f(this.u_refraction_color, values.color()); g_sh.shaderUniformPutTexture2DUnit(this.u_refraction_mask, unit_mask); g_sh.shaderUniformPutTexture2DUnit(this.u_refraction_scene, unit_scene); g_sh.shaderUniformPutTexture2DUnit(this.u_refraction_delta, unit_delta); }
this.u_light_occlusion, unit_ao); g_sh.shaderUniformPutVector3f( this.u_light_color, light.color()); g_sh.shaderUniformPutFloat(
this.u_emission_amount, values.emission()); g_sh.shaderUniformPutVector3f( this.u_specular_color, values.specularColor()); g_sh.shaderUniformPutFloat(
this.u_emission_amount, values.emission()); g_sh.shaderUniformPutVector3f( this.u_specular_color, values.specularColor()); g_sh.shaderUniformPutFloat(
this.u_emission_amount, values.emission()); g_sh.shaderUniformPutVector3f( this.u_specular_color, values.specularColor()); g_sh.shaderUniformPutFloat(
this.u_environment_mix, values.environmentMix()); g_sh.shaderUniformPutVector3f( this.u_specular_color, values.specularColor()); g_sh.shaderUniformPutFloat(
this.u_emission_amount, values.emission()); g_sh.shaderUniformPutVector3f( this.u_specular_color, values.specularColor()); g_sh.shaderUniformPutFloat(