[openrndr-demos] Clean-up and fix tessellation shader demos for Intel GPUs
This commit is contained in:
@@ -14,6 +14,8 @@ dependencies {
|
||||
demoImplementation(project(":orx-parameters"))
|
||||
demoImplementation(project(":orx-noise"))
|
||||
demoImplementation(project(":orx-shader-phrases"))
|
||||
demoImplementation("org.slf4j:slf4j-simple:1.7.30")
|
||||
|
||||
demoImplementation("org.openrndr:openrndr-core:$openrndrVersion")
|
||||
demoImplementation("org.openrndr:openrndr-extensions:$openrndrVersion")
|
||||
demoImplementation("org.openrndr:openrndr-ffmpeg:$openrndrVersion")
|
||||
|
||||
@@ -43,10 +43,7 @@ fun main() {
|
||||
shader.uniform("model", drawer.model)
|
||||
driver.drawVertexBuffer(shader, listOf(vb), DrawPrimitive.PATCHES, 0, vb.vertexCount)
|
||||
|
||||
|
||||
shader.end()
|
||||
|
||||
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -2,9 +2,6 @@
|
||||
|
||||
out vec4 o_color;
|
||||
|
||||
in vec3 va_position;
|
||||
in vec3 va_normal;
|
||||
in vec4 v_addedProperty;
|
||||
|
||||
void main() {
|
||||
o_color = v_addedProperty;
|
||||
|
||||
@@ -19,9 +19,6 @@ uniform vec3 offset;
|
||||
void main() {
|
||||
int i;
|
||||
for(i = 0;i < gl_in.length();i++) {
|
||||
v_addedProperty = vertices[i].v_addedProperty;
|
||||
va_normal = vertices[i].va_normal;
|
||||
va_position = vertices[i].va_position;
|
||||
gl_Position = gl_in[i].gl_Position;
|
||||
EmitVertex();
|
||||
}
|
||||
|
||||
@@ -2,12 +2,6 @@
|
||||
|
||||
out vec4 o_color;
|
||||
|
||||
|
||||
|
||||
//in vec3 va_position;
|
||||
//in vec3 va_normal;
|
||||
//in vec4 v_addedProperty;
|
||||
|
||||
void main() {
|
||||
o_color = vec4(1.0, 0.0, 0.0, 1.0);
|
||||
}
|
||||
@@ -11,16 +11,9 @@ vec3 bezier4(vec3 a, vec3 b, vec3 c, vec3 d, float t) {
|
||||
return mix(bezier3(a, b, c, t), bezier3(b, c, d, t), t);
|
||||
}
|
||||
|
||||
struct Vertex {
|
||||
vec3 va_position;
|
||||
vec3 va_normal;
|
||||
vec4 v_addedProperty;
|
||||
};
|
||||
|
||||
layout(isolines) in;
|
||||
in vec3 cva_position[];
|
||||
|
||||
|
||||
uniform mat4 proj;
|
||||
uniform mat4 view;
|
||||
uniform mat4 model;
|
||||
|
||||
@@ -2,12 +2,6 @@
|
||||
|
||||
out vec4 o_color;
|
||||
|
||||
|
||||
|
||||
//in vec3 va_position;
|
||||
//in vec3 va_normal;
|
||||
//in vec4 v_addedProperty;
|
||||
|
||||
void main() {
|
||||
o_color = vec4(1.0, 0.0, 0.0, 1.0);
|
||||
}
|
||||
@@ -3,11 +3,6 @@
|
||||
layout (lines) in;
|
||||
layout (line_strip, max_vertices = 2) out;
|
||||
|
||||
in InVertex {
|
||||
vec3 va_position;
|
||||
vec3 va_normal;
|
||||
vec4 v_addedProperty;
|
||||
} vertices[];
|
||||
|
||||
out vec3 va_position;
|
||||
out vec3 va_normal;
|
||||
@@ -19,9 +14,6 @@ uniform vec3 offset;
|
||||
void main() {
|
||||
int i;
|
||||
for(i = 0;i < gl_in.length();i++) {
|
||||
v_addedProperty = vertices[i].v_addedProperty;
|
||||
va_normal = vertices[i].va_normal;
|
||||
va_position = vertices[i].va_position;
|
||||
gl_Position = gl_in[i].gl_Position;
|
||||
EmitVertex();
|
||||
}
|
||||
|
||||
@@ -4,7 +4,6 @@ layout(vertices = 4) out; // 4 points per patch
|
||||
|
||||
uniform int resolution;
|
||||
|
||||
|
||||
in vec3 va_position[];
|
||||
out vec3 cva_position[];
|
||||
|
||||
|
||||
@@ -11,17 +11,9 @@ vec3 bezier4(vec3 a, vec3 b, vec3 c, vec3 d, float t) {
|
||||
return mix(bezier3(a, b, c, t), bezier3(b, c, d, t), t);
|
||||
}
|
||||
|
||||
struct Vertex {
|
||||
vec3 va_position;
|
||||
vec3 va_normal;
|
||||
vec4 v_addedProperty;
|
||||
};
|
||||
|
||||
layout(isolines) in;
|
||||
in vec3 cva_position[];
|
||||
|
||||
|
||||
|
||||
uniform mat4 proj;
|
||||
uniform mat4 view;
|
||||
uniform mat4 model;
|
||||
|
||||
@@ -34,27 +34,15 @@ void main() {
|
||||
|
||||
// output a triangle strip encoded quad
|
||||
|
||||
v_addedProperty = vertices[0].v_addedProperty;
|
||||
va_normal = vertices[0].va_normal;
|
||||
va_position = vertices[0].va_position;
|
||||
gl_Position = pvm * vec4( vec4(position[0],1.0) + perp0 * weight);
|
||||
EmitVertex();
|
||||
|
||||
v_addedProperty = vertices[0].v_addedProperty;
|
||||
va_normal = vertices[0].va_normal;
|
||||
va_position = vertices[0].va_position;
|
||||
gl_Position = pvm * vec4( vec4(position[0],1.0) - perp0 * weight);
|
||||
EmitVertex();
|
||||
|
||||
v_addedProperty = vertices[1].v_addedProperty;
|
||||
va_normal = vertices[1].va_normal;
|
||||
va_position = vertices[1].va_position;
|
||||
gl_Position = pvm * vec4( vec4(position[1],1.0) + perp1 * weight);
|
||||
EmitVertex();
|
||||
|
||||
v_addedProperty = vertices[1].v_addedProperty;
|
||||
va_normal = vertices[1].va_normal;
|
||||
va_position = vertices[1].va_position;
|
||||
gl_Position = pvm * vec4( vec4(position[1],1.0) - perp1 * weight);
|
||||
EmitVertex();
|
||||
|
||||
|
||||
@@ -2,12 +2,12 @@
|
||||
|
||||
layout (lines) in;
|
||||
layout (triangle_strip, max_vertices = 4) out;
|
||||
|
||||
in InVertex {
|
||||
vec3 va_position;
|
||||
vec3 va_normal;
|
||||
vec4 v_addedProperty;
|
||||
} vertices[];
|
||||
//
|
||||
//in InVertex {
|
||||
// vec3 va_position;
|
||||
// vec3 va_normal;
|
||||
// vec4 v_addedProperty;
|
||||
//} vertices[];
|
||||
|
||||
out vec3 va_position;
|
||||
out vec3 va_normal;
|
||||
@@ -49,27 +49,27 @@ void main() {
|
||||
vec4 perp0 = vec4(direction0.y, -direction0.x, 0.0, 0.0);
|
||||
vec4 perp1 = vec4(direction1.y, -direction1.x, 0.0, 0.0);
|
||||
|
||||
v_addedProperty = vertices[0].v_addedProperty;
|
||||
va_normal = vertices[0].va_normal;
|
||||
va_position = vertices[0].va_position;
|
||||
// v_addedProperty = vertices[0].v_addedProperty;
|
||||
// va_normal = vertices[0].va_normal;
|
||||
// va_position = vertices[0].va_position;
|
||||
gl_Position = pvm * vec4(vec4(position[0], 1.0)) + perp0 * weight * 0.01;
|
||||
EmitVertex();
|
||||
|
||||
v_addedProperty = vertices[0].v_addedProperty;
|
||||
va_normal = vertices[0].va_normal;
|
||||
va_position = vertices[0].va_position;
|
||||
// v_addedProperty = vertices[0].v_addedProperty;
|
||||
// va_normal = vertices[0].va_normal;
|
||||
// va_position = vertices[0].va_position;
|
||||
gl_Position = pvm * vec4(vec4(position[0], 1.0)) - perp0 * weight * 0.01;
|
||||
EmitVertex();
|
||||
|
||||
v_addedProperty = vertices[1].v_addedProperty;
|
||||
va_normal = vertices[1].va_normal;
|
||||
va_position = vertices[1].va_position;
|
||||
// v_addedProperty = vertices[1].v_addedProperty;
|
||||
// va_normal = vertices[1].va_normal;
|
||||
// va_position = vertices[1].va_position;
|
||||
gl_Position = pvm * vec4(vec4(position[1], 1.0)) + perp1 * weight * 0.01;
|
||||
EmitVertex();
|
||||
|
||||
v_addedProperty = vertices[1].v_addedProperty;
|
||||
va_normal = vertices[1].va_normal;
|
||||
va_position = vertices[1].va_position;
|
||||
// v_addedProperty = vertices[1].v_addedProperty;
|
||||
// va_normal = vertices[1].va_normal;
|
||||
// va_position = vertices[1].va_position;
|
||||
gl_Position = pvm * vec4(vec4(position[1], 1.0)) - perp1 * weight * 0.01;
|
||||
EmitVertex();
|
||||
|
||||
|
||||
@@ -3,7 +3,6 @@
|
||||
#pragma import org.openrndr.extra.noise.phrases.SimplexKt.phraseSimplex3;
|
||||
|
||||
in vec3 a_position;
|
||||
|
||||
out vec3 va_position;
|
||||
|
||||
uniform mat4 view;
|
||||
|
||||
Reference in New Issue
Block a user