summaryrefslogtreecommitdiff
path: root/client/splash/face/mesh.js
diff options
context:
space:
mode:
Diffstat (limited to 'client/splash/face/mesh.js')
-rw-r--r--client/splash/face/mesh.js25
1 files changed, 17 insertions, 8 deletions
diff --git a/client/splash/face/mesh.js b/client/splash/face/mesh.js
index 92aff020..d823ecf5 100644
--- a/client/splash/face/mesh.js
+++ b/client/splash/face/mesh.js
@@ -1,4 +1,8 @@
-import { Points, Mesh, MeshBasicMaterial, MeshStandardMaterial, VertexColors, TrianglesDrawMode, DoubleSide } from 'three'
+import {
+ Points,
+ Mesh, MeshBasicMaterial, MeshStandardMaterial,
+ VertexColors, TrianglesDrawMode, DoubleSide
+} from 'three'
import { scene } from '../renderer'
@@ -13,15 +17,16 @@ DRACOLoader.setDecoderPath('/assets/js/vendor/draco/')
const dracoLoader = new DRACOLoader()
DRACOLoader.getDecoderModule()
+dracoLoader.setVerbosity(1)
+dracoLoader.setDrawMode(TrianglesDrawMode)
export function load(name) {
- dracoLoader.setVerbosity(1)
- dracoLoader.setDrawMode(TrianglesDrawMode)
dracoLoader.setSkipDequantization('position', true)
return new Promise((resolve, reject) => {
- dracoLoader.load('/assets/data/faces/' + name + '.drc', (geometry) => {
- resolve(createFaceMeshes(geometry))
- })
+ const loaded = geometry => resolve(geometry)
+ const progress = () => {}
+ const error = () => reject()
+ dracoLoader.load('/assets/data/faces/' + name + '.drc', loaded, progress, error)
})
}
@@ -29,7 +34,7 @@ export function update(name) {
load(name)
}
-function createFaceMeshes(geometry) {
+export function createFaceMeshes(geometry) {
return {
blank: createBlankFace(geometry),
wireframe: createWireframeFace(geometry),
@@ -52,6 +57,7 @@ function createBlankFace(geometry) {
color: 0xFFFFFF,
metalness: 0.2,
roughness: 0.5,
+ alphaTest: 0.01,
})
material.wireframe = false
material.transparent = true
@@ -61,7 +67,10 @@ function createBlankFace(geometry) {
}
function createWireframeFace(geometry) {
- const material = new MeshBasicMaterial({ vertexColors: VertexColors })
+ const material = new MeshBasicMaterial({
+ vertexColors: VertexColors,
+ alphaTest: 0.01,
+ })
material.wireframe = true
material.transparent = true
material.opacity = 0