UNPKG

@woosh/meep-engine

Version:

Pure JavaScript game engine. Fully featured and production ready.

29 lines (19 loc) 1.11 kB
import { Mesh, MeshPhongMaterial } from "three"; import AABB2 from "../../../../../src/core/geom/2d/aabb/AABB2.js"; import { Sampler2D } from "../../../../../src/engine/graphics/texture/sampler/Sampler2D.js"; import sampler2D2Canvas from "../../../../../src/engine/graphics/texture/sampler/sampler2d_to_html_canvas.js"; import { renderObjectToSampler2D } from "../../../../../src/engine/graphics/util/renderObjectToSampler2D.js"; import { CanvasView } from "../../../../../src/view/elements/CanvasView.js"; import { TypeEditor } from "../../TypeEditor.js"; export class BufferGeometryEditor extends TypeEditor { build(parent, field, registry) { const geo = field.adapter.read(parent, field.name); const sampler = Sampler2D.uint8(4, 64, 64); const preview = renderObjectToSampler2D(sampler, new Mesh(geo, new MeshPhongMaterial()), undefined, new AABB2(-0.05, -0.05, 1.05, 1.05)); preview.render(); const view = new CanvasView(); sampler2D2Canvas(sampler, 1, 0, view.el); preview.dispose(); return view; } }