Removing the group of OpenGL examples

This commit is contained in:
Casey Reas
2012-08-31 21:53:02 +00:00
parent c92a89d93c
commit 07750c4811
145 changed files with 8 additions and 23317 deletions
@@ -1,71 +0,0 @@
// Bad-print shader. Adapted from rom Fluxus Shader Library:
// http://www.pawfal.org/index.php?page=FluxusHardwareShaderLibrary
import controlP5.*;
ControlP5 controlP5;
PShader badPrint;
boolean enabled = true;
float scaleR = 1.0, scaleG = 1.0, scaleB = 1.0;
float offsetR = 0.2, offsetG = 0.2, offsetB = 0.2;
float registerR = 0.2, registerG = 0.2, registerB = 0.2;
float sizeR = 0.1, sizeG = 0.2, sizeB = 0.1;
public void setup() {
size(800, 800, P3D);
noStroke();
fill(204);
badPrint = loadShader("BadPrintFrag.glsl", "BadPrintVert.glsl");
sphereDetail(60);
controlP5 = new ControlP5(this);
controlP5.addToggle("enabled").linebreak();
controlP5.addSlider("scaleR", 0, 1);
controlP5.addSlider("scaleG", 0, 1);
controlP5.addSlider("scaleB", 0, 1).linebreak();
controlP5.addSlider("offsetR", 0, 1);
controlP5.addSlider("offsetG", 0, 1);
controlP5.addSlider("offsetB", 0, 1).linebreak();
controlP5.addSlider("registerR", 0, 1);
controlP5.addSlider("registerG", 0, 1);
controlP5.addSlider("registerB", 0, 1).linebreak();
controlP5.addSlider("sizeR", 0, 1);
controlP5.addSlider("sizeG", 0, 1);
controlP5.addSlider("sizeB", 0, 1).linebreak();
}
public void draw() {
background(0);
if (enabled) {
shader(badPrint);
badPrint.set("Scale", scaleR, scaleG, scaleB);
badPrint.set("Offset", offsetR, offsetG, offsetB);
badPrint.set("Register", registerR, registerG, registerB);
badPrint.set("Size", sizeR, sizeG, sizeB);
} else {
resetShader();
}
noStroke();
pointLight(204, 204, 204, 1000, 1000, 1000);
pushMatrix();
translate(width/2, height/2);
rotateX(frameCount * 0.01);
rotateY(frameCount * 0.01);
sphere(200);
popMatrix();
hint(DISABLE_DEPTH_TEST);
noLights();
resetShader();
controlP5.draw();
hint(ENABLE_DEPTH_TEST);
}
@@ -1,41 +0,0 @@
// Copyright (C) 2007 Dave Griffiths
// Licence: GPLv2 (see COPYING)
// Fluxus Shader Library
// ---------------------
// BadPrint NPR Shader
// This shader tries to emulate the effect
// of a bad printing process. Can be controlled
// with different settings for RGB
#ifdef GL_ES
precision mediump float;
precision mediump int;
#endif
uniform vec3 Scale;
uniform vec3 Offset;
uniform vec3 Register;
uniform vec3 Size;
varying vec3 N;
varying vec3 P;
varying vec4 S;
varying vec3 L;
void main() {
vec3 l = normalize(L);
vec3 n = normalize(N);
vec2 p = S.xy;
vec2 sr = p * Size.r + Register.r;
vec2 sg = p * Size.g + Register.g;
vec2 sb = p * Size.b + Register.b;
float diffuse = dot(l,n);
float r = (sin(sr.x) + cos(sr.y)) * Scale.r + Offset.r + diffuse;
float g = (sin(sg.x) + cos(sg.y)) * Scale.g + Offset.g + diffuse;
float b = (sin(sb.x) + cos(sb.y)) * Scale.b + Offset.b + diffuse;
gl_FragColor = vec4(step(0.5, r), step(0.5, g), step(0.5, b), 1);
}
@@ -1,30 +0,0 @@
// Copyright (C) 2007 Dave Griffiths
// Licence: GPLv2 (see COPYING)
// Fluxus Shader Library
// ---------------------
// BadPrint NPR Shader
// This shader tries to emulate the effect
// of a bad printing process. Can be controlled
// with different settings for RGB
uniform mat4 projectionMatrix;
uniform mat4 projmodelviewMatrix;
uniform mat3 normalMatrix;
uniform vec4 lightPosition[8];
attribute vec4 inVertex;
attribute vec3 inNormal;
varying vec3 N;
varying vec3 P;
varying vec4 S;
varying vec3 L;
void main() {
N = normalize(normalMatrix * inNormal);
P = inVertex.xyz;
gl_Position = projmodelviewMatrix * inVertex;
L = vec3(lightPosition[0] - gl_Position);
S = projectionMatrix * gl_Position;
}
@@ -12,12 +12,13 @@ void setup() {
size(640, 360, P2D);
blur = loadShader("blur.glsl");
stroke(255, 0, 0);
rectMode(CENTER);
}
void draw() {
filter(blur);
rect(mouseX, mouseY, 150, 150);
line(mouseX, mouseY, mouseX+150, mouseY+150);
ellipse(mouseX, mouseY, 100, 100);
}
@@ -1,7 +1,7 @@
/**
* Fish Eye
*
* This fish-eye shader is useful for dome projection
* This fish-eye shader is useful for dome projection.
*/
PShader fisheye;
@@ -15,7 +15,7 @@ void setup() {
maskImage.noSmooth();
maskShader = loadShader("mask.glsl");
maskShader.set("maskSampler", maskImage);
background(0);
background(255);
}
void draw() {
@@ -1,9 +1,7 @@
// Draws a triangle using low-level OpenGL calls.
import java.nio.*;
PGraphicsOpenGL pg;
PGL pgl;
PShader flatShader;
int vertLoc;
@@ -18,8 +16,6 @@ FloatBuffer colorData;
void setup() {
size(640, 360, P3D);
pg = (PGraphicsOpenGL)g;
// Loads a shader to render geometry w/out
// textures and lights.
flatShader = loadShader("frag.glsl", "vert.glsl");
@@ -36,11 +32,11 @@ void draw() {
// The geometric transformations will be automatically passed
// to the shader.
rotate(frameCount * 0.01f, width, height, 0);
rotate(frameCount * 0.01, width, height, 0);
updateGeometry();
pgl = pg.beginPGL();
pgl = beginPGL();
flatShader.bind();
vertLoc = pgl.getAttribLocation(flatShader.glProgram, "inVertex");
@@ -58,7 +54,8 @@ void draw() {
pgl.disableVertexAttribArray(colorLoc);
flatShader.unbind();
pg.endPGL();
endPGL();
}
void updateGeometry() {