molstar 4.2.0 → 4.3.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (339) hide show
  1. package/LICENSE +20 -20
  2. package/README.md +197 -197
  3. package/build/viewer/embedded.html +52 -52
  4. package/build/viewer/index.html +129 -129
  5. package/build/viewer/molstar.js +1 -1
  6. package/build/viewer/molstar.js.LICENSE.txt +9 -0
  7. package/lib/apps/docking-viewer/index.html +36 -36
  8. package/lib/apps/mesoscale-explorer/index.html +100 -100
  9. package/lib/apps/mesoscale-explorer/style.scss +33 -33
  10. package/lib/apps/viewer/app.d.ts +2 -1
  11. package/lib/apps/viewer/app.js +2 -1
  12. package/lib/apps/viewer/embedded.html +52 -52
  13. package/lib/apps/viewer/index.html +129 -129
  14. package/lib/cli/chem-comp-dict/create-ions.js +9 -9
  15. package/lib/cli/chem-comp-dict/create-saccharides.js +9 -9
  16. package/lib/cli/cifschema/util/generate.js +12 -12
  17. package/lib/cli/lipid-params/index.js +9 -9
  18. package/lib/commonjs/apps/viewer/app.d.ts +2 -1
  19. package/lib/commonjs/apps/viewer/app.js +1 -0
  20. package/lib/commonjs/cli/chem-comp-dict/create-ions.js +9 -9
  21. package/lib/commonjs/cli/chem-comp-dict/create-saccharides.js +9 -9
  22. package/lib/commonjs/cli/cifschema/util/generate.js +12 -12
  23. package/lib/commonjs/cli/lipid-params/index.js +9 -9
  24. package/lib/commonjs/examples/alpha-orbitals/example-data.js +160 -160
  25. package/lib/commonjs/extensions/alpha-orbitals/gpu/shader.frag.js +136 -136
  26. package/lib/commonjs/extensions/assembly-symmetry/prop.js +24 -24
  27. package/lib/commonjs/extensions/dnatco/confal-pyramids/behavior.js +5 -5
  28. package/lib/commonjs/extensions/dnatco/ntc-tube/behavior.js +5 -5
  29. package/lib/commonjs/extensions/geo-export/usdz-exporter.js +41 -41
  30. package/lib/commonjs/extensions/meshes/mesh-extension.d.ts +1 -0
  31. package/lib/commonjs/extensions/mp4-export/encoder.js +1 -1
  32. package/lib/commonjs/extensions/mvs/components/annotation-label/representation.d.ts +0 -2
  33. package/lib/commonjs/extensions/mvs/components/custom-label/representation.d.ts +2 -2
  34. package/lib/commonjs/extensions/mvs/tree/mvs/mvs-builder.d.ts +8 -2
  35. package/lib/commonjs/extensions/sb-ncbr/index.d.ts +8 -0
  36. package/lib/commonjs/extensions/sb-ncbr/index.js +14 -1
  37. package/lib/commonjs/extensions/sb-ncbr/tunnels/actions.d.ts +20 -0
  38. package/lib/commonjs/extensions/sb-ncbr/tunnels/actions.js +89 -0
  39. package/lib/commonjs/extensions/sb-ncbr/tunnels/algorithm.d.ts +26 -0
  40. package/lib/commonjs/extensions/sb-ncbr/tunnels/algorithm.js +474 -0
  41. package/lib/commonjs/extensions/sb-ncbr/tunnels/behavior.d.ts +40 -0
  42. package/lib/commonjs/extensions/sb-ncbr/tunnels/behavior.js +96 -0
  43. package/lib/commonjs/extensions/sb-ncbr/tunnels/data-model.d.ts +146 -0
  44. package/lib/commonjs/extensions/sb-ncbr/tunnels/data-model.js +28 -0
  45. package/lib/commonjs/extensions/sb-ncbr/tunnels/examples.d.ts +12 -0
  46. package/lib/commonjs/extensions/sb-ncbr/tunnels/examples.js +54 -0
  47. package/lib/commonjs/extensions/sb-ncbr/tunnels/props.d.ts +19 -0
  48. package/lib/commonjs/extensions/sb-ncbr/tunnels/props.js +26 -0
  49. package/lib/commonjs/extensions/sb-ncbr/tunnels/representation.d.ts +29 -0
  50. package/lib/commonjs/extensions/sb-ncbr/tunnels/representation.js +99 -0
  51. package/lib/commonjs/mol-canvas3d/canvas3d.d.ts +17 -0
  52. package/lib/commonjs/mol-canvas3d/canvas3d.js +4 -0
  53. package/lib/commonjs/mol-canvas3d/passes/dof.d.ts +34 -0
  54. package/lib/commonjs/mol-canvas3d/passes/dof.js +167 -0
  55. package/lib/commonjs/mol-canvas3d/passes/draw.d.ts +2 -0
  56. package/lib/commonjs/mol-canvas3d/passes/draw.js +31 -8
  57. package/lib/commonjs/mol-canvas3d/passes/image.d.ts +8 -0
  58. package/lib/commonjs/mol-canvas3d/passes/postprocessing.d.ts +8 -0
  59. package/lib/commonjs/mol-canvas3d/passes/postprocessing.js +5 -0
  60. package/lib/commonjs/mol-geo/geometry/lines/lines.d.ts +0 -1
  61. package/lib/commonjs/mol-gl/shader/background.frag.js +95 -95
  62. package/lib/commonjs/mol-gl/shader/background.vert.js +11 -11
  63. package/lib/commonjs/mol-gl/shader/blend-back-dpoit.frag.js +13 -13
  64. package/lib/commonjs/mol-gl/shader/bloom/blur.frag.js +28 -28
  65. package/lib/commonjs/mol-gl/shader/bloom/composite.frag.js +33 -33
  66. package/lib/commonjs/mol-gl/shader/bloom/luminosity.frag.js +52 -52
  67. package/lib/commonjs/mol-gl/shader/cas.frag.js +144 -144
  68. package/lib/commonjs/mol-gl/shader/chunks/apply-fog.glsl.js +31 -31
  69. package/lib/commonjs/mol-gl/shader/chunks/apply-interior-color.glsl.js +12 -12
  70. package/lib/commonjs/mol-gl/shader/chunks/apply-light-color.glsl.js +77 -77
  71. package/lib/commonjs/mol-gl/shader/chunks/apply-marker-color.glsl.js +16 -16
  72. package/lib/commonjs/mol-gl/shader/chunks/assign-clipping-varying.glsl.js +8 -8
  73. package/lib/commonjs/mol-gl/shader/chunks/assign-color-varying.glsl.js +140 -140
  74. package/lib/commonjs/mol-gl/shader/chunks/assign-group.glsl.js +6 -6
  75. package/lib/commonjs/mol-gl/shader/chunks/assign-marker-varying.glsl.js +8 -8
  76. package/lib/commonjs/mol-gl/shader/chunks/assign-material-color.glsl.js +112 -112
  77. package/lib/commonjs/mol-gl/shader/chunks/assign-position.glsl.js +14 -14
  78. package/lib/commonjs/mol-gl/shader/chunks/assign-size.glsl.js +18 -18
  79. package/lib/commonjs/mol-gl/shader/chunks/check-picking-alpha.glsl.js +12 -12
  80. package/lib/commonjs/mol-gl/shader/chunks/check-transparency.glsl.js +16 -16
  81. package/lib/commonjs/mol-gl/shader/chunks/clip-instance.glsl.js +7 -7
  82. package/lib/commonjs/mol-gl/shader/chunks/clip-pixel.glsl.js +5 -5
  83. package/lib/commonjs/mol-gl/shader/chunks/color-frag-params.glsl.js +60 -60
  84. package/lib/commonjs/mol-gl/shader/chunks/color-vert-params.glsl.js +122 -122
  85. package/lib/commonjs/mol-gl/shader/chunks/common-clip.glsl.js +104 -104
  86. package/lib/commonjs/mol-gl/shader/chunks/common-frag-params.glsl.js +150 -150
  87. package/lib/commonjs/mol-gl/shader/chunks/common-vert-params.glsl.js +61 -61
  88. package/lib/commonjs/mol-gl/shader/chunks/common.glsl.js +234 -234
  89. package/lib/commonjs/mol-gl/shader/chunks/dpoit-write.glsl.js +62 -62
  90. package/lib/commonjs/mol-gl/shader/chunks/fade-lod.glsl.js +42 -42
  91. package/lib/commonjs/mol-gl/shader/chunks/float-to-rgba.glsl.js +39 -39
  92. package/lib/commonjs/mol-gl/shader/chunks/light-frag-params.glsl.js +127 -127
  93. package/lib/commonjs/mol-gl/shader/chunks/matrix-scale.glsl.js +5 -5
  94. package/lib/commonjs/mol-gl/shader/chunks/normal-frag-params.glsl.js +2 -2
  95. package/lib/commonjs/mol-gl/shader/chunks/read-from-texture.glsl.js +14 -14
  96. package/lib/commonjs/mol-gl/shader/chunks/rgba-to-float.glsl.js +84 -84
  97. package/lib/commonjs/mol-gl/shader/chunks/size-vert-params.glsl.js +11 -11
  98. package/lib/commonjs/mol-gl/shader/chunks/texture3d-from-1d-trilinear.glsl.js +23 -23
  99. package/lib/commonjs/mol-gl/shader/chunks/texture3d-from-2d-linear.glsl.js +17 -17
  100. package/lib/commonjs/mol-gl/shader/chunks/texture3d-from-2d-nearest.glsl.js +8 -8
  101. package/lib/commonjs/mol-gl/shader/chunks/wboit-write.glsl.js +25 -25
  102. package/lib/commonjs/mol-gl/shader/compose.frag.js +12 -12
  103. package/lib/commonjs/mol-gl/shader/compute/color-smoothing/accumulate.frag.js +23 -23
  104. package/lib/commonjs/mol-gl/shader/compute/color-smoothing/accumulate.vert.js +43 -43
  105. package/lib/commonjs/mol-gl/shader/compute/color-smoothing/normalize.frag.js +15 -15
  106. package/lib/commonjs/mol-gl/shader/copy.frag.js +11 -11
  107. package/lib/commonjs/mol-gl/shader/cylinders.frag.js +266 -266
  108. package/lib/commonjs/mol-gl/shader/cylinders.vert.js +89 -89
  109. package/lib/commonjs/mol-gl/shader/depth-merge.frag.js +23 -23
  110. package/lib/commonjs/mol-gl/shader/direct-volume.frag.js +362 -362
  111. package/lib/commonjs/mol-gl/shader/direct-volume.vert.js +41 -41
  112. package/lib/commonjs/mol-gl/shader/dof.frag.d.ts +7 -0
  113. package/lib/commonjs/mol-gl/shader/dof.frag.js +122 -0
  114. package/lib/commonjs/mol-gl/shader/evaluate-dpoit.frag.js +10 -10
  115. package/lib/commonjs/mol-gl/shader/evaluate-wboit.frag.js +17 -17
  116. package/lib/commonjs/mol-gl/shader/fxaa.frag.js +228 -228
  117. package/lib/commonjs/mol-gl/shader/gaussian-density.frag.js +49 -49
  118. package/lib/commonjs/mol-gl/shader/gaussian-density.vert.js +27 -27
  119. package/lib/commonjs/mol-gl/shader/hi-z.frag.js +18 -18
  120. package/lib/commonjs/mol-gl/shader/histogram-pyramid/reduction.frag.js +58 -58
  121. package/lib/commonjs/mol-gl/shader/histogram-pyramid/sum.frag.js +19 -19
  122. package/lib/commonjs/mol-gl/shader/image.frag.js +169 -169
  123. package/lib/commonjs/mol-gl/shader/image.vert.js +21 -21
  124. package/lib/commonjs/mol-gl/shader/lines.frag.js +42 -42
  125. package/lib/commonjs/mol-gl/shader/lines.vert.js +117 -117
  126. package/lib/commonjs/mol-gl/shader/marching-cubes/active-voxels.frag.js +70 -70
  127. package/lib/commonjs/mol-gl/shader/marching-cubes/isosurface.frag.js +311 -311
  128. package/lib/commonjs/mol-gl/shader/marking/edge.frag.js +28 -28
  129. package/lib/commonjs/mol-gl/shader/marking/overlay.frag.js +26 -26
  130. package/lib/commonjs/mol-gl/shader/mesh.frag.js +65 -65
  131. package/lib/commonjs/mol-gl/shader/mesh.vert.js +49 -49
  132. package/lib/commonjs/mol-gl/shader/outlines.frag.js +95 -95
  133. package/lib/commonjs/mol-gl/shader/points.frag.js +59 -59
  134. package/lib/commonjs/mol-gl/shader/points.vert.js +38 -38
  135. package/lib/commonjs/mol-gl/shader/postprocessing.frag.js +150 -150
  136. package/lib/commonjs/mol-gl/shader/quad.vert.js +10 -10
  137. package/lib/commonjs/mol-gl/shader/shadows.frag.js +123 -123
  138. package/lib/commonjs/mol-gl/shader/smaa/blend.frag.js +56 -56
  139. package/lib/commonjs/mol-gl/shader/smaa/blend.vert.js +25 -25
  140. package/lib/commonjs/mol-gl/shader/smaa/edges.frag.js +66 -66
  141. package/lib/commonjs/mol-gl/shader/smaa/edges.vert.js +26 -26
  142. package/lib/commonjs/mol-gl/shader/smaa/weights.frag.js +206 -206
  143. package/lib/commonjs/mol-gl/shader/smaa/weights.vert.js +32 -32
  144. package/lib/commonjs/mol-gl/shader/spheres.frag.js +148 -148
  145. package/lib/commonjs/mol-gl/shader/spheres.vert.js +132 -132
  146. package/lib/commonjs/mol-gl/shader/ssao-blur.frag.js +97 -97
  147. package/lib/commonjs/mol-gl/shader/ssao.frag.js +211 -211
  148. package/lib/commonjs/mol-gl/shader/text.frag.js +85 -85
  149. package/lib/commonjs/mol-gl/shader/text.vert.js +85 -85
  150. package/lib/commonjs/mol-gl/shader/util/grid3d-template.frag.js +46 -46
  151. package/lib/commonjs/mol-gl/shader-code.js +15 -15
  152. package/lib/commonjs/mol-gl/webgl/compat.js +12 -12
  153. package/lib/commonjs/mol-gl/webgl/context.js +1 -0
  154. package/lib/commonjs/mol-gl/webgl/timer.d.ts +1 -1
  155. package/lib/commonjs/mol-gl/webgl/timer.js +8 -1
  156. package/lib/commonjs/mol-math/linear-algebra/3d/minimize-rmsd.js +2 -1
  157. package/lib/commonjs/mol-plugin/animation-loop.d.ts +1 -0
  158. package/lib/commonjs/mol-plugin/behavior/dynamic/volume-streaming/behavior.d.ts +6 -6
  159. package/lib/commonjs/mol-plugin/behavior/dynamic/volume-streaming/model.d.ts +1 -1
  160. package/lib/commonjs/mol-plugin/behavior/dynamic/volume-streaming/transformers.d.ts +3 -3
  161. package/lib/commonjs/mol-plugin-state/animation/built-in/state-snapshots.js +7 -3
  162. package/lib/commonjs/mol-plugin-ui/viewport/simple-settings.js +3 -0
  163. package/lib/commonjs/servers/common/swagger-ui/indexTemplate.js +66 -66
  164. package/lib/commonjs/servers/volume/config.js +5 -5
  165. package/lib/examples/alpha-orbitals/example-data.js +160 -160
  166. package/lib/examples/alpha-orbitals/index.html +72 -72
  167. package/lib/examples/basic-wrapper/index.html +137 -137
  168. package/lib/examples/lighting/index.html +88 -88
  169. package/lib/examples/proteopedia-wrapper/index.html +236 -236
  170. package/lib/extensions/alpha-orbitals/gpu/shader.frag.js +136 -136
  171. package/lib/extensions/assembly-symmetry/prop.js +24 -24
  172. package/lib/extensions/dnatco/confal-pyramids/behavior.js +5 -5
  173. package/lib/extensions/dnatco/ntc-tube/behavior.js +5 -5
  174. package/lib/extensions/geo-export/usdz-exporter.js +41 -41
  175. package/lib/extensions/meshes/mesh-extension.d.ts +1 -0
  176. package/lib/extensions/mp4-export/encoder.js +1 -1
  177. package/lib/extensions/mvs/components/annotation-label/representation.d.ts +0 -2
  178. package/lib/extensions/mvs/components/custom-label/representation.d.ts +2 -2
  179. package/lib/extensions/mvs/tree/mvs/mvs-builder.d.ts +8 -2
  180. package/lib/extensions/sb-ncbr/index.d.ts +8 -0
  181. package/lib/extensions/sb-ncbr/index.js +8 -0
  182. package/lib/extensions/sb-ncbr/tunnels/actions.d.ts +20 -0
  183. package/lib/extensions/sb-ncbr/tunnels/actions.js +86 -0
  184. package/lib/extensions/sb-ncbr/tunnels/algorithm.d.ts +26 -0
  185. package/lib/extensions/sb-ncbr/tunnels/algorithm.js +469 -0
  186. package/lib/extensions/sb-ncbr/tunnels/behavior.d.ts +40 -0
  187. package/lib/extensions/sb-ncbr/tunnels/behavior.js +92 -0
  188. package/lib/extensions/sb-ncbr/tunnels/data-model.d.ts +146 -0
  189. package/lib/extensions/sb-ncbr/tunnels/data-model.js +23 -0
  190. package/lib/extensions/sb-ncbr/tunnels/examples.d.ts +12 -0
  191. package/lib/extensions/sb-ncbr/tunnels/examples.js +49 -0
  192. package/lib/extensions/sb-ncbr/tunnels/props.d.ts +19 -0
  193. package/lib/extensions/sb-ncbr/tunnels/props.js +22 -0
  194. package/lib/extensions/sb-ncbr/tunnels/representation.d.ts +29 -0
  195. package/lib/extensions/sb-ncbr/tunnels/representation.js +96 -0
  196. package/lib/mol-canvas3d/canvas3d.d.ts +17 -0
  197. package/lib/mol-canvas3d/canvas3d.js +4 -0
  198. package/lib/mol-canvas3d/passes/dof.d.ts +34 -0
  199. package/lib/mol-canvas3d/passes/dof.js +163 -0
  200. package/lib/mol-canvas3d/passes/draw.d.ts +2 -0
  201. package/lib/mol-canvas3d/passes/draw.js +31 -8
  202. package/lib/mol-canvas3d/passes/image.d.ts +8 -0
  203. package/lib/mol-canvas3d/passes/postprocessing.d.ts +8 -0
  204. package/lib/mol-canvas3d/passes/postprocessing.js +5 -0
  205. package/lib/mol-geo/geometry/lines/lines.d.ts +0 -1
  206. package/lib/mol-gl/shader/background.frag.js +95 -95
  207. package/lib/mol-gl/shader/background.vert.js +11 -11
  208. package/lib/mol-gl/shader/blend-back-dpoit.frag.js +13 -13
  209. package/lib/mol-gl/shader/bloom/blur.frag.js +28 -28
  210. package/lib/mol-gl/shader/bloom/composite.frag.js +33 -33
  211. package/lib/mol-gl/shader/bloom/luminosity.frag.js +52 -52
  212. package/lib/mol-gl/shader/cas.frag.js +144 -144
  213. package/lib/mol-gl/shader/chunks/apply-fog.glsl.js +31 -31
  214. package/lib/mol-gl/shader/chunks/apply-interior-color.glsl.js +12 -12
  215. package/lib/mol-gl/shader/chunks/apply-light-color.glsl.js +77 -77
  216. package/lib/mol-gl/shader/chunks/apply-marker-color.glsl.js +16 -16
  217. package/lib/mol-gl/shader/chunks/assign-clipping-varying.glsl.js +8 -8
  218. package/lib/mol-gl/shader/chunks/assign-color-varying.glsl.js +140 -140
  219. package/lib/mol-gl/shader/chunks/assign-group.glsl.js +6 -6
  220. package/lib/mol-gl/shader/chunks/assign-marker-varying.glsl.js +8 -8
  221. package/lib/mol-gl/shader/chunks/assign-material-color.glsl.js +112 -112
  222. package/lib/mol-gl/shader/chunks/assign-position.glsl.js +14 -14
  223. package/lib/mol-gl/shader/chunks/assign-size.glsl.js +18 -18
  224. package/lib/mol-gl/shader/chunks/check-picking-alpha.glsl.js +12 -12
  225. package/lib/mol-gl/shader/chunks/check-transparency.glsl.js +16 -16
  226. package/lib/mol-gl/shader/chunks/clip-instance.glsl.js +7 -7
  227. package/lib/mol-gl/shader/chunks/clip-pixel.glsl.js +5 -5
  228. package/lib/mol-gl/shader/chunks/color-frag-params.glsl.js +60 -60
  229. package/lib/mol-gl/shader/chunks/color-vert-params.glsl.js +122 -122
  230. package/lib/mol-gl/shader/chunks/common-clip.glsl.js +104 -104
  231. package/lib/mol-gl/shader/chunks/common-frag-params.glsl.js +150 -150
  232. package/lib/mol-gl/shader/chunks/common-vert-params.glsl.js +61 -61
  233. package/lib/mol-gl/shader/chunks/common.glsl.js +234 -234
  234. package/lib/mol-gl/shader/chunks/dpoit-write.glsl.js +62 -62
  235. package/lib/mol-gl/shader/chunks/fade-lod.glsl.js +42 -42
  236. package/lib/mol-gl/shader/chunks/float-to-rgba.glsl.js +39 -39
  237. package/lib/mol-gl/shader/chunks/light-frag-params.glsl.js +127 -127
  238. package/lib/mol-gl/shader/chunks/matrix-scale.glsl.js +5 -5
  239. package/lib/mol-gl/shader/chunks/normal-frag-params.glsl.js +2 -2
  240. package/lib/mol-gl/shader/chunks/read-from-texture.glsl.js +14 -14
  241. package/lib/mol-gl/shader/chunks/rgba-to-float.glsl.js +84 -84
  242. package/lib/mol-gl/shader/chunks/size-vert-params.glsl.js +11 -11
  243. package/lib/mol-gl/shader/chunks/texture3d-from-1d-trilinear.glsl.js +23 -23
  244. package/lib/mol-gl/shader/chunks/texture3d-from-2d-linear.glsl.js +17 -17
  245. package/lib/mol-gl/shader/chunks/texture3d-from-2d-nearest.glsl.js +8 -8
  246. package/lib/mol-gl/shader/chunks/wboit-write.glsl.js +25 -25
  247. package/lib/mol-gl/shader/compose.frag.js +12 -12
  248. package/lib/mol-gl/shader/compute/color-smoothing/accumulate.frag.js +23 -23
  249. package/lib/mol-gl/shader/compute/color-smoothing/accumulate.vert.js +43 -43
  250. package/lib/mol-gl/shader/compute/color-smoothing/normalize.frag.js +15 -15
  251. package/lib/mol-gl/shader/copy.frag.js +11 -11
  252. package/lib/mol-gl/shader/cylinders.frag.js +266 -266
  253. package/lib/mol-gl/shader/cylinders.vert.js +89 -89
  254. package/lib/mol-gl/shader/depth-merge.frag.js +23 -23
  255. package/lib/mol-gl/shader/direct-volume.frag.js +362 -362
  256. package/lib/mol-gl/shader/direct-volume.vert.js +41 -41
  257. package/lib/mol-gl/shader/dof.frag.d.ts +7 -0
  258. package/lib/mol-gl/shader/dof.frag.js +119 -0
  259. package/lib/mol-gl/shader/evaluate-dpoit.frag.js +10 -10
  260. package/lib/mol-gl/shader/evaluate-wboit.frag.js +17 -17
  261. package/lib/mol-gl/shader/fxaa.frag.js +228 -228
  262. package/lib/mol-gl/shader/gaussian-density.frag.js +49 -49
  263. package/lib/mol-gl/shader/gaussian-density.vert.js +27 -27
  264. package/lib/mol-gl/shader/hi-z.frag.js +18 -18
  265. package/lib/mol-gl/shader/histogram-pyramid/reduction.frag.js +58 -58
  266. package/lib/mol-gl/shader/histogram-pyramid/sum.frag.js +19 -19
  267. package/lib/mol-gl/shader/image.frag.js +169 -169
  268. package/lib/mol-gl/shader/image.vert.js +21 -21
  269. package/lib/mol-gl/shader/lines.frag.js +42 -42
  270. package/lib/mol-gl/shader/lines.vert.js +117 -117
  271. package/lib/mol-gl/shader/marching-cubes/active-voxels.frag.js +70 -70
  272. package/lib/mol-gl/shader/marching-cubes/isosurface.frag.js +311 -311
  273. package/lib/mol-gl/shader/marking/edge.frag.js +28 -28
  274. package/lib/mol-gl/shader/marking/overlay.frag.js +26 -26
  275. package/lib/mol-gl/shader/mesh.frag.js +65 -65
  276. package/lib/mol-gl/shader/mesh.vert.js +49 -49
  277. package/lib/mol-gl/shader/outlines.frag.js +95 -95
  278. package/lib/mol-gl/shader/points.frag.js +59 -59
  279. package/lib/mol-gl/shader/points.vert.js +38 -38
  280. package/lib/mol-gl/shader/postprocessing.frag.js +150 -150
  281. package/lib/mol-gl/shader/quad.vert.js +10 -10
  282. package/lib/mol-gl/shader/shadows.frag.js +123 -123
  283. package/lib/mol-gl/shader/smaa/blend.frag.js +56 -56
  284. package/lib/mol-gl/shader/smaa/blend.vert.js +25 -25
  285. package/lib/mol-gl/shader/smaa/edges.frag.js +66 -66
  286. package/lib/mol-gl/shader/smaa/edges.vert.js +26 -26
  287. package/lib/mol-gl/shader/smaa/weights.frag.js +206 -206
  288. package/lib/mol-gl/shader/smaa/weights.vert.js +32 -32
  289. package/lib/mol-gl/shader/spheres.frag.js +148 -148
  290. package/lib/mol-gl/shader/spheres.vert.js +132 -132
  291. package/lib/mol-gl/shader/ssao-blur.frag.js +97 -97
  292. package/lib/mol-gl/shader/ssao.frag.js +211 -211
  293. package/lib/mol-gl/shader/text.frag.js +85 -85
  294. package/lib/mol-gl/shader/text.vert.js +85 -85
  295. package/lib/mol-gl/shader/util/grid3d-template.frag.js +46 -46
  296. package/lib/mol-gl/shader-code.js +15 -15
  297. package/lib/mol-gl/webgl/compat.js +12 -12
  298. package/lib/mol-gl/webgl/context.js +1 -0
  299. package/lib/mol-gl/webgl/timer.d.ts +1 -1
  300. package/lib/mol-gl/webgl/timer.js +8 -1
  301. package/lib/mol-math/linear-algebra/3d/minimize-rmsd.js +2 -1
  302. package/lib/mol-plugin/animation-loop.d.ts +1 -0
  303. package/lib/mol-plugin/behavior/dynamic/volume-streaming/behavior.d.ts +6 -6
  304. package/lib/mol-plugin/behavior/dynamic/volume-streaming/model.d.ts +1 -1
  305. package/lib/mol-plugin/behavior/dynamic/volume-streaming/transformers.d.ts +3 -3
  306. package/lib/mol-plugin/version.js +2 -2
  307. package/lib/mol-plugin-state/animation/built-in/state-snapshots.js +7 -3
  308. package/lib/mol-plugin-ui/skin/base/base.scss +37 -37
  309. package/lib/mol-plugin-ui/skin/base/components/controls-base.scss +333 -333
  310. package/lib/mol-plugin-ui/skin/base/components/controls.scss +445 -445
  311. package/lib/mol-plugin-ui/skin/base/components/help.scss +27 -27
  312. package/lib/mol-plugin-ui/skin/base/components/line-graph.scss +67 -67
  313. package/lib/mol-plugin-ui/skin/base/components/log.scss +100 -100
  314. package/lib/mol-plugin-ui/skin/base/components/misc.scss +663 -663
  315. package/lib/mol-plugin-ui/skin/base/components/sequence.scss +125 -125
  316. package/lib/mol-plugin-ui/skin/base/components/slider.scss +165 -165
  317. package/lib/mol-plugin-ui/skin/base/components/tasks.scss +99 -99
  318. package/lib/mol-plugin-ui/skin/base/components/toast.scss +83 -83
  319. package/lib/mol-plugin-ui/skin/base/components/transformer.scss +163 -163
  320. package/lib/mol-plugin-ui/skin/base/components/viewport.scss +194 -194
  321. package/lib/mol-plugin-ui/skin/base/layout/common.scss +71 -71
  322. package/lib/mol-plugin-ui/skin/base/layout/controls-landscape.scss +89 -89
  323. package/lib/mol-plugin-ui/skin/base/layout/controls-outside.scss +98 -98
  324. package/lib/mol-plugin-ui/skin/base/layout/controls-portrait.scss +108 -108
  325. package/lib/mol-plugin-ui/skin/base/layout.scss +40 -40
  326. package/lib/mol-plugin-ui/skin/base/logo.scss +12 -12
  327. package/lib/mol-plugin-ui/skin/base/normalize.scss +209 -209
  328. package/lib/mol-plugin-ui/skin/base/ui.scss +40 -40
  329. package/lib/mol-plugin-ui/skin/base/variables.scss +88 -88
  330. package/lib/mol-plugin-ui/skin/blue.scss +1 -1
  331. package/lib/mol-plugin-ui/skin/colors/blue.scss +23 -23
  332. package/lib/mol-plugin-ui/skin/colors/dark.scss +23 -23
  333. package/lib/mol-plugin-ui/skin/colors/light.scss +29 -29
  334. package/lib/mol-plugin-ui/skin/dark.scss +1 -1
  335. package/lib/mol-plugin-ui/skin/light.scss +1 -1
  336. package/lib/mol-plugin-ui/viewport/simple-settings.js +3 -0
  337. package/lib/servers/common/swagger-ui/indexTemplate.js +66 -66
  338. package/lib/servers/volume/config.js +5 -5
  339. package/package.json +196 -195
