volume.fs (pymol-v2.1.0.tar.bz2) | : | volume.fs (pymol-open-source-2.2.0) | ||
---|---|---|---|---|
uniform sampler3D volumeTex; | uniform sampler3D volumeTex; | |||
uniform sampler1D colorTex; | uniform sampler2D colorTex2D; | |||
uniform sampler1D colorTex1D; | ||||
uniform float volumeScale; | uniform float volumeScale; | |||
uniform float volumeBias; | uniform float volumeBias; | |||
uniform float sliceDist; | ||||
uniform mat4 TexMatrix; | ||||
uniform vec3 eyeposM; | ||||
uniform vec3 vDirM; | ||||
uniform sampler3D carvemask; | uniform sampler3D carvemask; | |||
uniform bool carvemaskFlag; | uniform bool carvemaskFlag; | |||
uniform float fog_enabled; | varying vec3 vertexM; | |||
uniform sampler2D bgTextureMap; | ||||
uniform vec3 fogSolidColor; | ||||
uniform float fogIsSolidColor; | ||||
varying float fog; | varying float fog; | |||
uniform float g_Fog_end; | ||||
uniform float g_Fog_scale; | ||||
varying vec2 bgTextureLookup; | varying vec2 bgTextureLookup; | |||
uniform float isStretched; | #include anaglyph_header.fs | |||
uniform float isCentered; | #include compute_fog_color.fs | |||
uniform float isCenteredOrRepeated; | ||||
uniform float isTiled; | ||||
uniform vec2 tileSize; | ||||
uniform vec2 tiledSize; | ||||
uniform vec2 viewImageSize; | ||||
uniform vec2 pixelSize; | ||||
uniform vec2 halfPixel; | ||||
#include ComputeFogColor | ||||
bool iscarvemasked(vec3 t) { | bool iscarvemasked(vec3 t) { | |||
return carvemaskFlag && texture3D(carvemask, t).r > 0.5; | return carvemaskFlag && texture3D(carvemask, t).r > 0.5; | |||
} | } | |||
void main() | void main() | |||
{ | { | |||
#ifdef volume_mode | ||||
#else // volume_mode | ||||
if (iscarvemasked(gl_TexCoord[0].xyz)) | if (iscarvemasked(gl_TexCoord[0].xyz)) | |||
discard; | discard; | |||
float v = texture3D(volumeTex, gl_TexCoord[0].xyz).r; | float v = texture3D(volumeTex, gl_TexCoord[0].xyz).r; | |||
v = v * volumeScale + volumeBias; | v = v * volumeScale + volumeBias; | |||
if (v < 0. || v > 1.) discard; | if (v < 0. || v > 1.) discard; | |||
vec4 color = texture1D(colorTex, v); | vec4 color = texture1D(colorTex1D, v); | |||
#endif // volume_mode | ||||
if (color.a == 0.0) | ||||
discard; | ||||
color = ApplyColorEffects(color, gl_FragCoord.z); | ||||
gl_FragColor = ApplyFog(color, fog); | ||||
if (color.a == 0.0) discard; | PostLightingEffects(); | |||
float cfog = mix(1.0, clamp(fog, 0.0, 1.0), fog_enabled); | ||||
vec4 fogColor = ComputeFogColor(); | ||||
gl_FragColor = vec4(vec3(mix(fogColor.rgb, color.rgb, cfog)), color.a); | ||||
} | } | |||
End of changes. 8 change blocks. | ||||
24 lines changed or deleted | 22 lines changed or added |