ELF> @@ATL%UH-HHH=LHH-HH=LHH]A\//VTK::System::Dec /*========================================================================= Program: Visualization Toolkit Module: vtkDepthPeelingPassIntermediateFS.glsl Copyright (c) Ken Martin, Will Schroeder, Bill Lorensen All rights reserved. See Copyright.txt or http://www.kitware.com/Copyright.htm for details. This software is distributed WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the above copyright notice for more information. =========================================================================*/ in vec2 texCoord; uniform sampler2D translucentRGBATexture; uniform sampler2D currentRGBATexture; uniform int lastpass; // the output of this shader //VTK::Output::Dec void main() { // current is what is most recently rendered // translucent is what is in FRONT of it // we render front to back vec4 t1Color = texture2D(translucentRGBATexture, texCoord); vec4 t2Color = texture2D(currentRGBATexture, texCoord); gl_FragData[0].a = t1Color.a + t2Color.a * (1.0-t1Color.a); if (gl_FragData[0].a > 0.0) { if (lastpass == 1) { gl_FragData[0].rgb = (t1Color.rgb*t1Color.a + t2Color.rgb*(1.0-t1Color.a))/gl_FragData[0].a; } else { gl_FragData[0].rgb = (t1Color.rgb*t1Color.a + t2Color.rgb*t2Color.a*(1.0-t1Color.a))/gl_FragData[0].a; } } else { gl_FragData[0].rgb = vec3(0.0,0.0,0.0); } } GCC: (Ubuntu 11.4.0-1ubuntu1~22.04) 11.4.0GNUzRx $`FHN |AB`6Egt* _GLOBAL__sub_I_vtkDepthPeelingPassIntermediateFS.cxx_ZStL8__ioinit_ZL28vtkDebugLeaksManagerInstance__dso_handle_ZNSt8ios_base4InitC1Ev_GLOBAL_OFFSET_TABLE__ZNSt8ios_base4InitD1Ev__cxa_atexit_ZN20vtkDebugLeaksManagerC1Ev_ZN20vtkDebugLeaksManagerD1Ev_Z33vtkRenderingUI_AutoInit_ConstructvvtkDepthPeelingPassIntermediateFS  $* 16 > E*P \ .symtab.strtab.shstrtab.text.data.bss.rela.text.startup.rela.init_array.rodata.str1.8.rela.data.rel.local.comment.note.GNU-stack.note.gnu.property.rela.eh_frame@!@'@1@`,@ D?@ P2d_@  t0,} @@  L8