From 53e0afc0ca5edc2d8e3d2f154247654d8b4f02d7 Mon Sep 17 00:00:00 2001 From: Paolo Cignoni cignoni Date: Fri, 26 May 2006 04:18:09 +0000 Subject: [PATCH] *** empty log message *** --- docs/license.txt | 1 + src/meshlab/shaders/polkadot3d.frag | 44 +++++++++++++++++++ src/meshlab/shaders/polkadot3d.gdp | 65 ++++++++++++++++++++++++++++ src/meshlab/shaders/polkadot3d.vert | 55 +++++++++++++++++++++++ src/sample/texturedknot.ply | Bin 0 -> 126995 bytes 5 files changed, 165 insertions(+) create mode 100644 docs/license.txt create mode 100644 src/meshlab/shaders/polkadot3d.frag create mode 100644 src/meshlab/shaders/polkadot3d.gdp create mode 100644 src/meshlab/shaders/polkadot3d.vert create mode 100644 src/sample/texturedknot.ply diff --git a/docs/license.txt b/docs/license.txt new file mode 100644 index 000000000..9bf50b7b3 --- /dev/null +++ b/docs/license.txt @@ -0,0 +1 @@ +GPL license and some notes... diff --git a/src/meshlab/shaders/polkadot3d.frag b/src/meshlab/shaders/polkadot3d.frag new file mode 100644 index 000000000..cbe2059a4 --- /dev/null +++ b/src/meshlab/shaders/polkadot3d.frag @@ -0,0 +1,44 @@ +// +// Fragment shader for 3 dimensional polka dot shader. +// +// Author: Joshua Doss +// +// Copyright (C) 2002-2004 3Dlabs Inc. Ltd. +// +// See 3Dlabs-License.txt for license information +// +varying float LightIntensity; +varying vec3 MCPosition; + +//Create uniform variables so dots can be spaced and scaled by user +uniform vec3 Spacing; +uniform float DotSize; + +//Create colors as uniform variables so they can be easily changed +uniform vec3 ModelColor, PolkaDotColor; + +void main(void) +{ + float insidesphere, sphereradius, scaledpointlength; + vec3 scaledpoint, finalcolor; + + // Scale the coordinate system + // The following line of code is not yet implemented in current drivers: + // mcpos = mod(Spacing, MCposition); + // We will use a workaround found below for now + scaledpoint = MCPosition - (Spacing * floor(MCPosition/Spacing)); + + // Bring the scaledpoint vector into the center of the scaled coordinate system + scaledpoint = scaledpoint - Spacing/2.0; + + // Find the length of the scaledpoint vector and compare it to the dotsize + scaledpointlength = length(scaledpoint); + insidesphere = step(scaledpointlength,DotSize); + + // Determine final output color before lighting + finalcolor = vec3(mix(ModelColor, PolkaDotColor, insidesphere)); + + // Output final color and factor in lighting + gl_FragColor = clamp((vec4( finalcolor, 1.0 ) * LightIntensity), vec4(0.0), vec4(1.0)); +} + diff --git a/src/meshlab/shaders/polkadot3d.gdp b/src/meshlab/shaders/polkadot3d.gdp new file mode 100644 index 000000000..fc46efc4b --- /dev/null +++ b/src/meshlab/shaders/polkadot3d.gdp @@ -0,0 +1,65 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/src/meshlab/shaders/polkadot3d.vert b/src/meshlab/shaders/polkadot3d.vert new file mode 100644 index 000000000..e2a3a8e1d --- /dev/null +++ b/src/meshlab/shaders/polkadot3d.vert @@ -0,0 +1,55 @@ +// This is the Vertex Shader for three dimensional polka dots. +// +// author(s): Joshua Doss +// +// Copyright (C) 2002-2004 3Dlabs Inc. Ltd. + +//Create uniform variables for lighting to allow user interaction +uniform float SpecularContribution; +uniform vec3 LightPosition; + +varying vec3 MCPosition; +varying float LightIntensity; + +void main(void) +{ + float diffusecontribution = 1.0 - SpecularContribution; + + // compute the vertex position in eye coordinates + vec3 ecPosition = vec3(gl_ModelViewMatrix * gl_Vertex); + + // compute the transformed normal + vec3 tnorm = normalize(gl_NormalMatrix * gl_Normal); + + // compute a vector from the model to the light position + vec3 lightVec = normalize(LightPosition - ecPosition); + + // compute the reflection vector + vec3 reflectVec = reflect(-lightVec, tnorm); + + // compute a unit vector in direction of viewing position + vec3 viewVec = normalize(-ecPosition); + + // calculate amount of diffuse light based on normal and light angle + float diffuse = max(dot(lightVec, tnorm), 0.0); + float spec = 0.0; + + // if there is diffuse lighting, calculate specular + if(diffuse > 0.0) + { + spec = max(dot(reflectVec, viewVec), 0.0); + spec = pow(spec, 16.0); + } + + // add up the light sources, since this is a varying (global) it will pass to frag shader + LightIntensity = diffusecontribution * diffuse * 1.5 + + SpecularContribution * spec; + + // the varying variable MCPosition will be used by the fragment shader to determine where + // in model space the current pixel is + MCPosition = vec3 (gl_Vertex); + + // send vertex information + gl_Position = gl_ModelViewProjectionMatrix * gl_Vertex; +} + diff --git a/src/sample/texturedknot.ply b/src/sample/texturedknot.ply new file mode 100644 index 0000000000000000000000000000000000000000..95dd76e219a4fa93e846498feb280797800238e4 GIT binary patch literal 126995 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 FuL1GD9hLw9 literal 0 HcmV?d00001