diff --git a/spine-ts/spine-threejs/example/index.html b/spine-ts/spine-threejs/example/index.html index ca632b15d..fdeda06d3 100644 --- a/spine-ts/spine-threejs/example/index.html +++ b/spine-ts/spine-threejs/example/index.html @@ -81,8 +81,9 @@ var skeletonData = skeletonJson.readSkeletonData(assetManager.require(skeletonFile)); // Create a SkeletonMesh from the data and attach it to the scene - skeletonMesh = new spine.SkeletonMesh(skeletonData, function (parameters) { + skeletonMesh = new spine.SkeletonMesh(skeletonData, (parameters) => { parameters.depthTest = false; + parameters.alphaTest = 0.5; }); skeletonMesh.state.setAnimation(0, animation, true); mesh.add(skeletonMesh); diff --git a/spine-ts/spine-threejs/src/SkeletonMesh.ts b/spine-ts/spine-threejs/src/SkeletonMesh.ts index 46927fd2e..3d4eb5903 100644 --- a/spine-ts/spine-threejs/src/SkeletonMesh.ts +++ b/spine-ts/spine-threejs/src/SkeletonMesh.ts @@ -32,9 +32,7 @@ import { MeshBatcher } from "./MeshBatcher"; import * as THREE from "three"; import { ThreeJsTexture } from "./ThreeJsTexture"; -export interface SkeletonMeshMaterialParametersCustomizer { - (materialParameters: THREE.ShaderMaterialParameters): void; -} +export type SkeletonMeshMaterialParametersCustomizer = (materialParameters: THREE.ShaderMaterialParameters) => void; export class SkeletonMeshMaterial extends THREE.ShaderMaterial { constructor (customizer: SkeletonMeshMaterialParametersCustomizer) { @@ -103,7 +101,7 @@ export class SkeletonMesh extends THREE.Object3D { private vertices = Utils.newFloatArray(1024); private tempColor = new Color(); - constructor (skeletonData: SkeletonData) { + constructor (skeletonData: SkeletonData, private materialCustomerizer: SkeletonMeshMaterialParametersCustomizer = (material) => { }) { super(); this.skeleton = new Skeleton(skeletonData); @@ -138,7 +136,7 @@ export class SkeletonMesh extends THREE.Object3D { private nextBatch () { if (this.batches.length == this.nextBatchIndex) { - let batch = new MeshBatcher(); + let batch = new MeshBatcher(10920, this.materialCustomerizer); this.add(batch); this.batches.push(batch); }