INNER CODE UNIT · Java
col
GiveJavaAChance/PolyrayGameEngine · src/polyray/Background.java:51
vec3 col = ambientColor + (pow(dot, 100.0) + solid * 5.0) * sunColor;
color = vec4(col, 1.0);
}
""";
this.environmentBuffer = new ShaderBuffer(GL_UNIFORM_BUFFER, GL_DYNAMIC_DRAW);
this.environmentBuffer.uploadData(new float[]{sunDir.x, sunDir.y, sunDir.z, 0.0f, sunColor.x, sunColor.y, sunColor.z, 0.0f, ambientColor.x, ambientColor.y, ambientColor.z, 0.0f});
ShaderPreprocessor proc = ShaderPreprocessor.fromSource(vertexShaderSource, fragmentShaderSource);
proc.appendAll();
proc.setInt("ENV_IDX", BindingRegistry.bindBufferBase(this.environmentBuffer));
proc.setInt("CAM3D_IDX", cameraBufferBinding);
quadProgram = proc.createProgram();
setupFullscreenQuad();
}
public void setSunDir(Vector3f dir) {
this.sunDir = dir;
}