Skip to content

Commit adf8a19

Browse files
committed
fix(GLTFImporter): fix GLTF Draco normals
fix #3192
1 parent 89758ed commit adf8a19

File tree

1 file changed

+5
-1
lines changed

1 file changed

+5
-1
lines changed

Sources/IO/Geometry/GLTFImporter/Extensions.js

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,7 @@ import macro from 'vtk.js/Sources/macros';
22
import * as vtkMath from 'vtk.js/Sources/Common/Core/Math';
33
import vtkDracoReader from 'vtk.js/Sources/IO/Geometry/DracoReader';
44
import vtkLight from 'vtk.js/Sources/Rendering/Core/Light';
5+
import vtkPolyDataNormals from 'vtk.js/Sources/Filters/Core/PolyDataNormals';
56

67
import { MIN_LIGHT_ATTENUATION } from 'vtk.js/Sources/IO/Geometry/GLTFImporter/Constants';
78

@@ -89,7 +90,10 @@ export function handleKHRLightsPunctual(extension, transformMatrix, model) {
8990
export async function handleKHRDracoMeshCompression(extension) {
9091
const reader = vtkDracoReader.newInstance();
9192
reader.parse(extension.bufferView);
92-
return reader.getOutputData();
93+
const pdn = vtkPolyDataNormals.newInstance();
94+
pdn.setInputConnection(reader.getOutputPort());
95+
pdn.setComputePointNormals(true);
96+
return pdn.getOutputData();
9397
}
9498

9599
/**

0 commit comments

Comments
 (0)