Webgpu renderer
This commit is contained in:
@@ -2,7 +2,7 @@ import { EverythingRegistry } from "$/common/everything_registry.ts";
|
||||
import { Chunk, Dimension } from "$/client/components/dimension.ts";
|
||||
import { Camera } from "$/client/components/camera.ts";
|
||||
import { AssetManager } from "$/client/assets.ts";
|
||||
import { flush_buffer, gl, set_current_texture } from "$/client/renderer/mod.ts";
|
||||
import { create_vertex_buffer, flush_buffer, set_current_texture } from "$/client/renderer/mod.ts";
|
||||
|
||||
let gdimension: Dimension;
|
||||
|
||||
@@ -20,25 +20,11 @@ worker.onmessage = (event) => {
|
||||
gdimension.delete_chunk_mesh(chunk);
|
||||
chunk.dirty = false;
|
||||
|
||||
chunk.opaque_vertex_buffer = gl.createBuffer();
|
||||
chunk.opaque_vertex_buffer = create_vertex_buffer(opaque_vertices.subarray(0, opaque_count));
|
||||
chunk.opaque_vertex_count = opaque_count / 9;
|
||||
|
||||
gl.bindBuffer(gl.ARRAY_BUFFER, chunk.opaque_vertex_buffer);
|
||||
gl.bufferData(
|
||||
gl.ARRAY_BUFFER,
|
||||
opaque_vertices.subarray(0, opaque_count),
|
||||
gl.STATIC_DRAW,
|
||||
);
|
||||
|
||||
chunk.transparent_vertex_buffer = gl.createBuffer();
|
||||
chunk.transparent_vertex_buffer = create_vertex_buffer(transparent_vertices.subarray(0, transparent_count));
|
||||
chunk.transparent_vertex_count = transparent_count / 9;
|
||||
|
||||
gl.bindBuffer(gl.ARRAY_BUFFER, chunk.transparent_vertex_buffer);
|
||||
gl.bufferData(
|
||||
gl.ARRAY_BUFFER,
|
||||
transparent_vertices.subarray(0, transparent_count),
|
||||
gl.STATIC_DRAW,
|
||||
);
|
||||
};
|
||||
|
||||
function strip_functions<T extends Record<string, any>>(obj: T) {
|
||||
|
||||
Reference in New Issue
Block a user