@@ -1,113 +1,113 @@
1
- export const assign_material_color = `
2
- #if defined(dNeedsMarker)
3
- float marker = uMarker;
4
- if (uMarker == -1.0) {
5
- marker = floor(vMarker * 255.0 + 0.5); // rounding required to work on some cards on win
6
- }
7
- #endif
8
-
9
- #if defined(dRenderVariant_color)
10
- #if defined(dUsePalette)
11
- vec4 material = vec4(texture2D(tPalette, vec2(vPaletteV, 0.5)).rgb, uAlpha);
12
- #elif defined(dColorType_uniform)
13
- vec4 material = vec4(uColor, uAlpha);
14
- #elif defined(dColorType_varying)
15
- vec4 material = vec4(vColor.rgb, uAlpha);
16
- #endif
17
-
18
- // mix material with overpaint
19
- #if defined(dOverpaint)
20
- material.rgb = mix(material.rgb, vOverpaint.rgb, vOverpaint.a);
21
- #endif
22
-
23
- float emissive = uEmissive;
24
- #ifdef dEmissive
25
- emissive += vEmissive;
26
- #endif
27
-
28
- float metalness = uMetalness;
29
- float roughness = uRoughness;
30
- float bumpiness = uBumpiness;
31
- #ifdef dSubstance
32
- float sf = clamp(vSubstance.a, 0.0, 0.99); // clamp to avoid artifacts
33
- metalness = mix(metalness, vSubstance.r, sf);
34
- roughness = mix(roughness, vSubstance.g, sf);
35
- bumpiness = mix(bumpiness, vSubstance.b, sf);
36
- #endif
37
- #elif defined(dRenderVariant_depth)
38
- if (fragmentDepth > getDepth(gl_FragCoord.xy / uDrawingBufferSize)) {
39
- discard;
40
- }
41
-
42
- #ifndef dXrayShaded
43
- #if defined(dTransparency)
44
- float dta = 1.0 - vTransparency;
45
- if (vTransparency < 0.2) dta = 1.0; // hard cutoff looks better
46
-
47
- if (uRenderMask == MaskTransparent && uAlpha * dta == 1.0) {
48
- discard;
49
- } else if (uRenderMask == MaskOpaque && uAlpha * dta < 1.0) {
50
- discard;
51
- }
52
- #else
53
- if (uRenderMask == MaskTransparent && uAlpha == 1.0) {
54
- discard;
55
- } else if (uRenderMask == MaskOpaque && uAlpha < 1.0) {
56
- discard;
57
- }
58
- #endif
59
- #else
60
- if (uRenderMask == MaskOpaque) {
61
- discard;
62
- }
63
- #endif
64
-
65
- vec4 material = packDepthToRGBA(fragmentDepth);
66
- #elif defined(dRenderVariant_marking)
67
- vec4 material;
68
- if(uMarkingType == 1) {
69
- if (marker > 0.0)
70
- discard;
71
- #ifdef enabledFragDepth
72
- material = packDepthToRGBA(gl_FragDepthEXT);
73
- #else
74
- material = packDepthToRGBA(gl_FragCoord.z);
75
- #endif
76
- } else {
77
- if (marker == 0.0)
78
- discard;
79
- float depthTest = 1.0;
80
- if (uMarkingDepthTest) {
81
- depthTest = (fragmentDepth >= getDepthPacked(gl_FragCoord.xy / uDrawingBufferSize)) ? 1.0 : 0.0;
82
- }
83
- bool isHighlight = intMod(marker, 2.0) > 0.1;
84
- float viewZ = depthToViewZ(uIsOrtho, fragmentDepth, uNear, uFar);
85
- float fogFactor = smoothstep(uFogNear, uFogFar, abs(viewZ));
86
- if (fogFactor == 1.0)
87
- discard;
88
- material = vec4(0.0, depthTest, isHighlight ? 1.0 : 0.0, 1.0 - fogFactor);
89
- }
90
- #elif defined(dRenderVariant_emissive)
91
- float emissive = uEmissive;
92
- #ifdef dEmissive
93
- emissive += vEmissive;
94
- #endif
95
- vec4 material = vec4(emissive);
96
- #endif
97
-
98
- // apply per-group transparency
99
- #if defined(dTransparency) && (defined(dRenderVariant_pick) || defined(dRenderVariant_color) || defined(dRenderVariant_emissive))
100
- float ta = 1.0 - vTransparency;
101
- if (vTransparency < 0.09) ta = 1.0; // hard cutoff looks better
102
-
103
- #if defined(dRenderVariant_pick)
104
- if (ta * uAlpha < uPickingAlphaThreshold)
105
- discard; // ignore so the element below can be picked
106
- #elif defined(dRenderVariant_emissive)
107
- if (ta < 1.0)
108
- discard; // emissive not supported with transparency
109
- #elif defined(dRenderVariant_color)
110
- material.a *= ta;
111
- #endif
112
- #endif
1
+ export const assign_material_color = `
2
+ #if defined(dNeedsMarker)
3
+ float marker = uMarker;
4
+ if (uMarker == -1.0) {
5
+ marker = floor(vMarker * 255.0 + 0.5); // rounding required to work on some cards on win
6
+ }
7
+ #endif
8
+
9
+ #if defined(dRenderVariant_color)
10
+ #if defined(dUsePalette)
11
+ vec4 material = vec4(texture2D(tPalette, vec2(vPaletteV, 0.5)).rgb, uAlpha);
12
+ #elif defined(dColorType_uniform)
13
+ vec4 material = vec4(uColor, uAlpha);
14
+ #elif defined(dColorType_varying)
15
+ vec4 material = vec4(vColor.rgb, uAlpha);
16
+ #endif
17
+
18
+ // mix material with overpaint
19
+ #if defined(dOverpaint)
20
+ material.rgb = mix(material.rgb, vOverpaint.rgb, vOverpaint.a);
21
+ #endif
22
+
23
+ float emissive = uEmissive;
24
+ #ifdef dEmissive
25
+ emissive += vEmissive;
26
+ #endif
27
+
28
+ float metalness = uMetalness;
29
+ float roughness = uRoughness;
30
+ float bumpiness = uBumpiness;
31
+ #ifdef dSubstance
32
+ float sf = clamp(vSubstance.a, 0.0, 0.99); // clamp to avoid artifacts
33
+ metalness = mix(metalness, vSubstance.r, sf);
34
+ roughness = mix(roughness, vSubstance.g, sf);
35
+ bumpiness = mix(bumpiness, vSubstance.b, sf);
36
+ #endif
37
+ #elif defined(dRenderVariant_depth)
38
+ if (fragmentDepth > getDepth(gl_FragCoord.xy / uDrawingBufferSize)) {
39
+ discard;
40
+ }
41
+
42
+ #ifndef dXrayShaded
43
+ #if defined(dTransparency)
44
+ float dta = 1.0 - vTransparency;
45
+ if (vTransparency < 0.2) dta = 1.0; // hard cutoff looks better
46
+
47
+ if (uRenderMask == MaskTransparent && uAlpha * dta == 1.0) {
48
+ discard;
49
+ } else if (uRenderMask == MaskOpaque && uAlpha * dta < 1.0) {
50
+ discard;
51
+ }
52
+ #else
53
+ if (uRenderMask == MaskTransparent && uAlpha == 1.0) {
54
+ discard;
55
+ } else if (uRenderMask == MaskOpaque && uAlpha < 1.0) {
56
+ discard;
57
+ }
58
+ #endif
59
+ #else
60
+ if (uRenderMask == MaskOpaque) {
61
+ discard;
62
+ }
63
+ #endif
64
+
65
+ vec4 material = packDepthToRGBA(fragmentDepth);
66
+ #elif defined(dRenderVariant_marking)
67
+ vec4 material;
68
+ if(uMarkingType == 1) {
69
+ if (marker > 0.0)
70
+ discard;
71
+ #ifdef enabledFragDepth
72
+ material = packDepthToRGBA(gl_FragDepthEXT);
73
+ #else
74
+ material = packDepthToRGBA(gl_FragCoord.z);
75
+ #endif
76
+ } else {
77
+ if (marker == 0.0)
78
+ discard;
79
+ float depthTest = 1.0;
80
+ if (uMarkingDepthTest) {
81
+ depthTest = (fragmentDepth >= getDepthPacked(gl_FragCoord.xy / uDrawingBufferSize)) ? 1.0 : 0.0;
82
+ }
83
+ bool isHighlight = intMod(marker, 2.0) > 0.1;
84
+ float viewZ = depthToViewZ(uIsOrtho, fragmentDepth, uNear, uFar);
85
+ float fogFactor = smoothstep(uFogNear, uFogFar, abs(viewZ));
86
+ if (fogFactor == 1.0)
87
+ discard;
88
+ material = vec4(0.0, depthTest, isHighlight ? 1.0 : 0.0, 1.0 - fogFactor);
89
+ }
90
+ #elif defined(dRenderVariant_emissive)
91
+ float emissive = uEmissive;
92
+ #ifdef dEmissive
93
+ emissive += vEmissive;
94
+ #endif
95
+ vec4 material = vec4(emissive);
96
+ #endif
97
+
98
+ // apply per-group transparency
99
+ #if defined(dTransparency) && (defined(dRenderVariant_pick) || defined(dRenderVariant_color) || defined(dRenderVariant_emissive))
100
+ float ta = 1.0 - vTransparency;
101
+ if (vTransparency < 0.09) ta = 1.0; // hard cutoff looks better
102
+
103
+ #if defined(dRenderVariant_pick)
104
+ if (ta * uAlpha < uPickingAlphaThreshold)
105
+ discard; // ignore so the element below can be picked
106
+ #elif defined(dRenderVariant_emissive)
107
+ if (ta < 1.0)
108
+ discard; // emissive not supported with transparency
109
+ #elif defined(dRenderVariant_color)
110
+ material.a *= ta;
111
+ #endif
112
+ #endif
113
113
  `;
@@ -1,15 +1,15 @@
1
- export const assign_position = `
2
- mat4 model = uModel * aTransform;
3
- mat4 modelView = uView * model;
4
- #ifdef dGeometryType_textureMesh
5
- vec3 position = readFromTexture(tPosition, VertexID, uGeoTexDim).xyz;
6
- #else
7
- vec3 position = aPosition;
8
- #endif
9
- vec4 position4 = vec4(position, 1.0);
10
- // for accessing tColorGrid in vert shader and for clipping in frag shader
11
- vModelPosition = (model * position4).xyz;
12
- vec4 mvPosition = modelView * position4;
13
- vViewPosition = mvPosition.xyz;
14
- gl_Position = uProjection * mvPosition;
1
+ export const assign_position = `
2
+ mat4 model = uModel * aTransform;
3
+ mat4 modelView = uView * model;
4
+ #ifdef dGeometryType_textureMesh
5
+ vec3 position = readFromTexture(tPosition, VertexID, uGeoTexDim).xyz;
6
+ #else
7
+ vec3 position = aPosition;
8
+ #endif
9
+ vec4 position4 = vec4(position, 1.0);
10
+ // for accessing tColorGrid in vert shader and for clipping in frag shader
11
+ vModelPosition = (model * position4).xyz;
12
+ vec4 mvPosition = modelView * position4;
13
+ vViewPosition = mvPosition.xyz;
14
+ gl_Position = uProjection * mvPosition;
15
15
  `;
