// Cable Car
let geomBox1 = new THREE.BoxGeometry(10, 4.5, 10, 1, 1, 1);

let matBox1 = new THREE.MeshPhongMaterial({
  color: ColorsCableCar.orange,
});

let box1 = new THREE.Mesh(geomBox1, matBox1);

// Moon
let moon = new THREE.Mesh(geomMoon, matMoon);

// Taken from https://codepen.io/tr13ze/pen/QpNbNd?editors=1010
var geomHalo = new THREE.SphereGeometry(16, 32, 16);

var matHalo = new THREE.ShaderMaterial({
  uniforms: {},
  vertexShader: document.getElementById("vertexShader").textContent,
  fragmentShader: document.getElementById("fragmentShader").textContent,
  side: THREE.BackSide,
  blending: THREE.AdditiveBlending,
  transparent: true
});

var halo = new THREE.Mesh(geomHalo, matHalo);
<!--Taken from https://codepen.io/tr13ze/pen/QpNbNd?editors=1010-->
<script id="vertexShader" type="x-shader/x-vertex">
  varying vec3 vNormal; void main() { vNormal = normalize( normalMatrix * normal ); gl_Position = projectionMatrix * modelViewMatrix * vec4( position, 1.0 ); }
</script>
<script id="fragmentShader" type="x-shader/x-vertex">
  varying vec3 vNormal; void main() { float intensity = pow( 0.7 - dot( vNormal, vec3( 0.0, 0.0, 0.5 ) ), 4.0 ); gl_FragColor = vec4( 0.89, 0.82, 0.69, 1.0 ) * intensity; }
</script>
const pointLightHelper = new THREE.PointLightHelper(pointLight, 30);

const helper = new THREE.DirectionalLightHelper(directionalLight, 30);
How to Model a Cartoon Rocket by Southern Shotty: https://www.youtube.com/watch?v=wMBu4ctUxn8

3D modeling talk

By Stívali Serna

3D modeling talk

  • 839