title: Three.js r91 - how do I use the new linewidth property to fatten/widen lines?
body: <p>I have just encountered a scenario in the project I am building in which I needed to generate wireframe-style lines with a transparent inside to "outline" the shape as if it is drawn in a comic/cartoon style, instead of creating the actual solid object itself.</p>
  
  <p>These outlines need to be thicker than the default <code>linewidth</code> of <code>LineBasicMaterial</code>. It was a known issue that <code>linewidth</code>did not actually work/do anything for <code>LineBasicMaterial</code>, and so I was stumped on how I would solve my issue.</p>
  
  <p>I was previously using r90, but to my excitement version r91 of three.js was very recently released and with it comes brand new "fat lines" as they are called in the example. This seems like the perfect solution to my problem, as it basically just adds the ability to increase the <code>linewidth</code> again.</p>
  
  <p>However, after upgrading to r91, looking through <a href="https://github.com/mrdoob/three.js/blob/master/examples/webgl_lines_fat.html" rel="nofollow noreferrer">the code for the "fat lines" example</a>, and trying to copy what I saw in there, I am having no luck with <code>linewidth</code></p>
  
  <p><strong>Here is my code prior to upgrading to r91:</strong></p>
  
  <pre><code>var Pavement = function() {
      this.mesh = new THREE.Object3D();
      this.mesh.name = "pavement";
  
      geomPavement = new THREE.BoxBufferGeometry(100, 25, 20000);
      var edgesPavement = new THREE.EdgesGeometry( geomPavement );
      var linePavement = new THREE.LineSegments( edgesPavement, new THREE.LineBasicMaterial( { color: Colors.black, linewidth: 10 } ) );
      matPavement = new THREE.MeshPhongMaterial({color: Colors.black});
      PavementObject = new THREE.Mesh(geomPavement, matPavement);
  
      PavementObject.receiveShadow = true;
      PavementObject.castShadow = true;
  
      this.mesh.add(linePavement);
  }
  </code></pre>
  
  <p>a little messy, but the basic premise is that I was previously creating the object (and no lines), hence the <code>PavementObject = new THREE.Mesh(geomPavement, matPavement);</code>, but then decided to attempt the line approach by getting the edges of the <code>BoxGeometry</code> and using them to create <code>LineSegments</code> with a <code>LineBasicMaterial</code>. I kept the code for the <code>Mesh</code> creation as I may need the object to be non-transparent, and so I can use the <code>Mesh</code> as a "fill" to colour in between the lines.</p>
  
  <p><strong>After upgrading to r91 I thought it would be as simple as the following:</strong></p>
  
  <pre><code>var Pavement = function() {
      this.mesh = new THREE.Object3D();
      this.mesh.name = "pavement";
  
      geomPavement = new THREE.BoxBufferGeometry(100, 25, 20000);
      var edgesPavement = new THREE.EdgesGeometry( geomPavement );
      var linePavement = new THREE.LineSegments2( edgesPavement, new THREE.LineMaterial( { color: Colors.black, linewidth: 10 } ) );
      matPavement = new THREE.MeshPhongMaterial({color: Colors.black});
      PavementObject = new THREE.Mesh(geomPavement, matPavement);
      PavementObject.receiveShadow = true;
      PavementObject.castShadow = true;
      this.mesh.add(linePavement);
  }
  </code></pre>
  
  <p>All I did was change <code>LineBasicMaterial</code> to <code>LineMaterial</code>, and <code>LineSegments</code> to <code>LineSegments2</code></p>
  
  <p><strong>What I need</strong></p>
  
  <p>I am looking for a way to increase the <code>linewidth</code> of my <code>LineSegements</code>, ideally using the new "fat lines" from r91. I imagine the reason this doesn't work for me is due to a lack of understanding &amp; a lack of documentation of the new version r91, and it is probably something very simple, but any help is appreciated!</p>
  
  <p><strong>ALSO</strong></p>
  
  <p>In the code for the example that I linked to, each new <code>/examples/js/lines/...</code> file is individually linked to via a script tag. I did this in my project just in case, but is this necessary? Is the functionality not in the main build file or do I have to include it via script tags, like I have to for <code>OrbitControls</code> for example.</p>
  
  <p>Thank you.</p>