Wed 28 Aug 21:38:52 CEST 2024
This commit is contained in:
		
							parent
							
								
									636da0168c
								
							
						
					
					
						commit
						28c09b1e41
					
				
							
								
								
									
										81
									
								
								src/SimNDT/gui/resources/data/filter.vert
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										81
									
								
								src/SimNDT/gui/resources/data/filter.vert
									
									
									
									
									
										Normal file
									
								
							|  | @ -0,0 +1,81 @@ | ||||||
|  | /* | ||||||
|  |  * glumpy is an OpenGL framework for the fast visualization of numpy arrays. | ||||||
|  |  * Copyright (C) 2009-2011  Nicolas P. Rougier. All rights reserved. | ||||||
|  |  *  | ||||||
|  |  * Redistribution and use in source and binary forms, with or without | ||||||
|  |  * modification, are permitted provided that the following conditions are met: | ||||||
|  |  *  | ||||||
|  |  * 1. Redistributions of source code must retain the above copyright notice, | ||||||
|  |  *    this list of conditions and the following disclaimer. | ||||||
|  |  *  | ||||||
|  |  * 2. Redistributions in binary form must reproduce the above copyright | ||||||
|  |  *    notice, this list of conditions and the following disclaimer in the | ||||||
|  |  *    documentation and/or other materials provided with the distribution. | ||||||
|  |  *  | ||||||
|  |  * THIS SOFTWARE IS PROVIDED BY NICOLAS P. ROUGIER ''AS IS'' AND ANY EXPRESS OR | ||||||
|  |  * IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF | ||||||
|  |  * MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO | ||||||
|  |  * EVENT SHALL NICOLAS P. ROUGIER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, | ||||||
|  |  * INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES | ||||||
|  |  * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; | ||||||
|  |  * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND | ||||||
|  |  * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT | ||||||
|  |  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF | ||||||
|  |  * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. | ||||||
|  |  *  | ||||||
|  |  * The views and conclusions contained in the software and documentation are | ||||||
|  |  * those of the authors and should not be interpreted as representing official | ||||||
|  |  * policies, either expressed or implied, of Nicolas P. Rougier. | ||||||
|  |  */ | ||||||
|  | /* #define GRID */ | ||||||
|  | /* #define ELEVATION */ | ||||||
|  | /* #define COLORIZATION */ | ||||||
|  | /* #define INTERPOLATION */ | ||||||
|  | /* #define GAMMA_CORRECTION */ | ||||||
|  | 
 | ||||||
|  | 
 | ||||||
|  | uniform vec2 pixel; | ||||||
|  | uniform sampler2D texture; /* default location 0 */ | ||||||
|  | 
 | ||||||
|  | #ifdef ELEVATION | ||||||
|  | uniform float elevation; | ||||||
|  | #endif | ||||||
|  | 
 | ||||||
|  | #ifdef GRID | ||||||
|  | uniform vec4 grid_color; | ||||||
|  | uniform vec3 grid_size; | ||||||
|  | uniform vec3 grid_offset; | ||||||
|  | uniform vec3 grid_thickness; | ||||||
|  | #endif | ||||||
|  | 
 | ||||||
|  | #ifdef INTERPOLATION | ||||||
|  | uniform sampler1D kernel_lut;  /* default location 1 */ | ||||||
|  | #endif | ||||||
|  | 
 | ||||||
|  | #ifdef COLORIZATION | ||||||
|  | uniform sampler1D color_lut;   /* default location 2 */ | ||||||
|  | #endif | ||||||
|  | 
 | ||||||
|  | #ifdef GAMMA_CORRECTION | ||||||
|  | uniform float gamma; | ||||||
|  | #endif | ||||||
|  | 
 | ||||||
|  | varying vec4 vertex; | ||||||
|  | varying float altitude; | ||||||
|  | void main() | ||||||
|  | { | ||||||
|  |     gl_FrontColor = gl_Color; | ||||||
|  |     gl_TexCoord[0].xy = gl_MultiTexCoord0.xy; | ||||||
|  |     vertex = gl_Vertex; | ||||||
|  |     altitude = texture2D(texture, gl_MultiTexCoord0.xy).a; | ||||||
|  | 
 | ||||||
|  | #ifdef INTERPOLATION | ||||||
|  |     altitude = interpolate(texture, kernel_lut, gl_MultiTexCoord0.xy, pixel).a; | ||||||
|  | #endif | ||||||
|  | 
 | ||||||
|  | #ifdef ELEVATION | ||||||
|  |     vertex.z = altitude*elevation; | ||||||
|  | #endif | ||||||
|  | 
 | ||||||
|  |     gl_Position = gl_ModelViewProjectionMatrix*vertex; | ||||||
|  | } | ||||||
		Loading…
	
		Reference in New Issue
	
	Block a user