diff --git a/src/mol-geo/geometry/lines/lines.ts b/src/mol-geo/geometry/lines/lines.ts
index 9e0cba304a392e027395d8b48ba5fc0f4f98f5d7..84b565d1d1df3460e108c8a64303d190dfc4a384 100644
--- a/src/mol-geo/geometry/lines/lines.ts
+++ b/src/mol-geo/geometry/lines/lines.ts
@@ -95,7 +95,7 @@ export namespace Lines {
         ...Geometry.Params,
         lineSizeAttenuation: BooleanParam('Line Size Attenuation', '', false),
         sizeTheme: SelectParam<SizeThemeName>('Size Theme', '', 'uniform', SizeThemeOptions),
-        sizeValue: NumberParam('Size Value', '', 1, 0, 0.1, 20),
+        sizeValue: NumberParam('Size Value', '', 1, 0, 10, 0.1),
         sizeFactor: NumberParam('Size Factor', '', 1, 0, 10, 0.1),
     }
     export const DefaultProps = paramDefaultValues(Params)
diff --git a/src/mol-geo/representation/structure/visual/gaussian-surface-wireframe.ts b/src/mol-geo/representation/structure/visual/gaussian-surface-wireframe.ts
index 1c5d4e091484a146873d033080dce45fca882d75..6ea66158d5fbe64a6a148effe5e7bd71e11c824c 100644
--- a/src/mol-geo/representation/structure/visual/gaussian-surface-wireframe.ts
+++ b/src/mol-geo/representation/structure/visual/gaussian-surface-wireframe.ts
@@ -12,7 +12,8 @@ import { StructureElementIterator, getElementLoci, markElement } from './util/el
 import { computeMarchingCubesLines } from '../../../util/marching-cubes/algorithm';
 import { Lines } from '../../../geometry/lines/lines';
 import { GaussianDensityProps, GaussianDensityParams } from 'mol-model/structure/structure/unit/gaussian-density';
-import { paramDefaultValues } from 'mol-view/parameter';
+import { paramDefaultValues, SelectParam, NumberParam, BooleanParam } from 'mol-view/parameter';
+import { SizeThemeName, SizeThemeOptions } from 'mol-view/theme/size';
 
 async function createGaussianWireframe(ctx: RuntimeContext, unit: Unit, structure: Structure, props: GaussianDensityProps, lines?: Lines): Promise<Lines> {
     const { smoothness } = props
@@ -33,6 +34,9 @@ async function createGaussianWireframe(ctx: RuntimeContext, unit: Unit, structur
 export const GaussianWireframeParams = {
     ...UnitsLinesParams,
     ...GaussianDensityParams,
+    sizeTheme: SelectParam<SizeThemeName>('Size Theme', '', 'uniform', SizeThemeOptions),
+    sizeValue: NumberParam('Size Value', '', 2, 0, 10, 0.1),
+    lineSizeAttenuation: BooleanParam('Line Size Attenuation', '', false),
 }
 export const DefaultGaussianWireframeProps = paramDefaultValues(GaussianWireframeParams)
 export type GaussianWireframeProps = typeof DefaultGaussianWireframeProps
diff --git a/src/mol-gl/shader/lines.vert b/src/mol-gl/shader/lines.vert
index 5aae3b718d1360b205c0760009617d640a233931..854f103160515b2cbe1d3ea37c98bb5d674f0742 100644
--- a/src/mol-gl/shader/lines.vert
+++ b/src/mol-gl/shader/lines.vert
@@ -60,8 +60,6 @@ void main(){
         float size = readFromTexture(tSize, aInstance * float(uGroupCount) + aGroup, uSizeTexDim).r;
     #endif
 
-    float linewidth = 3.0; // size;
-
     mat4 modelView = uView * uModel * aTransform;
 
     // camera space
@@ -106,6 +104,14 @@ void main(){
     // sign flip
     if (aMapping.x < 0.0) offset *= -1.0;
 
+    // calculate linewidth
+    float linewidth;
+    #ifdef dLineSizeAttenuation
+        linewidth = size * uPixelRatio * ((uViewportHeight / 2.0) / -start.z) * 5.0;
+    #else
+        linewidth = size * uPixelRatio;
+    #endif
+
     // adjust for linewidth
     offset *= linewidth;