Skip to content

Commit 664cf83

Browse files
authored
WebGLRenderer: Add initial support for multi draw BatchedMesh (#666)
1 parent 2795dfc commit 664cf83

File tree

3 files changed

+12
-7
lines changed

3 files changed

+12
-7
lines changed

types/three/examples/jsm/objects/BatchedMesh.d.ts

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -21,6 +21,9 @@ declare class BatchedMesh extends Mesh<BufferGeometry, Material> {
2121

2222
_geometryInitialized: boolean;
2323
_geometryCount: number;
24+
_multiDrawCounts: Int32Array | null;
25+
_multiDrawStarts: Int32Array | null;
26+
_multiDrawCount: number;
2427

2528
_matrices: Matrix4[];
2629
_matricesTexture: DataTexture | null;

types/three/src/renderers/webgl/WebGLBufferRenderer.d.ts

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,8 @@ export class WebGLBufferRenderer {
1111
capabilities: WebGLCapabilities,
1212
);
1313

14-
setMode(value: any): void;
15-
render(start: any, count: number): void;
16-
renderInstances(start: any, count: number, primcount: number): void;
14+
setMode: (value: any) => void;
15+
render: (start: any, count: number) => void;
16+
renderInstances: (start: any, count: number, primcount: number) => void;
17+
renderMultiDraw: (starts: Int32Array, counts: Int32Array, drawCount: number) => void;
1718
}
Lines changed: 5 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,9 @@
11
export class WebGLIndexedBufferRenderer {
22
constructor(gl: WebGLRenderingContext, extensions: any, info: any, capabilities: any);
33

4-
setMode(value: any): void;
5-
setIndex(index: any): void;
6-
render(start: any, count: number): void;
7-
renderInstances(start: any, count: number, primcount: number): void;
4+
setMode: (value: any) => void;
5+
setIndex: (index: any) => void;
6+
render: (start: any, count: number) => void;
7+
renderInstances: (start: any, count: number, primcount: number) => void;
8+
renderMultiDraw: (starts: Int32Array, counts: Int32Array, drawCount: number) => void;
89
}

0 commit comments

Comments
 (0)