diff options
Diffstat (limited to 'client/splash/face/mesh.js')
| -rw-r--r-- | client/splash/face/mesh.js | 25 |
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 |
