From b935d5248aef79e2386a284b32f5888348a382d6 Mon Sep 17 00:00:00 2001 From: Sven Gothel <sgothel@jausoft.com> Date: Tue, 1 Apr 2014 16:31:05 +0200 Subject: Bug 801: WIP 1/2 - Add color attribute; Switch Shader instead of branching in shader; Update attributes and uniforms manually, drop ShaderState; - ShaderCode - add int insertShaderSource(int shaderIdx, int position, Class<?> context, String path) - insertShaderSource(..): pos==-1 -> append code - VectorUtil - add isVec3InTriangle3(..., float epsilon) - add testSeg2SegIntersection(..., float epsilon) - add testTri2SegIntersection(..., float epsilon) - AffineTransform: Return result for chaining - Font - Add pixel precise 'getPointsBounds(final AffineTransform transform, CharSequence string, float pixelSize)' - Rename getString*() -> getMetric*() - OTGlyph: Release _points field, no more used - - Graph Triangulation - Count additional vertices in: Triangulator, CDTriangulator2D - OutlineShape: - Allow skipping of 'transformOutlines2Quadratic', i.e. allow tagging OutlineShape to be quadratic_nurbs via 'setIsQuadraticNurbs()' - Clarify cleanup ot outlines in same method 'cleanupOutlines()' - Count additional vertices .. - Graph Shader: - Start splitting and segmenting shader code for: - pass1 / pass2 - features, i.e. sampleCont, color-channel, .. --- .../curve/opengl/shader/curverenderer01-single.vp | 30 ++++++++++++++++++++++ 1 file changed, 30 insertions(+) create mode 100644 src/jogl/classes/jogamp/graph/curve/opengl/shader/curverenderer01-single.vp (limited to 'src/jogl/classes/jogamp/graph/curve/opengl/shader/curverenderer01-single.vp') diff --git a/src/jogl/classes/jogamp/graph/curve/opengl/shader/curverenderer01-single.vp b/src/jogl/classes/jogamp/graph/curve/opengl/shader/curverenderer01-single.vp new file mode 100644 index 000000000..7598c23f8 --- /dev/null +++ b/src/jogl/classes/jogamp/graph/curve/opengl/shader/curverenderer01-single.vp @@ -0,0 +1,30 @@ +//Copyright 2010 JogAmp Community. All rights reserved. + +#if __VERSION__ >= 130 + #define attribute in + #define varying out +#endif + +#include uniforms.glsl +#include attributes.glsl +#include varyings.glsl + +void main(void) +{ + // gl_Position = gcu_PMVMatrix01[0] * gcu_PMVMatrix01[1] * vec4(gca_Vertices, 1); + gl_Position = gcu_PMVMatrix01[0] * gcu_PMVMatrix01[1] * gca_Vertices; +#if 1 + gcv_CurveParam = gca_CurveParams; +#else + if( gcv_CurveParams.x <= -10.0 ) { + // vec4 tc = gcu_PMVMatrix01[0] * gcu_PMVMatrix01[1] * vec4(gca_CurveParams.xy, gca_Vertices.z, 1); + // gcv_CurveParams = vec3(tc.xy, gca_CurveParams.z); + gcv_CurveParam = gca_CurveParams; + } else { + gcv_CurveParam = gca_CurveParams; + } +#endif +#ifdef USE_COLOR_CHANNEL + gcv_Color = gca_Colors; +#endif +} -- cgit v1.2.3