@@ -1,19 +1,19 @@
1
- export const assign_size = `
2
- #if defined(dSizeType_uniform)
3
- float size = uSize;
4
- #elif defined(dSizeType_attribute)
5
- float size = aSize;
6
- #elif defined(dSizeType_instance)
7
- float size = unpackRGBToInt(readFromTexture(tSize, aInstance, uSizeTexDim).rgb);
8
- #elif defined(dSizeType_group)
9
- float size = unpackRGBToInt(readFromTexture(tSize, group, uSizeTexDim).rgb);
10
- #elif defined(dSizeType_groupInstance)
11
- float size = unpackRGBToInt(readFromTexture(tSize, aInstance * float(uGroupCount) + group, uSizeTexDim).rgb);
12
- #endif
13
-
14
- #if defined(dSizeType_instance) || defined(dSizeType_group) || defined(dSizeType_groupInstance)
15
- size /= 100.0; // NOTE factor also set in TypeScript
16
- #endif
17
-
18
- size *= uSizeFactor;
1
+ export const assign_size = `
2
+ #if defined(dSizeType_uniform)
3
+ float size = uSize;
4
+ #elif defined(dSizeType_attribute)
5
+ float size = aSize;
6
+ #elif defined(dSizeType_instance)
7
+ float size = unpackRGBToInt(readFromTexture(tSize, aInstance, uSizeTexDim).rgb);
8
+ #elif defined(dSizeType_group)
9
+ float size = unpackRGBToInt(readFromTexture(tSize, group, uSizeTexDim).rgb);
10
+ #elif defined(dSizeType_groupInstance)
11
+ float size = unpackRGBToInt(readFromTexture(tSize, aInstance * float(uGroupCount) + group, uSizeTexDim).rgb);
12
+ #endif
13
+
14
+ #if defined(dSizeType_instance) || defined(dSizeType_group) || defined(dSizeType_groupInstance)
15
+ size /= 100.0; // NOTE factor also set in TypeScript
16
+ #endif
17
+
18
+ size *= uSizeFactor;
19
19
  `;
@@ -1,13 +1,13 @@
1
- export const check_picking_alpha = `
2
- float viewZ = depthToViewZ(uIsOrtho, fragmentDepth, uNear, uFar);
3
- float fogFactor = smoothstep(uFogNear, uFogFar, abs(viewZ));
4
- float alpha = (1.0 - fogFactor) * uAlpha;
5
- // if not opaque enough ignore so the element below can be picked
6
- if (uAlpha < uPickingAlphaThreshold || alpha < 0.1) {
7
- #ifdef dTransparentBackfaces_opaque
8
- if (!interior) discard;
9
- #else
10
- discard;
11
- #endif
12
- }
1
+ export const check_picking_alpha = `
2
+ float viewZ = depthToViewZ(uIsOrtho, fragmentDepth, uNear, uFar);
3
+ float fogFactor = smoothstep(uFogNear, uFogFar, abs(viewZ));
4
+ float alpha = (1.0 - fogFactor) * uAlpha;
5
+ // if not opaque enough ignore so the element below can be picked
6
+ if (uAlpha < uPickingAlphaThreshold || alpha < 0.1) {
7
+ #ifdef dTransparentBackfaces_opaque
8
+ if (!interior) discard;
9
+ #else
10
+ discard;
11
+ #endif
12
+ }
13
13
  `;
