Example usage for org.lwjgl.opengl GL20 glUniform3f

List of usage examples for org.lwjgl.opengl GL20 glUniform3f

Introduction

In this page you can find the example usage for org.lwjgl.opengl GL20 glUniform3f.

Prototype

public static void glUniform3f(@NativeType("GLint") int location, @NativeType("GLfloat") float v0,
        @NativeType("GLfloat") float v1, @NativeType("GLfloat") float v2) 

Source Link

Document

Specifies the value of a vec3 uniform variable for the current program object.

Usage

From source file:ar.com.quark.backend.lwjgl.opengl.DesktopGLES20.java

License:Apache License

/**
 * {@inheritDoc}//  w  ww. j ava 2s.  c o m
 */
@Override
public void glUniform3f(int name, float i1, float i2, float i3) {
    GL20.glUniform3f(name, i1, i2, i3);
}

From source file:com.badlogic.gdx.backends.jglfw.JglfwGL20.java

License:Apache License

public void glUniform3f(int location, float x, float y, float z) {
    GL20.glUniform3f(location, x, y, z);
}

From source file:com.flowpowered.caustic.lwjgl.gl20.GL20Program.java

License:MIT License

@Override
public void setUniform(String name, Vector3f v) {
    checkCreated();//from  ww w  . j  ava2 s . com
    if (!isDirty(name, v)) {
        return;
    }
    GL20.glUniform3f(uniforms.get(name), v.getX(), v.getY(), v.getZ());
    uniformValues.put(name, v);
    LWJGLUtil.checkForGLError();
}

From source file:com.github.begla.blockmania.world.horizon.Skysphere.java

License:Apache License

public void render() {
    updateClouds();//from  w w w . j a  va  2 s  .c  o m

    glDisable(GL_CULL_FACE);
    glDisable(GL_DEPTH_TEST);

    glEnable(GL13.GL_TEXTURE_CUBE_MAP);
    GL11.glBindTexture(GL13.GL_TEXTURE_CUBE_MAP, _textureIds.get(0));
    _sunPosAngle = (float) Math.toRadians(360.0 * _parent.getWorldProvider().getTime() - 90.0);
    Vector4f sunNormalise = new Vector4f(0.0f, (float) Math.cos(_sunPosAngle), (float) Math.sin(_sunPosAngle),
            1.0f);
    sunNormalise.normalize();

    _zenithColor = getAllWeatherZenith(sunNormalise.y);

    ShaderManager.getInstance().enableShader("sky");

    int sunPos = GL20.glGetUniformLocation(ShaderManager.getInstance().getShader("sky"), "sunPos");
    GL20.glUniform4f(sunPos, 0.0f, (float) Math.cos(_sunPosAngle), (float) Math.sin(_sunPosAngle), 1.0f);

    int time = GL20.glGetUniformLocation(ShaderManager.getInstance().getShader("sky"), "time");
    GL20.glUniform1f(time, (float) _parent.getWorldProvider().getTime());

    int sunAngle = GL20.glGetUniformLocation(ShaderManager.getInstance().getShader("sky"), "sunAngle");
    GL20.glUniform1f(sunAngle, _sunPosAngle);

    int turbidity = GL20.glGetUniformLocation(ShaderManager.getInstance().getShader("sky"), "turbidity");
    GL20.glUniform1f(turbidity, _turbidity);

    int zenith = GL20.glGetUniformLocation(ShaderManager.getInstance().getShader("sky"), "zenith");
    GL20.glUniform3f(zenith, _zenithColor.x, _zenithColor.y, _zenithColor.z);

    // DRAW THE SKYSPHERE
    drawSphere();

    glDisable(GL13.GL_TEXTURE_CUBE_MAP);

    ShaderManager.getInstance().enableShader("clouds");
    // Apply daylight
    int lightClouds = GL20.glGetUniformLocation(ShaderManager.getInstance().getShader("clouds"), "light");
    GL20.glUniform1f(lightClouds, getDaylight());

    // DRAW THE CLOUDS
    drawClouds();
    ShaderManager.getInstance().enableShader(null);

    glEnable(GL_CULL_FACE);
    glEnable(GL_DEPTH_TEST);
}

From source file:com.grillecube.client.opengl.GLProgram.java

protected void loadUniformVec(int location, float x, float y, float z) {
    GL20.glUniform3f(location, x, y, z);
}

From source file:com.grillecube.engine.opengl.object.GLProgram.java

protected void loadUniformVec(int location, Vector3f vec) {
    GL20.glUniform3f(location, vec.x, vec.y, vec.z);
}

From source file:com.opengrave.og.engine.RenderView.java

License:Open Source License

