(encoder, view)
| 306 | } |
| 307 | |
| 308 | render(encoder, view) { |
| 309 | this.cameraController.updateCamera(this.camera); |
| 310 | this.updateViewProjMatrix(); |
| 311 | this.device.queue.writeBuffer(this.cameraBuffer, 0, this.cameraUniform); |
| 312 | |
| 313 | const renderPass = encoder.beginRenderPass({ |
| 314 | colorAttachments: [ |
| 315 | { |
| 316 | view, |
| 317 | storeOp: "store", |
| 318 | loadValue: [0.1, 0.2, 0.3, 1], |
| 319 | }, |
| 320 | ], |
| 321 | }); |
| 322 | |
| 323 | renderPass.setPipeline(this.renderPipeline); |
| 324 | renderPass.setBindGroup(0, this.texBindGroup); |
| 325 | renderPass.setBindGroup(1, this.cameraBindGroup); |
| 326 | renderPass.setVertexBuffer(0, this.vertexBuffer); |
| 327 | renderPass.setIndexBuffer(this.indexBuffer, "uint16"); |
| 328 | renderPass.drawIndexed(this.indices.length, 1); |
| 329 | renderPass.endPass(); |
| 330 | } |
| 331 | } |
| 332 | |
| 333 | if (import.meta.main) { |
nothing calls this directly
no test coverage detected