@@ -1,17 +1,17 @@
1
- export const check_transparency = `
2
- #if defined(dRenderVariant_color)
3
- #if defined(dTransparentBackfaces_off)
4
- if (interior && material.a < 1.0) discard;
5
- #elif defined(dTransparentBackfaces_opaque)
6
- if (interior) material.a = 1.0;
7
- #endif
8
-
9
- #if !defined(dXrayShaded_on) && !defined(dXrayShaded_inverted)
10
- if ((uRenderMask == MaskOpaque && material.a < 1.0) ||
11
- (uRenderMask == MaskTransparent && material.a == 1.0)
12
- ) {
13
- discard;
14
- }
15
- #endif
16
- #endif
1
+ export const check_transparency = `
2
+ #if defined(dRenderVariant_color)
3
+ #if defined(dTransparentBackfaces_off)
4
+ if (interior && material.a < 1.0) discard;
5
+ #elif defined(dTransparentBackfaces_opaque)
6
+ if (interior) material.a = 1.0;
7
+ #endif
8
+
9
+ #if !defined(dXrayShaded_on) && !defined(dXrayShaded_inverted)
10
+ if ((uRenderMask == MaskOpaque && material.a < 1.0) ||
11
+ (uRenderMask == MaskTransparent && material.a == 1.0)
12
+ ) {
13
+ discard;
14
+ }
15
+ #endif
16
+ #endif
17
17
  `;
@@ -1,8 +1,8 @@
1
- export const clip_instance = `
2
- #if defined(dClipVariant_instance) && dClipObjectCount != 0
3
- vec4 mCenter = uModel * aTransform * vec4(uInvariantBoundingSphere.xyz, 1.0);
4
- if (clipTest(vec4(mCenter.xyz, uInvariantBoundingSphere.w)))
5
- // move out of [ -w, +w ] to 'discard' in vert shader
6
- gl_Position.z = 2.0 * gl_Position.w;
7
- #endif
1
+ export const clip_instance = `
2
+ #if defined(dClipVariant_instance) && dClipObjectCount != 0
3
+ vec4 mCenter = uModel * aTransform * vec4(uInvariantBoundingSphere.xyz, 1.0);
4
+ if (clipTest(vec4(mCenter.xyz, uInvariantBoundingSphere.w)))
5
+ // move out of [ -w, +w ] to 'discard' in vert shader
6
+ gl_Position.z = 2.0 * gl_Position.w;
7
+ #endif
8
8
  `;