public void bindLights(int pID, int texture) {
    GL20.glUseProgram(pID);//from w  ww .j ava2  s.  c o m
    int lights = MainThread.config.getInteger("lightCount", 16);
    int showShadows = GL20.glGetUniformLocation(pID, "showShadows");
    GL20.glUniform1i(showShadows, hasshadows ? 1 : 0);
    Util.checkErr();
    if (cam instanceof FlyByCamera) {
        int eyepos = GL20.glGetUniformLocation(pID, "eyepos");
        Util.checkErr();
        Location camL = ((FlyByCamera) cam).getCameraLocation();
        Util.checkErr();
        GL20.glUniform3f(eyepos, camL.getFullXAsFloat(), camL.getFullYAsFloat(), camL.getZ());
        Util.checkErr();
    }
    if (hasshadows) {
        int lightDir = GL20.glGetUniformLocation(pID, "sunDir");
        Vector3f dir = sceneNode.getSkyLight().getDirection().normalise(null);
        GL20.glUniform3f(lightDir, dir.x, dir.y, dir.z);
        int sunStr = GL20.glGetUniformLocation(pID, "sunStr");
        GL20.glUniform1f(sunStr, sceneNode.getSkyLight().getIntensity());
    }
    if (!shadows) {
        return;
    }

    int lightCount = GL20.glGetUniformLocation(pID, "lightCount");
    GL20.glUniform1i(lightCount, lights);

    if (lights < 4) {
        lights = 4;
    }
    for (int i = 0; i < lights; i++) {
        ShadowCube ls;
        if (i >= lightShadows.size()) {
            ls = new ShadowCube(MainThread.config.getInteger("shadowSize", 1024));
            lightShadows.add(ls);
        }
        ls = lightShadows.get(i);
        if (ls == null) {
            continue;
        }
        PointLightNode light = ls.getLight();
        if (light == null) {
            continue;
        }
        int cube = GL20.glGetUniformLocation(pID, "cube" + i);
        int lightcolour = GL20.glGetUniformLocation(pID, "lights[" + i + "].colour");
        int lightposition = GL20.glGetUniformLocation(pID, "lights[" + i + "].position");
        int lightpower = GL20.glGetUniformLocation(pID, "lights[" + i + "].power");
        Vector3f loc = light.getPosition().toVector3();
        if (cam != null) {
            // loc = light.getPosition().minus(cam.getLocation());
            // loc = cam.minus(light.getPosition());
        }
        Util.checkErr();
        // Only upload a shadow texture location if we're having shadows for
        // the light. Basic has lights but no shadows
        if (i < showShadows) {
            GL20.glUniform1i(cube, texture + i - GL13.GL_TEXTURE0);
            ls.getFramebuffer().bindDepthTexture(texture + i);
        }
        Util.checkErr();
        GL20.glUniform4f(lightcolour, light.getColour().x, light.getColour().y, light.getColour().z,
                light.getColour().w);
        Util.checkErr();
        GL20.glUniform4f(lightposition, loc.x, loc.y, loc.z, 1f);
        Util.checkErr();
        GL20.glUniform1f(lightpower, light.getPower());
        Util.checkErr();
        Util.checkErr();
    }
}

From source file:com.redthirddivision.quad.rendering.shaders.Shader.java

License:Apache License

public void setUniform(int location, Vector3f value) {
    GL20.glUniform3f(location, value.x, value.y, value.z);
}

From source file:com.samrj.devil.gl.ShaderProgram.java

License:Open Source License

/**
 * Specifies the value of a uniform variable for this program. Program must
 * be in use. Returns true if and only if the uniform exists and is active.
 * //from w  ww .j  a  va 2s. c  o m
 * @param name The name of the uniform to specify.
 * @return Whether or not the uniform exists and is active.
 */
public boolean uniform3f(String name, float x, float y, float z) {
    if (DGL.currentProgram() != this)
        throw new IllegalStateException("Program must be in use.");
    int loc = GL20.glGetUniformLocation(id, name);
    if (loc < 0)
        return false;
    GL20.glUniform3f(loc, x, y, z);
    return true;
}

From source file:com.sgflt.ShaderManager.ShaderManager.java

License:Apache License

/**
 * Pass an LWJGL Vector3f to the active shader. The shader to which the value will be passed must be bound.
 * //from   w  w w  . j  a  v  a 2 s  . c  o m
 * @param varName Name of the variable that is in the shader program. Must be an exact match.
 * @param v
 */
public void putVector3f(String varName, Vector3f v) throws NullPointerException {
    if (v == null) {
        throw new NullPointerException("Vector3f passed is null.");
    }
    if (activeShader != null) {
        int location = GL20.glGetUniformLocation(activeShader.shaderProgram, varName);
        GL20.glUniform3f(location, v.x, v.y, v.z);
    }
}