@@ -1,6 +1,6 @@
1
- export const clip_pixel = `
2
- #if defined(dClipVariant_pixel) && dClipObjectCount != 0
3
- if (clipTest(vec4(vModelPosition, 0.0)))
4
- discard;
5
- #endif
1
+ export const clip_pixel = `
2
+ #if defined(dClipVariant_pixel) && dClipObjectCount != 0
3
+ if (clipTest(vec4(vModelPosition, 0.0)))
4
+ discard;
5
+ #endif
6
6
  `;
@@ -1,61 +1,61 @@
1
- export const color_frag_params = `
2
- uniform float uMetalness;
3
- uniform float uRoughness;
4
- uniform float uBumpiness;
5
- #ifdef bumpEnabled
6
- uniform float uBumpFrequency;
7
- uniform float uBumpAmplitude;
8
- #endif
9
- uniform float uEmissive;
10
-
11
- #if defined(dRenderVariant_color)
12
- #if defined(dColorType_uniform)
13
- uniform vec3 uColor;
14
- #elif defined(dColorType_varying)
15
- varying vec4 vColor;
16
- #endif
17
-
18
- #ifdef dUsePalette
19
- uniform sampler2D tPalette;
20
- varying float vPaletteV;
21
- #endif
22
-
23
- #ifdef dOverpaint
24
- varying vec4 vOverpaint;
25
- #endif
26
-
27
- #ifdef dEmissive
28
- varying float vEmissive;
29
- #endif
30
-
31
- #ifdef dSubstance
32
- varying vec4 vSubstance;
33
- #endif
34
- #elif defined(dRenderVariant_emissive)
35
- #ifdef dEmissive
36
- varying float vEmissive;
37
- #endif
38
- #elif defined(dRenderVariant_pick)
39
- #if __VERSION__ == 100 || !defined(dVaryingGroup)
40
- #ifdef requiredDrawBuffers
41
- varying vec4 vObject;
42
- varying vec4 vInstance;
43
- varying vec4 vGroup;
44
- #else
45
- varying vec4 vColor;
46
- #endif
47
- #else
48
- #ifdef requiredDrawBuffers
49
- flat in vec4 vObject;
50
- flat in vec4 vInstance;
51
- flat in vec4 vGroup;
52
- #else
53
- flat in vec4 vColor;
54
- #endif
55
- #endif
56
- #endif
57
-
58
- #ifdef dTransparency
59
- varying float vTransparency;
60
- #endif
1
+ export const color_frag_params = `
2
+ uniform float uMetalness;
3
+ uniform float uRoughness;
4
+ uniform float uBumpiness;
5
+ #ifdef bumpEnabled
6
+ uniform float uBumpFrequency;
7
+ uniform float uBumpAmplitude;
8
+ #endif
9
+ uniform float uEmissive;
10
+
11
+ #if defined(dRenderVariant_color)
12
+ #if defined(dColorType_uniform)
13
+ uniform vec3 uColor;
14
+ #elif defined(dColorType_varying)
15
+ varying vec4 vColor;
16
+ #endif
17
+
18
+ #ifdef dUsePalette
19
+ uniform sampler2D tPalette;
20
+ varying float vPaletteV;
21
+ #endif
22
+
23
+ #ifdef dOverpaint
24
+ varying vec4 vOverpaint;
25
+ #endif
26
+
27
+ #ifdef dEmissive
28
+ varying float vEmissive;
29
+ #endif
30
+
31
+ #ifdef dSubstance
32
+ varying vec4 vSubstance;
33
+ #endif
34
+ #elif defined(dRenderVariant_emissive)
35
+ #ifdef dEmissive
36
+ varying float vEmissive;
37
+ #endif
38
+ #elif defined(dRenderVariant_pick)
39
+ #if __VERSION__ == 100 || !defined(dVaryingGroup)
40
+ #ifdef requiredDrawBuffers
41
+ varying vec4 vObject;
42
+ varying vec4 vInstance;
43
+ varying vec4 vGroup;
44
+ #else
45
+ varying vec4 vColor;
46
+ #endif
47
+ #else
48
+ #ifdef requiredDrawBuffers
49
+ flat in vec4 vObject;
50
+ flat in vec4 vInstance;
51
+ flat in vec4 vGroup;
52
+ #else
53
+ flat in vec4 vColor;
54
+ #endif
55
+ #endif
56
+ #endif
57
+
58
+ #ifdef dTransparency
59
+ varying float vTransparency;
60
+ #endif
61
61
  `;